# RSI & Oscillator Screener (Multi-Asset) API
> Which markets are overbought and which are oversold, ranked, computed live from Yahoo Finance (no key, nothing stored). The Relative Strength Index is the most-watched momentum oscillator: above 70 a market is overbought and stretched, below 30 oversold and ripe for a bounce, and the swing between them frames most mean-reversion trades. For a cross-asset, cross-sector universe — equity indices and sectors, gold, oil, commodities, bonds and crypto — this computes each asset's 14-day RSI (Wilder's method) and its 14-day Stochastic %K, tags it overbought / neutral / oversold, and ranks the whole board. The screener endpoint returns the markets that are overbought and oversold right now, sorted from hottest to coldest. The asset endpoint returns one market's oscillator card. The universe endpoint lists what is covered. The cross-asset RSI / oscillator screener cut — distinct from the crypto-only RSI screener, the bring-your-own-candle oscillator and technical-indicator APIs and the Bollinger and moving-average screeners. It finds the stretched markets across every asset class at once.

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

## Pricing
- **Free** (Free) — 810 calls/Mo, 2 req/s
- **Starter** ($11/Mo) — 18,200 calls/Mo, 6 req/s
- **Pro** ($34/Mo) — 91,000 calls/Mo, 16 req/s
- **Business** ($77/Mo) — 496,000 calls/Mo, 40 req/s

## Endpoints

### Screener

#### `GET /v1/screener` — Cross-asset board with overbought/oversold lists and RSI ranking

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

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

**Response:**
```json
{
    "data": {
        "note": "Each market's 14-day RSI (Wilder) and Stochastic %K. RSI above 70 = overbought (stretched, mean-reversion risk); below 30 = oversold (bounce candidate). Sorted hottest (highest RSI) first. Stochastic %K corroborates where price sits in its 14-day range.",
        "class": "sector",
        "assets": [
            {
                "key": "health_care",
                "class": "sector",
                "label": "Health Care",
                "price": 154.09,
                "rsi_14": 63.1,
                "signal": "bullish momentum",
                "stochastic_k": 89.1
            },
            {
                "key": "financials",
                "class": "sector",
                "label": "Financials",
                "price": 52.62,
                "rsi_14": 59.5,
                "signal": "bullish momentum",
                "stochastic_k": 91.7
            },
            {
                "key": "real_estate",
                "class": "sector",
                "label": "Real Estate",
                "price": 44.92,
                "rsi_14": 58.2,
                "signal": "bullish momentum",
                "stochastic_k": 84.1
            },
            {
                "key": "technology",
                "class": "sector",
                "label": "Technology",
                "price": 183.21,
                "rsi_14": 54.3,
                "signal": "neutral",
                "stochastic_k": 40
            },
            {
       
…(truncated, see openapi.json for full schema)
```

### Asset

#### `GET /v1/asset` — One market RSI/Stochastic oscillator card

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

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

**Response:**
```json
{
    "data": {
        "key": "sp500",
        "note": "One market's oscillator card: 14-day RSI (Wilder), Stochastic %K and an overbought/oversold signal. RSI > 70 overbought, < 30 oversold.",
        "class": "equities",
        "label": "S&P 500",
        "price": 737.76,
        "rsi_14": 50.3,
        "signal": "neutral",
        "source": "Yahoo Finance",
        "symbol": "SPY",
        "stochastic_k": 40.1
    },
    "meta": {
        "timestamp": "2026-06-12T10:35:07.210Z",
        "request_id": "00b53886-05ea-46cf-8b2c-c7e299e85aee"
    },
    "status": "ok",
    "message": "Asset retrieved successfully",
    "success": true
}
```

### Universe

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

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

**Response:**
```json
{
    "data": {
        "note": "Supported instruments. Pass key as asset= to /v1/asset, class= to /v1/screener.",
        "count": 21,
        "assets": [
            {
                "key": "sp500",
                "class": "equities",
                "label": "S&P 500",
                "symbol": "SPY"
            },
            {
                "key": "nasdaq100",
                "class": "equities",
                "label": "Nasdaq 100",
                "symbol": "QQQ"
            },
            {
                "key": "small_caps",
                "class": "equities",
                "label": "US Small Caps",
                "symbol": "IWM"
            },
            {
                "key": "developed_intl",
                "class": "equities",
                "label": "Developed ex-US",
                "symbol": "EFA"
            },
            {
                "key": "emerging",
                "class": "equities",
                "label": "Emerging Markets",
                "symbol": "EEM"
            },
            {
                "key": "technology",
                "class": "sector",
                "label": "Technology",
                "symbol": "XLK"
            },
            {
                "key": "financials",
                "class": "sector",
                "label": "Financials",
                "symbol": "XLF"
            },
            {
                "key": "energy",
                "class": "sector",
                "label": "Energy",
      
…(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/rsiscreener-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "note": "screener class= filters by class. asset= is a supported key (see /v1/universe). RSI is Wilder's 14-period; Stochastic %K is the 14-day range position. Read fresh per call, nothing cached.",
        "source": "Yahoo Finance daily closes (6mo range) across a multi-asset universe, live",
        "classes": [
            "equities",
            "sector",
            "commodities",
            "bonds",
            "crypto"
        ],
        "service": "rsiscreener-api",
        "settings": {
            "oversold": 30,
            "overbought": 70,
            "rsi_period": 14
        },
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/asset": "One market's RSI/Stochastic oscillator card (asset=sp500).",
            "GET /v1/screener": "Cross-asset board with overbought/oversold lists and RSI ranking (class=sector optional).",
            "GET /v1/universe": "The supported instruments."
        },
        "description": "RSI & oscillator screener (multi-asset) — which markets are overbought and which are oversold, ranked, live from Yahoo Finance (no key, nothing stored). screener returns a cross-asset board with the overbought (>70) and oversold (<30) markets, each asset's 14-day RSI and Stochastic %K, sorted hottest first. asset returns one market's oscillator card. universe lists what is covered. The cross-asset RSI / oscillator screener cut — distinct from the crypto-only RSI screener, the bring-your
…(truncated, see openapi.json for full schema)
```


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