API for On-Demand Crypto and Prediction Market Metrics via x402

DripMetrics AI

DripMetrics provides on-demand crypto market microstructure metrics and prediction-market diagnostics for agentic or algorithmic workflows. Query exchange markets under /metrics/*, Hyperliquid phase 1 candle metrics under /hyperliquid/*, or Polymarket markets under /polymarket/*. Pay per request using x402 instead of buying a full data platform subscription.

Exchange metrics support 30m and 1h windows with 30m as the default. Polymarket diagnostics use windowMinutes with a default of 60. Hyperliquid phase 1 uses public 1m candles over 30m or 1h. Price: $0.05 per request.
Contact: drip@dripmetrics.ai. Email us for refunds on failed metrics, even if the failure came from an invalid or nonexistent market request. You can also send product ideas, venue requests, and general feedback.

Built for fast, machine-consumable market intelligence.

On-demand metrics

Pull exchange metrics or Polymarket diagnostics only when you need them.

Simple JSON

Responses are structured for agents, dashboards, and automation.

Per-request pricing

Pay for the exact metric calls you use instead of a platform seat.

Prediction-market diagnostics

Use public Polymarket trades and price history without standing up a stream.

Hyperliquid phase 1

Use public Hyperliquid candle snapshots for volatility and path-dependent metrics.

Refunds, ideas, and feedback

Refunds for failed metrics

If you paid for a metric that failed, email us and we will review it for a refund, including cases where the request targeted a nonexistent market or bad identifier.

Tell us what to add

Send ideas for new metrics, new venues, workflow improvements, and general API feedback.

Available signals

Hyperliquid phase 1 candle metrics

Hyperliquid phase 1 is intentionally candle-based. These endpoints use public 1m candle snapshots only, so trade-flow metrics like vpin or kyle-lambda are not yet available for Hyperliquid in this API. Use pair as the preferred query parameter; coin is accepted as a compatibility alias.

Polymarket diagnostics

Polymarket endpoints pull public trades and price history per request. They use request-scope memoization only and do not rely on a background stream. Trade-based endpoints accept slug or conditionId. Price-based endpoints accept tokenId/assetId or slug + outcome. Event slugs are supported; if an event contains multiple markets, add conditionId to disambiguate. In practice, many Polymarket requests work best when you supply both slug and conditionId.

Supported venues

  • Binance: BTCUSDT, ETHUSDT, SOLUSDT
  • Coinbase: BTC-USD, ETH-USD, SOL-USD
  • Hyperliquid: paid candle-based metrics under /hyperliquid/* using public 1m candle snapshots
  • Polymarket: paid diagnostics under /polymarket/* using public trades and price history

Simple API surface

  • GET /
  • GET /health
  • GET /catalog
  • GET /metrics/:metricName
  • GET /hyperliquid/:metricName
  • GET /polymarket/:metricName

API requests

Catalog
curl "https://api.dripmetrics.ai/catalog"
VWAP
curl "https://api.dripmetrics.ai/metrics/vwap?exchange=binance&pair=BTCUSDT&window=1h"
Historical Volatility
curl "https://api.dripmetrics.ai/metrics/historical-volatility?exchange=coinbase&pair=ETH-USD&window=1h"
Hyperliquid Historical Volatility
curl "https://api.dripmetrics.ai/hyperliquid/historical-volatility?pair=BTC&window=30m"
Hyperliquid Momentum
curl "https://api.dripmetrics.ai/hyperliquid/momentum?coin=ETH&window=1h"
Polymarket VPIN
curl "https://api.dripmetrics.ai/polymarket/vpin?slug=fed-decision-in-october&windowMinutes=60&limit=500"
Polymarket Kyle Lambda
curl "https://api.dripmetrics.ai/polymarket/kyle-lambda?slug=fed-decision-in-october&outcome=YES&windowMinutes=60&limit=500"
Polymarket Flow Imbalance
curl "https://api.dripmetrics.ai/polymarket/flow-imbalance?slug=fed-decision-in-october&windowMinutes=60&limit=500"
Polymarket Probability Shock
curl "https://api.dripmetrics.ai/polymarket/probability-shock?slug=fed-decision-in-october&outcome=YES&windowMinutes=60&lookbackMinutes=1440"
Polymarket Leakage Score
curl "https://api.dripmetrics.ai/polymarket/leakage-score?slug=fed-decision-in-october&outcome=YES&windowMinutes=60&limit=1000"

Paid endpoints are intended for an x402-aware client that can satisfy payment requirements and retry with the required payment headers. Hyperliquid examples expect Hyperliquid coin naming such as BTC for perps, and use pair as the preferred argument name. Polymarket example markets may stop trading, resolve, or move over time, so some sample URLs can go stale and require updated slugs, condition IDs, or token IDs.

Exchange metric response structure

Endpoints under /metrics/* share the same top-level JSON shape. The only metric-specific part of the payload is components.

metric

Metric name requested, such as vpin or vwap.

pair

Trading pair used in the query, such as BTCUSDT.

exchange

Exchange source for the trades used to compute the metric.

window

Aggregation window used for the calculation, currently 30m or 1h, with 1h as the default.

value

The primary numeric output of the metric.

components

Metric-specific breakdown fields that help explain or support value.

computedAt

ISO timestamp showing when the metric response was generated.

tradeCount

Total number of trades used in the computation window.

firstTradeTime

ISO timestamp for the earliest trade included in the calculation.

lastTradeTime

ISO timestamp for the latest trade included in the calculation.

Generic Metric Response
{
  "metric": "vpin",
  "pair": "BTCUSDT",
  "exchange": "binance",
  "window": "30m",
  "value": 0.43218751,
  "components": {
    "exampleField": 123.45
  },
  "computedAt": "2026-05-08T14:30:00.000Z",
  "tradeCount": 1842,
  "firstTradeTime": "2026-05-08T14:00:01.000Z",
  "lastTradeTime": "2026-05-08T14:29:59.000Z"
}

This envelope applies to exchange metrics under /metrics/*. Hyperliquid and Polymarket routes use separate response structures.

Hyperliquid response structure

Endpoints under /hyperliquid/* return a candle-based JSON envelope built around the requested market, window, candle sample size, and upstream source.

metric

Requested Hyperliquid metric name.

pair

Hyperliquid market identifier, such as BTC for a perp.

window

Requested lookback window, currently 30m or 1h.

interval

Underlying candle interval, currently fixed at 1m for phase 1.

value

Primary numeric output for the selected metric.

components

Metric-specific breakdown fields such as interval counts, returns, or rolling-window diagnostics.

sampleSize

Number of candles used for the computation.

source

Upstream Hyperliquid endpoint used for the response.

firstCandleTime / lastCandleTime

Coverage bounds of the candle sample.

Hyperliquid Response
{
  "metric": "historical-volatility",
  "pair": "BTC",
  "window": "30m",
  "interval": "1m",
  "value": 0.734214,
  "components": {
    "intervalVolatility": 0.00313924,
    "intervals": 29,
    "intervalsPerYear": 525600
  },
  "sampleSize": {
    "candles": 30
  },
  "source": {
    "candles": "https://api.hyperliquid.xyz/info"
  },
  "computedAt": "2026-05-29T16:00:00.000Z",
  "firstCandleTime": "2026-05-29T15:30:00.000Z",
  "lastCandleTime": "2026-05-29T15:59:59.999Z"
}

Hyperliquid phase 1 metrics are computed from public candle snapshots per request and do not yet use a persistent cache or a background stream.

Polymarket response structure

Endpoints under /polymarket/* return a venue-specific JSON envelope built around market identifiers, request window metadata, sample sizes, and upstream data sources.

metric

Polymarket diagnostic name, such as vpin, kyle-lambda, or leakage-score.

conditionId

Polymarket condition id for the market when the request is tied to a specific market contract.

slug

Human-readable Polymarket market or event slug when the request used slug-based resolution.

tokenId / assetId

Polymarket token identifier used for price-history-based diagnostics.

outcome

Selected token side for token-aware Polymarket diagnostics, currently YES or NO.

window

Request window metadata including windowMinutes and, when relevant, startTs, endTs, lookbackMinutes, or newsTs.

value

The primary numeric output of the diagnostic.

components

Diagnostic-specific breakdown fields such as YES/NO volume, wallet concentration, or pre-news movement.

sampleSize

Counts of trades, wallets, price points, and scanned trades used for the computation.

source

Upstream Polymarket endpoints used for the response, such as public trades or price history.

computedAt

ISO timestamp showing when the response was generated.

Polymarket Response
{
  "metric": "flow-imbalance",
  "slug": "fed-decision-in-october",
  "conditionId": "0xdd22472e552920b8438158ea7238bfadfa4f736aa4cee91a6b86c39ead110917",
  "window": {
    "windowMinutes": 60,
    "startTs": 1700000000000,
    "endTs": 1700003600000
  },
  "value": 0.134228,
  "components": {
    "imbalance": 0.134228,
    "yesVolume": 84.5,
    "noVolume": 64.5,
    "totalVolume": 149,
    "tradeCount": 4
  },
  "sampleSize": {
    "trades": 4,
    "scannedTrades": 4
  },
  "source": {
    "market": "https://gamma-api.polymarket.com/markets/slug/fed-decision-in-october",
    "trades": "https://data-api.polymarket.com/trades"
  },
  "computedAt": "2026-05-25T21:30:00.000Z"
}

Polymarket diagnostics are computed from public upstream data per request. They do not currently use a persistent cache or a background streamer. If you use a slug for price-history-based endpoints, include outcome=YES or outcome=NO.

Documented metrics

hyperliquid/historical-volatility

Annualized realized volatility from 1-minute Hyperliquid candle closes.

hyperliquid/realized-vol

Non-annualized realized volatility from 1-minute Hyperliquid candle closes.

hyperliquid/momentum

Window return from first candle open to last candle close.

hyperliquid/reversal

Signed opposite of Hyperliquid momentum.

hyperliquid/drawdown

Maximum peak-to-trough close loss within the candle path.

hyperliquid/downside-semivolatility

Downside-only volatility from negative 1-minute candle returns.

hyperliquid/vol-of-vol

Variability of short rolling realized volatility within the candle window.

vpin

Volume-synchronized probability of informed trading.

value is the VPIN score for the requested window. Higher values indicate more imbalanced buy and sell flow across equal-volume buckets, which can suggest more informed or one-sided trading pressure.

Reference: Easley, López de Prado, and O’Hara (2012), who extended the logic behind PIN to Volume-Synchronized PIN (VPIN).

VPIN Components
{
  "components": {
    "buckets": 20,
    "bucketSize": 12.34,
    "meanImbalance": 1.82,
    "totalVolume": 617.0
  }
}

buckets

Number of equal-volume buckets that were fully formed for the VPIN calculation.

bucketSize

Target base-asset volume allocated to each bucket.

meanImbalance

Average absolute difference between buy volume and sell volume across buckets.

totalVolume

Total traded base volume used to compute the VPIN window.

kyle-lambda

Price impact per unit of signed order flow.

value is Kyle’s lambda, estimated here as the slope of the relationship between short-interval price changes and signed order flow. Higher absolute values indicate greater price impact per unit of net flow and therefore thinner liquidity.

Reference: Kyle (1985), which introduced lambda as a measure of market depth and price impact in continuous auctions.

Kyle-Lambda Components
{
  "components": {
    "alpha": 0.000001234567,
    "rSquared": 0.381204,
    "intervals": 29,
    "meanSignedOrderFlow": 4.287351,
    "lastPrice": 64218.55,
    "dollarsPer1Bp": 97580.21,
    "dollarsPer1Cent": 1524.88
  }
}

alpha

Regression intercept for the short-interval price-change model.

rSquared

Goodness-of-fit statistic indicating how much of the short-interval price variation is explained by signed order flow.

intervals

Number of time bins included in the regression.

meanSignedOrderFlow

Average buy volume minus sell volume across the sampled intervals.

lastPrice

Last observed trade price in the requested window.

dollarsPer1Bp

Approximate signed notional needed to move price by one basis point based on the estimated lambda.

dollarsPer1Cent

Approximate signed notional needed to move price by one cent based on the estimated lambda.

beta

Asset beta versus the exchange benchmark BTC pair.

value is the asset’s beta relative to the benchmark pair on the same exchange, computed from aligned short-interval returns. Values above 1 indicate the asset tends to move more than the benchmark, while values below 1 indicate lower relative sensitivity.

Beta Components
{
  "components": {
    "correlation": 0.842311,
    "intervals": 29
  }
}

correlation

Correlation between the asset return series and the benchmark return series over the aligned intervals.

intervals

Number of aligned time bins used to estimate beta.

order-flow-hhi

Concentration of signed order flow across short intervals.

value is the Herfindahl-Hirschman Index of absolute signed order flow across short time buckets. Higher values mean order flow is concentrated in fewer bursts, while lower values mean order flow is distributed more evenly across the window.

Order-Flow-HHI Components
{
  "components": {
    "intervals": 30,
    "nonZeroIntervals": 24,
    "totalAbsoluteSignedFlow": 418.273901,
    "effectiveIntervals": 7.612443,
    "maxShare": 0.284117
  }
}

intervals

Total number of time bins considered in the concentration calculation.

nonZeroIntervals

Number of intervals with non-zero absolute signed order flow.

totalAbsoluteSignedFlow

Sum of the absolute signed order flow across all intervals.

effectiveIntervals

Concentration-adjusted number of active intervals, calculated as 1 / HHI.

maxShare

Largest single-interval share of total absolute signed order flow.

historical-volatility

Annualized realized volatility from log returns.

value is the annualized standard deviation of short-interval log returns for the requested window.

Historical-Volatility Components
{
  "components": {
    "intervalVolatility": 0.00128431,
    "intervals": 29,
    "intervalsPerYear": 525600
  }
}

intervalVolatility

Standard deviation of the unannualized interval return series.

intervals

Number of return observations used in the estimate.

intervalsPerYear

Annualization factor implied by the interval size.

cvd

Cumulative signed trade volume.

value is net signed base volume over the window, with buys counted positively and sells negatively.

CVD Components
{
  "components": {
    "buyVolume": 412.81,
    "sellVolume": 388.22,
    "netDollarVolume": 1562404.55
  }
}

buyVolume

Total base volume classified as buyer-initiated.

sellVolume

Total base volume classified as seller-initiated.

netDollarVolume

Signed notional traded over the window.

buy-sell-volume-imbalance

Net buy versus sell volume as a normalized imbalance.

value is normalized net flow, computed as buy volume minus sell volume divided by total volume.

Buy-Sell-Volume-Imbalance Components
{
  "components": {
    "buyVolume": 412.81,
    "sellVolume": 388.22,
    "totalVolume": 801.03
  }
}

buyVolume

Total buyer-initiated base volume.

sellVolume

Total seller-initiated base volume.

totalVolume

Total traded base volume used for normalization.

signed-dollar-volume

Net signed notional traded over the window.

value is signed dollar flow across the window, where positive values indicate buy-side notional dominance.

Signed-Dollar-Volume Components
{
  "components": {
    "totalDollarVolume": 3248801.22,
    "normalizedImbalance": 0.04127319
  }
}

totalDollarVolume

Total unsigned traded notional across the window.

normalizedImbalance

Signed dollar volume divided by total dollar volume.

trade-intensity

Trade arrival rate over the observed window.

value is trades per minute based on the observed elapsed time between the first and last trade.

Trade-Intensity Components
{
  "components": {
    "tradeCount": 1842,
    "tradesPerSecond": 1.0214,
    "windowSeconds": 1802.4,
    "meanIntertradeSeconds": 0.9789
  }
}

tradeCount

Total trades used in the estimate.

tradesPerSecond

Observed trade arrival rate per second.

windowSeconds

Elapsed seconds between first and last trade.

meanIntertradeSeconds

Average gap between consecutive trades.

average-trade-size

Mean trade size over the observed window.

value is mean base-asset size per trade across the window.

Average-Trade-Size Components
{
  "components": {
    "averageDollarSize": 1763.41,
    "tradeCount": 1842
  }
}

averageDollarSize

Mean notional size per trade.

tradeCount

Total number of trades in the window.

large-trade-share

Share of activity attributable to the largest trades in the window.

value is the share of dollar volume contributed by trades at or above the 90th percentile of trade notional.

Large-Trade-Share Components
{
  "components": {
    "thresholdDollarSize": 9821.44,
    "largeTradeCount": 183,
    "totalTradeCount": 1842,
    "largeVolumeShare": 0.41421873
  }
}

thresholdDollarSize

Dollar-size cutoff used to define a large trade.

largeTradeCount

Number of trades at or above the threshold.

totalTradeCount

Total trades observed in the window.

largeVolumeShare

Share of base volume attributable to large trades.

realized-vol

Non-annualized realized volatility from intrawindow returns.

value is non-annualized realized volatility, computed as the square root of summed squared interval returns.

Realized-Vol Components
{
  "components": {
    "realizedVariance": 0.0001842314,
    "intervals": 29
  }
}

realizedVariance

Sum of squared interval log returns before taking the square root.

intervals

Number of interval returns used in the calculation.

amihud-illiquidity

Price move per unit of traded dollar volume.

value is the average ratio of absolute return to dollar volume across short intervals. Higher values indicate lower liquidity.

Amihud-Illiquidity Components
{
  "components": {
    "intervals": 28
  }
}

intervals

Number of valid intervals contributing to the average illiquidity estimate.

vwap

Volume-weighted average price.

value is the volume-weighted average execution price across all trades in the window.

VWAP Components
{
  "components": {
    "totalVolume": 801.03,
    "totalDollarVolume": 3248801.22
  }
}

totalVolume

Total traded base volume in the window.

totalDollarVolume

Total traded notional used to compute VWAP.

vwap-deviation

Distance between the latest trade price and VWAP.

value is the relative deviation of the last observed trade price from the window VWAP.

VWAP-Deviation Components
{
  "components": {
    "vwap": 64212.88,
    "lastPrice": 64218.55,
    "basisPoints": 0.8831
  }
}

vwap

Window VWAP used as the comparison baseline.

lastPrice

Latest trade price in the window.

basisPoints

Deviation from VWAP expressed in basis points.

momentum

Window return from first observed price to last observed price.

value is the log return from the first price in the window to the last price.

Momentum Components
{
  "components": {
    "simpleReturn": 0.01248173,
    "firstPrice": 63426.44,
    "lastPrice": 64218.55
  }
}

simpleReturn

Same move expressed as simple return instead of log return.

firstPrice

First observed trade price in the window.

lastPrice

Last observed trade price in the window.

reversal

Signed opposite of the window return.

value is the negative of window momentum, useful when a mean-reversion framing is preferred.

Reversal Components
{
  "components": {
    "momentum": 0.01240445,
    "simpleReversal": -0.01248173
  }
}

momentum

Underlying log-return momentum before sign inversion.

simpleReversal

Negative simple return over the same window.

drawdown

Maximum peak-to-trough loss observed within the window.

value is the largest percentage drop from a running peak price to a subsequent trough inside the window.

Drawdown Components
{
  "components": {
    "peakPrice": 64502.11,
    "troughPrice": 63874.92
  }
}

peakPrice

Highest price observed before the maximum drawdown event.

troughPrice

Lowest price reached during that drawdown.

downside-semivolatility

Volatility computed from only negative intrawindow returns.

value is the square root of average squared negative returns only, isolating downside variation.

Downside-Semivolatility Components
{
  "components": {
    "intervals": 29,
    "downsideIntervals": 11
  }
}

intervals

Total interval returns observed in the window.

downsideIntervals

Count of intervals with negative returns.

rolling-correlation

Correlation of returns versus the exchange benchmark BTC pair.

value is correlation between the asset return series and the benchmark return series over aligned intervals.

Rolling-Correlation Components
{
  "components": {
    "intervals": 29
  }
}

intervals

Number of aligned return intervals used in the correlation estimate.

vol-of-vol

Variability of short rolling volatility within the window.

value measures how unstable realized volatility is across overlapping rolling subwindows.

Vol-Of-Vol Components
{
  "components": {
    "rollingWindow": 5,
    "observations": 25,
    "meanRollingVol": 0.00841233
  }
}

rollingWindow

Number of interval returns in each rolling volatility estimate.

observations

Total rolling volatility observations produced.

meanRollingVol

Average of the rolling volatility estimates before dispersion is computed.

roll-spread

Effective spread proxy inferred from lagged price-change covariance.

value is the Roll spread estimate, derived from negative serial covariance in successive price changes.

Roll-Spread Components
{
  "components": {
    "covariance": -0.004281337412,
    "intervals": 30,
    "observations": 28
  }
}

covariance

Lagged covariance of successive interval price changes.

intervals

Number of interval summaries built from the trade stream.

observations

Number of lagged price-change pairs used in the estimate.

polymarket/vpin

VPIN-style flow toxicity using equal-notional buckets of inferred YES/NO pressure.

value measures how persistently one-sided inferred YES/NO pressure is after the requested flow is divided into equal-notional buckets. Higher values imply more toxic or imbalanced flow.

Polymarket VPIN Components
{
  "components": {
    "vpin": 0.92349,
    "buckets": 10,
    "configuredBuckets": 10,
    "bucketSize": 14.9,
    "meanImbalance": 13.76,
    "totalVolume": 149
  }
}

vpin

VPIN-style score computed from equal-notional buckets of inferred YES/NO pressure.

buckets

Number of complete notional buckets used in the estimate.

configuredBuckets

Target bucket count used to size each equal-notional bucket.

bucketSize

Notional allocated to each bucket.

meanImbalance

Average absolute YES-versus-NO imbalance across the completed buckets.

totalVolume

Total qualifying notional used to build the bucketed flow series.

polymarket/kyle-lambda

Kyle's Lambda-style price impact per unit of signed notional flow for a selected YES or NO outcome.

value estimates how strongly short-horizon price changes in the selected Polymarket token respond to signed notional flow for that same outcome side. Larger magnitudes imply more price impact per unit of flow.

Polymarket Kyle-Lambda Components
{
  "components": {
    "lambda": 0.00169347,
    "alpha": -0.01128977,
    "rSquared": 0.997935,
    "intervals": 3,
    "meanSignedFlow": 6.666667,
    "totalAbsoluteFlow": 29,
    "selectedOutcome": "YES",
    "lastPrice": 0.5
  }
}

lambda

Estimated price impact per unit of signed notional flow for the selected outcome.

alpha

Intercept term from the interval return versus signed-flow regression.

rSquared

Explained variance of interval returns under the fitted regression.

intervals

Number of interval observations used in the estimate.

meanSignedFlow

Average signed notional flow per interval for the selected outcome.

totalAbsoluteFlow

Total absolute signed notional across the regression intervals.

selectedOutcome

Outcome side used to interpret signed flow and choose the token price series.

lastPrice

Last observed price in the selected token series.

polymarket/flow-imbalance

Normalized YES-versus-NO trade pressure over the requested window.

value is normalized net trading pressure for a Polymarket market. Positive values indicate more YES-side pressure, while negative values indicate more NO-side pressure.

Flow-Imbalance Components
{
  "components": {
    "imbalance": 0.134228,
    "yesVolume": 84.5,
    "noVolume": 64.5,
    "totalVolume": 149,
    "tradeCount": 4
  }
}

imbalance

Normalized net pressure, computed from YES notional minus NO notional divided by total notional.

yesVolume

Total YES-side notional counted toward the requested window.

noVolume

Total NO-side notional counted toward the requested window.

totalVolume

Total notional used to normalize the imbalance.

tradeCount

Trades contributing usable pressure to the calculation.

polymarket/two-sidedness

How balanced YES-versus-NO trading is over the requested window.

value is highest when YES and NO flow are balanced and falls toward zero as one side dominates the market.

Two-Sidedness Components
{
  "components": {
    "twoSidedness": 0.865772,
    "yesVolume": 84.5,
    "noVolume": 64.5,
    "dominantOutcome": "YES"
  }
}

twoSidedness

Balance score derived from the absolute gap between YES and NO notional.

yesVolume

Total YES-side notional in the window.

noVolume

Total NO-side notional in the window.

dominantOutcome

Outcome with larger observed notional during the requested window.

polymarket/wallet-concentration

How concentrated recent Polymarket volume is across wallets.

value is an HHI-style concentration score over wallet notional shares. Higher values mean a smaller set of wallets dominates recent flow.

Wallet-Concentration Components
{
  "components": {
    "totalVolume": 149,
    "hhi": 0.45856,
    "top1Share": 0.620805,
    "top5Share": 1,
    "uniqueWallets": 3
  }
}

totalVolume

Total notional summed across wallets.

hhi

Herfindahl-Hirschman style concentration of wallet notional shares.

top1Share

Largest single-wallet share of total notional.

top5Share

Combined share of the five largest wallets in the sample.

uniqueWallets

Distinct wallets observed in the current request window.

polymarket/wallet-novelty

Share of recent flow from wallets not seen in earlier API-visible trades for the same market.

value measures how much current flow comes from wallets that do not appear in the earlier API-visible lookback for the same market. This is request-bounded novelty, not full lifetime novelty.

Wallet-Novelty Components
{
  "components": {
    "noveltyShare": 0.379195,
    "novelWalletCount": 2,
    "totalWalletCount": 3,
    "novelVolume": 56.5,
    "totalVolume": 149
  }
}

noveltyShare

Share of current-window notional attributable to wallets not seen in the earlier API-visible lookback.

novelWalletCount

Wallets present in the current window but absent from the earlier sampled history.

totalWalletCount

Total distinct wallets observed in the current window.

novelVolume

Notional attributed to newly observed wallets.

totalVolume

Total current-window notional used to compute novelty share.

polymarket/probability-shock

Recent probability move scaled by recent realized volatility.

value is a z-style shock score that compares the recent price move in a selected YES or NO token against recent realized volatility in that same token.

Probability-Shock Components
{
  "components": {
    "currentPrice": 0.65,
    "priorPrice": 0.55,
    "delta": 0.1,
    "realizedVol": 0.043589,
    "shockZ": 2.294157
  }
}

currentPrice

Latest observed price in the chosen token side.

priorPrice

Observed price nearest the start of the requested shock window.

delta

Raw price change over the requested window.

realizedVol

Standard deviation of recent price differences over the lookback window.

shockZ

Price move normalized by recent realized volatility.

polymarket/leakage-score

Information leakage / pre-news movement around an explicit or inferred event anchor.

value measures how much of the total event-window move occurred before the effective event anchor. If newsTs is omitted, the endpoint uses the midpoint of the effective analysis window, so a default request scores the most recent hour. It is an information leakage / pre-news movement score, not an accusation of insider trading.

Leakage-Score Components
{
  "components": {
    "leakageScore": 0.5,
    "preMove": 0.1,
    "totalMove": 0.2,
    "preNewsVolumeShare": 0.384181,
    "preWindowVolume": 34,
    "postWindowVolume": 54.5
  }
}

leakageScore

Share of the full event-window move that was already in place by the explicit or inferred event anchor.

preMove

Price move observed before the explicit or inferred event anchor.

totalMove

Total price move across the full pre/post event window.

preNewsVolumeShare

Share of combined event-window notional that traded before the explicit or inferred event anchor.

preWindowVolume

Total notional traded in the pre-news window.

postWindowVolume

Total notional traded in the post-news window.