# Cross-Asset Drawdown & Recovery Monitor API
> How far every major market is below its peak and how long it has been underwater, computed live from Yahoo Finance (no key, nothing stored). Drawdown is the risk investors actually feel: not volatility in the abstract, but the gap between today's price and the high-water mark, and the painful stretch spent climbing back. For every asset — equity indices, bonds, gold, oil, commodities, FX and crypto — this measures the current drawdown from its rolling peak, the worst (maximum) drawdown over the window, the date and level of the peak, how many days it has been underwater, and how much of the fall it has already recovered. The monitor endpoint returns the whole universe ranked by current drawdown — what is deepest underwater and what is back at new highs — with a summary of how many markets are in drawdown. The asset endpoint returns one market's drawdown card. The universe endpoint lists what is covered. The cross-asset drawdown / underwater-recovery cut — distinct from the FX-only drawdown API, the crypto all-time-high API and the cross-asset volatility API (which ranks risk-adjusted return, not the underwater curve). It answers how far from the highs, and how long.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/assetdrawdown-api/..."
```

## Pricing
- **Free** (Free) — 740 calls/Mo, 2 req/s
- **Starter** ($10/Mo) — 17,200 calls/Mo, 6 req/s
- **Pro** ($31/Mo) — 90,500 calls/Mo, 16 req/s
- **Business** ($72/Mo) — 484,000 calls/Mo, 40 req/s

## Endpoints

### Monitor

#### `GET /v1/monitor` — Universe ranked by current drawdown with new-high list and drawdown count

**Parameters:**
- `class` (query, optional, string) — Filter by class: equities, bonds, commodities, fx, crypto, real_estate Example: `equities`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/assetdrawdown-api/v1/monitor?class=equities"
```

**Response:**
```json
{
    "data": {
        "note": "Every market ranked by current drawdown (deepest underwater first). current_drawdown_pct is the fall from the window's highest close; max_drawdown_pct is the worst drawdown in the window; days_since_peak is how long underwater; recovery_from_trough_pct is how much of the fall has been clawed back. Window is two years. Not financial advice.",
        "class": "equities",
        "assets": [
            {
                "key": "emerging",
                "class": "equities",
                "label": "Emerging Markets",
                "price": 67.5,
                "status": "near highs",
                "peak_date": "2026-06-02",
                "peak_price": 70.8,
                "at_new_high": false,
                "days_since_peak": 9,
                "max_drawdown_pct": -18.67,
                "current_drawdown_pct": -4.66,
                "recovery_from_trough_pct": 46.9
            },
            {
                "key": "nasdaq100",
                "class": "equities",
                "label": "Nasdaq 100",
                "price": 717.12,
                "status": "near highs",
                "peak_date": "2026-06-02",
                "peak_price": 746.16,
                "at_new_high": false,
                "days_since_peak": 9,
                "max_drawdown_pct": -22.88,
                "current_drawdown_pct": -3.89,
                "recovery_from_trough_pct": 44.7
            },
            {
                "key": "sp500",
     
…(truncated, see openapi.json for full schema)
```

### Asset

#### `GET /v1/asset` — One market drawdown & recovery card

**Parameters:**
- `asset` (query, required, string) — Asset key (see /v1/universe) Example: `bitcoin`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/assetdrawdown-api/v1/asset?asset=bitcoin"
```

**Response:**
```json
{
    "data": {
        "key": "bitcoin",
        "note": "One market's drawdown card over a two-year window: current drawdown from the peak, the worst drawdown, the peak date/level, days underwater and how much of the fall has recovered.",
        "class": "crypto",
        "label": "Bitcoin",
        "price": 63675.5781,
        "source": "Yahoo Finance",
        "status": "deep drawdown",
        "symbol": "BTC-USD",
        "peak_date": "2025-10-06",
        "peak_price": 124752.5313,
        "at_new_high": false,
        "days_since_peak": 249,
        "max_drawdown_pct": -51.21,
        "current_drawdown_pct": -48.96,
        "recovery_from_trough_pct": 4.4
    },
    "meta": {
        "timestamp": "2026-06-12T10:35:11.154Z",
        "request_id": "70050a9b-f9bb-4b98-80d1-9ebfce89a755"
    },
    "status": "ok",
    "message": "Asset drawdown retrieved successfully",
    "success": true
}
```

### Universe

#### `GET /v1/universe` — Supported instruments

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/assetdrawdown-api/v1/universe"
```

**Response:**
```json
{
    "data": {
        "note": "Supported cross-asset instruments. Pass key as asset= to /v1/asset, class= to /v1/monitor.",
        "count": 17,
        "assets": [
            {
                "key": "sp500",
                "class": "equities",
                "label": "S&P 500",
                "symbol": "SPY"
            },
            {
                "key": "nasdaq100",
                "class": "equities",
                "label": "Nasdaq 100",
                "symbol": "QQQ"
            },
            {
                "key": "russell2000",
                "class": "equities",
                "label": "Russell 2000",
                "symbol": "IWM"
            },
            {
                "key": "developed_intl",
                "class": "equities",
                "label": "Developed ex-US",
                "symbol": "EFA"
            },
            {
                "key": "emerging",
                "class": "equities",
                "label": "Emerging Markets",
                "symbol": "EEM"
            },
            {
                "key": "long_treasuries",
                "class": "bonds",
                "label": "Long US Treasuries",
                "symbol": "TLT"
            },
            {
                "key": "ig_credit",
                "class": "bonds",
                "label": "Investment-Grade Credit",
                "symbol": "LQD"
            },
            {
                "key": "high_yield",
                "class": "bonds",
    
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Service metadata

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/assetdrawdown-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "note": "monitor class= filters by asset class. asset= is a supported key (see /v1/universe). Drawdowns are measured over a two-year window from the running peak. Read fresh per call, nothing cached.",
        "source": "Yahoo Finance daily closes (2y range) across a multi-asset universe, live",
        "classes": [
            "equities",
            "bonds",
            "commodities",
            "fx",
            "crypto",
            "real_estate"
        ],
        "service": "assetdrawdown-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/asset": "One market's drawdown & recovery card (asset=bitcoin).",
            "GET /v1/monitor": "Universe ranked by current drawdown, with new-high list and drawdown count (class=equities optional).",
            "GET /v1/universe": "The supported instruments."
        },
        "description": "Cross-asset drawdown & recovery monitor — how far every major market is below its peak and how long it has been underwater, live from Yahoo Finance (no key, nothing stored). monitor ranks the universe by current drawdown (deepest underwater first) with the new-high list and a drawdown count. asset returns one market's drawdown card (current/max drawdown, peak date, days underwater, recovery). universe lists what is covered. The cross-asset drawdown / underwater-recovery cut — distinct from the FX-only drawdown API, the crypto all-time-high API and the cross-asset volatil
…(truncated, see openapi.json for full schema)
```


---
Marketplace page: https://www.oanor.com/api/assetdrawdown-api
OpenAPI spec: https://www.oanor.com/api/assetdrawdown-api/openapi.json
