Skip to content
GET /v1/screener

Every pair in a basket ranked by absolute z-score

Try it live

10 free calls per day — no sign-up, no API key. Goes through the oanor gateway.

Custom headers (optional)
api.oanor.com/cryptopairs-api

It works. Grab an API key and use it in your project.

Get an API key

Code snippets

curl "https://api.oanor.com/cryptopairs-api/v1/screener" \
  -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/cryptopairs-api/v1/screener", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/cryptopairs-api/v1/screener");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$out = curl_exec($ch);
import requests
requests.get(
    "https://api.oanor.com/cryptopairs-api/v1/screener",
    headers={"x-oanor-key": "oanor_test_..."}
)

Example response

A real response from this endpoint, captured by the latest health check.

{
    "data": {
        "note": "Every pair in the basket ranked by absolute z-score of its price ratio — the most stretched (most tradeable) spreads first. A high |z| with a high correlation is the classic mean-reversion pairs-trade setup. Default basket is 12 liquid majors (66 pairs); pass coins=BTC,ETH,... to customise.",
        "coins": 4,
        "pairs": [
            {
                "base": "SOL",
                "pair": "SOL/AVAX",
                "quote": "AVAX",
                "signal": "short_spread",
                "z_score": 3.33,
                "correlation": 0.906
            },
            {
                "base": "BTC",
                "pair": "BTC/AVAX",
                "quote": "AVAX",
                "signal": "short_spread",
                "z_score": 2.68,
                "correlation": 0.822
            },
            {
                "base": "BTC",
                "pair": "BTC/ETH",
                "quote": "ETH",
                "signal": "lean_short",
                "z_score": 1.93,
                "correlation": 0.906
            },
            {
                "base": "BTC",
                "pair": "BTC/SOL",
                "quote": "SOL",
                "signal": "lean_short",
                "z_score": 1.52,
                "correlation": 0.878
            },
            {
                "base": "ETH",
                "pair": "ETH/AVAX",
                "quote": "AVAX",
                "signal": "lean_short",
                "z_score": 1.47,
                "correlation": 0.878
            },
            {
                "base": "ETH",
                "pair": "ETH/SOL",
                "quote": "SOL",
                "signal": "neutral",
                "z_score": -0.36,
                "correlation": 0.868
            }
        ],
        "source": "Binance",
        "window_days": 90,
        "pairs_scanned": 6,
        "most_stretched": [
            {
                "base": "SOL",
                "pair": "SOL/AVAX",
                "quote": "AVAX",
                "signal": "short_spread",
                "z_score": 3.33,
                "correlation": 0.906
            },
            {
                "base": "BTC",
                "pair": "BTC/AVAX",
                "quote": "AVAX",
                "signal": "short_spread",
                "z_score": 2.68,
                "correlation": 0.822
            },
            {
                "base": "BTC",
                "pair": "BTC/ETH",
                "quote": "ETH",
                "signal": "lean_short",
                "z_score": 1.93,
                "correlation": 0.906
            },
            {
                "base": "BTC",
                "pair": "BTC/SOL",
                "quote": "SOL",
                "signal": "lean_short",
                "z_score": 1.52,
                "correlation": 0.878
            },
            {
                "base": "ETH",
                "pair": "ETH/AVAX",
                "quote": "AVAX",
            
…