{"openapi":"3.1.0","info":{"title":"CCI Screener (Multi-Asset) API","version":"1.0.0","description":"Which markets are stretched to an overbought or oversold extreme on the Commodity Channel Index, computed live from Yahoo Finance (no key, nothing stored). The CCI measures how far price has run from its statistical average relative to normal volatility: above +100 a market is in a strong up-move (and, when it unwinds, overbought), below -100 a strong down-move (or oversold), and the swing through zero frames trend and reversal trades. For a cross-asset, cross-sector universe — equity indices and sectors, gold, oil, commodities, bonds and crypto — this computes each asset's 20-period CCI from its typical price (high+low+close over three) and tags it overbought, bullish, bearish or oversold, then ranks the whole board. The screener endpoint returns the overbought (>+100) and oversold (<-100) markets right now. The asset endpoint returns one market's CCI card. The universe endpoint lists what is covered. The cross-asset CCI / extension screener cut — distinct from the bring-your-own-candle oscillator API, the RSI screener (a different oscillator), the OBV/volume and Bollinger screeners. It finds the over-extended markets across every asset class at once.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/cci-api","description":"oanor gateway"}],"tags":[{"name":"Screener"},{"name":"Asset"},{"name":"Universe"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/screener":{"get":{"operationId":"get_v1_screener","tags":["Screener"],"summary":"Cross-asset board with overbought/oversold CCI extremes, ranked","description":"","parameters":[{"name":"class","in":"query","required":false,"description":"Filter by class: equities, sector, commodities, bonds, crypto","schema":{"type":"string"},"example":"sector"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Each market's 20-period Commodity Channel Index from its typical price. CCI above +100 = a strong up-move / overbought; below -100 = a strong down-move / oversold; between is the normal band. Sorted highest CCI first. A different oscillator from RSI — CCI is unbounded and measures deviation from the mean in volatility units.","class":"sector","assets":[{"key":"financials","class":"sector","label":"Financials","cci_20":128.5,"signal":"overbought (strong up-move)"},{"key":"health_care","class":"sector","label":"Health Care","cci_20":121.1,"signal":"overbought (strong up-move)"},{"key":"real_estate","class":"sector","label":"Real Estate","cci_20":111.9,"signal":"overbought (strong up-move)"},{"key":"industrials","class":"sector","label":"Industrials","cci_20":45.8,"signal":"bullish"},{"key":"utilities","class":"sector","label":"Utilities","cci_20":-18.3,"signal":"bearish"},{"key":"technology","class":"sector","label":"Technology","cci_20":-27.9,"signal":"bearish"},{"key":"energy","class":"sector","label":"Energy","cci_20":-50.5,"signal":"bearish"}],"source":"Yahoo Finance","scanned":7,"oversold":[],"overbought":[{"key":"financials","label":"Financials","cci_20":128.5},{"key":"health_care","label":"Health Care","cci_20":121.1},{"key":"real_estate","label":"Real Estate","cci_20":111.9}]},"meta":{"timestamp":"2026-06-12T10:34:59.427Z","request_id":"7ac7e1b7-6e58-4b5d-9349-ebcea0273bd7"},"status":"ok","message":"Screener retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/asset":{"get":{"operationId":"get_v1_asset","tags":["Asset"],"summary":"One market CCI card","description":"","parameters":[{"name":"asset","in":"query","required":true,"description":"Asset key (see /v1/universe)","schema":{"type":"string"},"example":"sp500"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"key":"sp500","note":"One market's 20-period CCI and an overbought/oversold signal. CCI > +100 is overbought / strong up; < -100 oversold / strong down.","class":"equities","label":"S&P 500","cci_20":-96.1,"signal":"bearish","source":"Yahoo Finance","symbol":"SPY"},"meta":{"timestamp":"2026-06-12T10:34:59.624Z","request_id":"dcbdc9b5-9fdb-477b-bed6-443771bf6969"},"status":"ok","message":"Asset retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/universe":{"get":{"operationId":"get_v1_universe","tags":["Universe"],"summary":"Supported instruments","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"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","symbol":"XLE"},{"key":"health_care","class":"sector","label":"Health Care","symbol":"XLV"},{"key":"industrials","class":"sector","label":"Industrials","symbol":"XLI"},{"key":"utilities","class":"sector","label":"Utilities","symbol":"XLU"},{"key":"real_estate","class":"sector","label":"Real Estate","symbol":"XLRE"},{"key":"gold","class":"commodities","label":"Gold","symbol":"GLD"},{"key":"silver","class":"commodities","label":"Silver","symbol":"SLV"},{"key":"oil","class":"commodities","label":"Crude Oil","symbol":"USO"},{"key":"natural_gas","class":"commodities","label":"Natural Gas","symbol":"UNG"},{"key":"broad_commodities","class":"commodities","label":"Broad Commodities","symbol":"DBC"},{"key":"long_treasuries","class":"bonds","label":"Long Treasuries","symbol":"TLT"},{"key":"high_yield","class":"bonds","label":"High-Yield Credit","symbol":"HYG"},{"key":"bitcoin","class":"crypto","label":"Bitcoin","symbol":"BTC-USD"},{"key":"ether","class":"crypto","label":"Ether","symbol":"ETH-USD"}],"source":"Yahoo Finance","classes":["equities","sector","commodities","bonds","crypto"]},"meta":{"timestamp":"2026-06-12T10:34:59.730Z","request_id":"9e3360f3-ca8d-4ced-965c-aa9b5cd9d481"},"status":"ok","message":"Universe retrieved successfully","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Service metadata","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"screener class= filters by class. asset= is a supported key (see /v1/universe). CCI = (typical price - SMA20) / (0.015 * mean deviation). Read fresh per call, nothing cached.","source":"Yahoo Finance daily OHLC (3mo range) across a multi-asset universe, live","classes":["equities","sector","commodities","bonds","crypto"],"service":"cci-api","settings":{"period":20,"oversold":-100,"overbought":100},"endpoints":{"GET /v1/meta":"This document.","GET /v1/asset":"One market's CCI card (asset=sp500).","GET /v1/screener":"Cross-asset board with overbought/oversold CCI extremes, ranked (class=sector optional).","GET /v1/universe":"The supported instruments."},"description":"CCI screener (multi-asset) — which markets are stretched to an overbought or oversold extreme on the Commodity Channel Index, live from Yahoo Finance (no key, nothing stored). screener returns the overbought (>+100) and oversold (<-100) markets across a cross-asset board, ranked by CCI. asset returns one market's CCI card. universe lists what is covered. The cross-asset CCI / extension screener cut — distinct from the bring-your-own-candle oscillator API, the RSI screener, the OBV/volume and Bollinger screeners.","universe_size":21,"assets_scanned":21,"upstream_status":"ok"},"meta":{"timestamp":"2026-06-12T10:35:00.074Z","request_id":"8287856d-fe7f-4617-bfe6-18e075a19e74"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":820,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":1066,"monthly_call_quota":17600,"rps_limit":6,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":3360,"monthly_call_quota":90500,"rps_limit":16,"hard_limit":true},{"slug":"business","name":"Business","price_cents_month":7640,"monthly_call_quota":496000,"rps_limit":40,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/cci-api"}