alterlab-hedgefund-monitor — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited alterlab-hedgefund-monitor (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
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
| Scenario | Use Instead |
|---|---|
| A single filer's raw Form PF/13F/13D documents or holdings line by line | alterlab-edgartools |
| Treasury yields, Fed policy rates, or financial-conditions indices | alterlab-fred |
| Treasury debt, auctions, or Daily Treasury Statement cash balances | alterlab-usfiscaldata |
| Security prices or fund NAV/price histories | alterlab-alpha-vantage |
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.
None required. The API is fully open and free.
| 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/datasetindex returnslong_name: "FormPF"for every dataset (an upstream API label quirk); the real source names are above. Confirm a series' true cadence viaschedule/observation_frequencyin its metadata.
The HFM organizes data into six categories (each downloadable as CSV):
| 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 (*, ?) |
| 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 (returned HTTP 502 when checked on 2026-09-23; fall back to /series/multifull) |
| Spread | GET /calc/spread?x=MNE1&y=MNE2 | Difference between two series |
| 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) |
Mnemonics follow the pattern FPF-{SCOPE}_{METRIC}_{STAT}:
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).
GAV (gross assets), NAV (net assets), GNE (gross notional exposure),LEVERAGERATIO, CASHRATIO, COUNT, plus stress-test scenarios (CDSUP250BPS, etc.)
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)
]Cite the OFR Hedge Fund Monitor, the dataset (e.g. SEC Form PF), the mnemonic, and the retrieval date for every series used.
Part of the AlterLab Academic Skills suite.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.