Skip to content
GET /v1/asset

Full range profile with NR7/inside/outside flags and NR7 follow-through

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/rangeexpansion-api

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

Get an API key

Code snippets

curl "https://api.oanor.com/rangeexpansion-api/v1/asset" \
  -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/rangeexpansion-api/v1/asset", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/rangeexpansion-api/v1/asset");
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/rangeexpansion-api/v1/asset",
    headers={"x-oanor-key": "oanor_test_..."}
)

Example response

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

{
    "data": {
        "name": "S&P 500 ETF",
        "note": "Daily range = high - low. current_range_percentile is today's range within the window. NR7/NR4 = narrowest range of the last 7/4 days; inside/outside days compare the band to the prior bar. nr7_breakout_rate = share of NR7 days whose next day broke the NR7 high or low (>=5 samples or null). Read fresh per call, nothing cached.",
        "class": "index",
        "reads": {
            "setup": "outside day — range engulfed yesterday's, volatility expanding",
            "state": "expanded — wide range day, move may be exhausting",
            "nr7_edge": "after an NR7, the next day broke its high or low 100% of the time historically"
        },
        "today": {
            "is_nr4": false,
            "is_nr7": false,
            "is_inside_day": false,
            "is_outside_day": true
        },
        "source": "Yahoo Finance",
        "symbol": "SPY",
        "window_days": 252,
        "nr4_freq_pct": 28.9,
        "nr7_freq_pct": 17.9,
        "observations": 252,
        "avg_range_pct": 0.94,
        "current_range_pct": 2.11,
        "nr7_follow_samples": 44,
        "inside_day_freq_pct": 8,
        "outside_day_freq_pct": 11.2,
        "nr7_breakout_rate_pct": 100,
        "nr7_expansion_rate_pct": 75,
        "current_range_percentile": 97.6
    },
    "meta": {
        "timestamp": "2026-06-12T10:34:42.147Z",
        "request_id": "1b424293-67ef-496f-bc6b-35d247997b01"
    },
    "status": "ok",
    "message": "Asset range profile retrieved successfully",
    "success": true
}