Normalized spread
Also shown as Spread (normalized)
Measures the gap between the best ask and best bid relative to a fixed divisor for the symbol's class. It is a capped ratio, not a historical percentile.
See where the scale stops
- Live monitoring
- Binance Futures only; depends on the full setup
- Observed
- read at the minute itself
- Unit
- Ratio
- Valid range
- 0 to 1
How to read it, with examples
How to read it
Spread in basis points is (ask - bid) / midpoint × 10,000. Divide by 5 for BTC, 10 for ETH, 25 for large caps, 50 for mid caps or 100 for small caps, and cap at 1. For BTC, 0.2 means a 1-basis-point spread; 1 means at least 5 basis points. Lower values mean tighter quotes relative to that divisor. The last valid quote holds; no valid quote means absent.
Constructed example · not historical data
Different spreads can reach the same ceiling
- BTC: 1 bp spread / 5 bp divisor0.2
- BTC: 5 bp spread / 5 bp divisor1.0
- BTC: 8 bp spread / 5 bp divisor1.0 (capped)
Compare recorded conditions with tighter or wider quoted spreads within a known class. The grammar does not expose class, so scope the markets explicitly.
What it does not prove
It does not measure execution cost for a particular order size, fees or deeper liquidity. Values at 1 hide further widening.
More limits
Pooling classes does not compare equal spreads.
Technical details
Registry definition
Bid-ask spread in basis points divided by a frozen per-symbol-class divisor (btc 5, eth 10, large cap 25, mid cap 50, small cap 100), then censored at 1.0. Not a rank or percentile: 1.0 means the spread reached or passed its class divisor, and observed values sit far below 0.9. The symbol class is not exposed in this grammar, so one threshold means a different spread on different symbols and pooling across classes is invalid.
Engine note
This frozen ratio is not the current live spread-HMM input.
Field ID
feature.spread_norm
Valid query operators
at least, at most, between
Window operators: lowest, highest, average, latest or change in, over a trailing window.
Editable query preset
Starting point only. Review and edit before running.
{
"schema_version": "research_query.v2",
"normalization_version": "archive_normalization.v1",
"feature_version": "feature_defs.v1",
"target": "record_occurrences",
"where": {
"all": [
[
"feature.spread_norm",
"gte",
0.5
],
[
"times.anchor_time",
"gte",
"2025-07-15T00:00:00.000Z"
]
]
},
"sort": [
"times.anchor_time",
"desc"
],
"page": {
"limit": 5,
"cursor": null
}
}The search reports how often the record held this condition and what followed. It does not decide whether an idea works.