Skip to main content

GET /v1/derived

Returns pre-computed analytics that combine data across multiple sources into a single time series.

Minimum tier: Pro | Credits: 50 base + 5 per row returned

GET https://kwery-api.com/v1/derived?api-key=YOUR_KEY

Parameters

ParameterTypeRequiredDefaultDescription
api-keystringYesYour API key. Passed as a query parameter.
symbolstringYesAsset symbol (e.g. BTC, ETH).
intervalstringNo1hTime bucket interval (5m, 15m, 1h, 4h, 1d).
metricsstringNoallComma-separated list of metrics to include (e.g. basis_spot_futures,funding_differential). Omit to return all available metrics.
startstringNoISO 8601 start time (inclusive).
endstringNoISO 8601 end time (exclusive).
limitintegerNo100Number of rows to return. Range: 1–1000.
afterstringNoCursor for pagination. Pass the next_cursor value from a previous response.

Response fields

Each object in data contains the following fields:

FieldTypeDescription
timestampstringISO 8601 bucket open time.
symbolstringAsset symbol.
intervalstringInterval used for this row.
basis_spot_futuresnumber | nullAnnualized basis between Binance spot and Binance USDT-M futures, calculated as ((futures_close / spot_close) - 1) * (365 / days_to_expiry). Positive values indicate contango.
basis_binance_hypernumber | nullAnnualized basis between Binance USDT-M futures and Hyperliquid perpetual, highlighting venue-specific premium divergence.
funding_differentialnumber | nullDifference between Binance perpetual and Hyperliquid perpetual funding rates at the same timestamp. Positive means Binance funding is higher.
polymarket_chainlink_divnumber | nullDivergence between Polymarket implied price (derived from YES probability × strike) and the Chainlink oracle feed for the same asset. Useful for detecting stale oracles or mispriced contracts.
implied_vol_polymarketnumber | nullImplied volatility backed out from Polymarket binary option prices using a Black-Scholes approximation, annualized.
implied_vol_kalshinumber | nullImplied volatility backed out from Kalshi binary contract prices using a Black-Scholes approximation, annualized.

Response headers

HeaderDescription
X-Credits-ChargedTotal credits consumed by this request.
X-RateLimit-RemainingRequests remaining in the current rate-limit window.
X-RateLimit-ResetISO 8601 timestamp when the rate-limit window resets.

Example request

cURL

curl "https://kwery-api.com/v1/derived?api-key=YOUR_KEY&symbol=BTC&interval=1h&metrics=basis_spot_futures,funding_differential&start=2026-03-01T00:00:00Z&limit=3"

Python

import requests

resp = requests.get("https://kwery-api.com/v1/derived", params={
    "api-key": "YOUR_KEY",
    "symbol": "BTC",
    "interval": "1h",
    "metrics": "basis_spot_futures,funding_differential",
    "start": "2026-03-01T00:00:00Z",
    "limit": 3,
})
data = resp.json()

TypeScript

const params = new URLSearchParams({
  "api-key": "YOUR_KEY",
  symbol: "BTC",
  interval: "1h",
  metrics: "basis_spot_futures,funding_differential",
  start: "2026-03-01T00:00:00Z",
  limit: "3",
});

const res = await fetch(`https://kwery-api.com/v1/derived?${params}`);
const data = await res.json();

Example response

{
  "data": [
    {
      "timestamp": "2026-03-01T00:00:00Z",
      "symbol": "BTC",
      "interval": "1h",
      "basis_spot_futures": 0.0812,
      "funding_differential": 0.00034
    },
    {
      "timestamp": "2026-03-01T01:00:00Z",
      "symbol": "BTC",
      "interval": "1h",
      "basis_spot_futures": 0.0798,
      "funding_differential": 0.00028
    },
    {
      "timestamp": "2026-03-01T02:00:00Z",
      "symbol": "BTC",
      "interval": "1h",
      "basis_spot_futures": 0.0821,
      "funding_differential": 0.00041
    }
  ],
  "meta": {
    "symbol": "BTC",
    "source": "derived",
    "interval": "1h",
    "count": 3,
    "next_cursor": "eyJ0IjoiMjAyNi0wMy0wMVQwMzowMDowMFoifQ=="
  }
}

Metric definitions

MetricSources combinedCalculation
basis_spot_futuresBinance Spot + Binance Futures((futures_close / spot_close) - 1) * (365 / days_to_expiry) annualized.
basis_binance_hyperBinance Futures + HyperliquidSame formula, comparing Binance USDT-M futures to Hyperliquid perpetual close.
funding_differentialBinance Futures + Hyperliquidbinance_funding_rate - hyperliquid_funding_rate at the interval boundary.
polymarket_chainlink_divPolymarket + Chainlinkpolymarket_implied_price - chainlink_oracle_price, in USD.
implied_vol_polymarketPolymarketBlack-Scholes inversion of YES/NO prices given strike, time to expiry, and risk-free rate. Annualized percentage.
implied_vol_kalshiKalshiSame Black-Scholes inversion applied to Kalshi contract prices. Annualized percentage.

Tier access

TierAccess
FreeLocked — returns 403.
Probasis_spot_futures only. Other metrics return null. History limited to 30 days.
BusinessAll metrics. Full history.

Errors

StatusCodeDescription
400invalid_symbolThe symbol parameter is missing or not recognized.
400invalid_intervalThe interval value is not supported for derived metrics.
400invalid_metricOne or more values in metrics are not recognized.
403tier_lockedYour plan does not have access to this endpoint or the requested metric.
429rate_limit_exceededYou have exceeded your per-minute or per-hour request quota.