# Risk-Adjusted Return Screener API
> Ranks a cross-asset universe by how much return each asset delivers per unit of risk, live from Yahoo Finance daily closes — no key, nothing stored. A raw return tells you nothing about how much risk you took to earn it: two assets up 12% are not equal if one rode a calm trend and the other whipsawed through deep drawdowns. This screener turns each asset's price history into the three risk-adjusted ratios allocators actually rank on — the Sharpe ratio (excess return per unit of total volatility), the Sortino ratio (excess return per unit of downside volatility only), and the Calmar ratio (annualised return per unit of worst peak-to-trough drawdown) — and sorts the whole universe (21 instruments across equities, sectors, commodities, bonds and crypto) so you can see in one call which markets pay the most for the risk you bear. The screener endpoint ranks the universe (filterable by asset class) by the metric you choose; the asset endpoint returns one instrument's full risk-adjusted profile with plain-language reads. This is the risk-adjusted-return / reward-per-risk ranking cut — distinct from a bring-your-own-series Markowitz optimiser, the CAPM/beta calculator, the momentum and the price APIs. It ranks live assets by efficiency, not raw performance.

## 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/riskadjusted-api/..."
```

## Pricing
- **Free** (Free) — 800 calls/Mo, 2 req/s
- **Starter** ($12/Mo) — 17,000 calls/Mo, 6 req/s
- **Pro** ($36/Mo) — 92,000 calls/Mo, 16 req/s
- **Mega** ($81/Mo) — 505,000 calls/Mo, 40 req/s

## Endpoints

### Screener

#### `GET /v1/screener` — Rank the universe by a risk-adjusted metric

**Parameters:**
- `metric` (query, optional, string) — sharpe, sortino or calmar Example: `sharpe`
- `window` (query, optional, string) — Lookback in trading days (60-756) Example: `252`
- `class` (query, optional, string) — equity, sector, commodity, bond, crypto or all Example: `all`
- `rf` (query, optional, string) — Annual risk-free percent (0-20) Example: `0`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/riskadjusted-api/v1/screener?metric=sharpe&window=252&class=all&rf=0"
```

### Asset

#### `GET /v1/asset` — Full risk-adjusted profile of one instrument

**Parameters:**
- `symbol` (query, required, string) — Universe symbol Example: `GLD`
- `window` (query, optional, string) — Lookback in trading days (60-756) Example: `252`
- `rf` (query, optional, string) — Annual risk-free percent (0-20) Example: `0`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/riskadjusted-api/v1/asset?symbol=GLD&window=252&rf=0"
```

### Universe

#### `GET /v1/universe` — The cross-asset universe and its classes

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

### Meta

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

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


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