Developers

RiskModels is REST-accessible. Fetch the same L3 hierarchical risk decomposition that powers the workspace — per-ticker explained risk, hedge ratios at the market / sector / subsector layer, and historical daily returns — programmatically against any ticker in our universe.

One representative call

# Fetch NVDA's latest L3 risk decomposition + hedge ratios
curl -H "Authorization: Bearer $RISKMODELS_API_KEY" \
  https://riskmodels.app/api/metrics/NVDA

# {
#   "ticker": "NVDA",
#   "as_of": "2026-05-15",
#   "vol_23d": 0.387,
#   "l3_mkt_er": 0.502,   # 50.2% of variance explained by market
#   "l3_sec_er": 0.241,   # 24.1% by sector (XLK)
#   "l3_sub_er": 0.005,   # 0.5% by subsector (SMH)
#   "l3_res_er": 0.252,   # 25.2% residual / stock-specific
#   "l3_mkt_hr": 0.76,    # $0.76 of SPY per $1 of NVDA to neutralize market
#   "l3_sec_hr": -1.44,
#   "l3_sub_hr": -0.18
# }

Full reference & key management: riskmodels.app/api-reference →

Endpoints include per-ticker metrics ( /api/metrics/[ticker]), portfolio risk snapshots ( /api/portfolio/risk-snapshot), ticker returns with hedge ratios ( /api/ticker-returns), and bulk historical returns in JSON, CSV, or Parquet.

The same engine that produces every artifact on the workspace — F1 Tearsheets, DD sheets, Risk DNA cohorts — is what answers these endpoints. No model drift between the UI and the API.

What's metered

Per-request token-based billing. Free tier for evaluation; metered tier for production. Pricing on the pricing page.

Looking for the integrated UI?

The workspace at riskmodels.net is the analyst-facing surface — paste a portfolio, get the F1 Tearsheet, ask the analyst. Same data, different lens.