OI-normalized perpetual CVD
24 completed UTC hours for one exact USDT linear perpetual.
Public exchange observations: Binance and Bybit BTCUSDT / ETHUSDT perpetuals only. Selected: binance:perp:BTCUSDT. USDT quote flow and OI are expressed in USD units.
Window: 2026-10-15 12:00 → 2026-10-16 12:00 UTC. 17 / 24 hours eligible. Successful reads cached for 120 seconds; failed reads for 30 seconds.
Hourly net USD = Σ(2 × taker buy quote − quote volume), using exactly 60 unique minutes. Hourly increment = 100 × net USD / opening OI (USD). Opening OI is the latest observation at or before the hour, no more than five minutes old; it is not trading volume.
Normalized CVD sums these increments within each uninterrupted segment: percent of opening OI, accumulated hourly. The USD panel accumulates the same hourly net flow separately. Missing minutes, taker splits or valid OI break both paths; the next valid hour starts a new segment from zero. Points are plotted at hour end. This is Swolecharts' explicit definition; Velo's undocumented formula may differ.
Percent of opening OI, accumulated hourly
- Segment 1
- Segment 2
- Segment 3
- Segment 4
Cumulative net flow · USD
- Segment 1
- Segment 2
- Segment 3
- Segment 4
Completed hourly observations · UTC
| Hour start UTC | Actual opening OI anchor UTC | Opening OI USD | Net USD | Increment % | Accumulated % | Cumulative USD | Status |
|---|---|---|---|---|---|---|---|
| 2026-10-15 12:00 | 2026-10-15 12:00 | $7.44B | -$66.14M | -0.8890 | -0.8890 | -$66.14M | Segment start / reset |
| 2026-10-15 13:00 | 2026-10-15 13:00 | $7.44B | -$212.24M | -2.8541 | -3.7431 | -$278.38M | Included |
| 2026-10-15 14:00 | 2026-10-15 14:00 | $7.54B | — | — | — | — | Missing or duplicate minutes (60 required; history may be stale) |
| 2026-10-15 15:00 | 2026-10-15 15:00 | $7.71B | — | — | — | — | Missing or duplicate minutes (60 required; history may be stale) |
| 2026-10-15 16:00 | 2026-10-15 16:00 | $7.67B | — | — | — | — | Missing or duplicate minutes (60 required; history may be stale) |
| 2026-10-15 17:00 | 2026-10-15 17:00 | $7.62B | — | — | — | — | Missing or duplicate minutes (60 required; history may be stale) |
| 2026-10-15 18:00 | 2026-10-15 18:00 | $7.72B | -$7.26M | -0.0941 | -0.0941 | -$7.26M | Segment start / reset |
| 2026-10-15 19:00 | 2026-10-15 19:00 | $7.72B | $1.19M | 0.0154 | -0.0787 | -$6.07M | Included |
| 2026-10-15 20:00 | 2026-10-15 20:00 | $7.71B | -$99.17M | -1.2858 | -1.3645 | -$105.24M | Included |
| 2026-10-15 21:00 | 2026-10-15 21:00 | $7.76B | $21.76M | 0.2804 | -1.0841 | -$83.48M | Included |
| 2026-10-15 22:00 | 2026-10-15 22:00 | $7.77B | $38.71M | 0.4982 | -0.5859 | -$44.78M | Included |
| 2026-10-15 23:00 | 2026-10-15 23:00 | $7.76B | -$22.26M | -0.2870 | -0.8729 | -$67.04M | Included |
| 2026-10-16 00:00 | 2026-10-16 00:00 | $7.74B | -$19.73M | -0.2548 | -1.1277 | -$86.77M | Included |
| 2026-10-16 01:00 | 2026-10-16 01:00 | $7.76B | $12.38M | 0.1596 | -0.9681 | -$74.39M | Included |
| 2026-10-16 02:00 | 2026-10-16 02:00 | $7.74B | -$18.96M | -0.2450 | -1.2132 | -$93.35M | Included |
| 2026-10-16 03:00 | 2026-10-16 03:00 | $7.73B | -$8.90M | -0.1151 | -1.3282 | -$102.25M | Included |
| 2026-10-16 04:00 | 2026-10-16 04:00 | $7.74B | -$6.98M | -0.0902 | -1.4184 | -$109.23M | Included |
| 2026-10-16 05:00 | 2026-10-16 05:00 | $7.75B | $16.27M | 0.2099 | -1.2086 | -$92.96M | Included |
| 2026-10-16 06:00 | 2026-10-16 06:00 | $7.75B | — | — | — | — | Missing or duplicate minutes (60 required; history may be stale) |
| 2026-10-16 07:00 | 2026-10-16 07:00 | $7.74B | $25.56M | 0.3304 | 0.3304 | $25.56M | Segment start / reset |
| 2026-10-16 08:00 | 2026-10-16 08:00 | $7.76B | -$20.15M | -0.2598 | 0.0706 | $5.41M | Included |
| 2026-10-16 09:00 | 2026-10-16 09:00 | $7.76B | — | — | — | — | Missing or duplicate minutes (60 required; history may be stale) |
| 2026-10-16 10:00 | 2026-10-16 10:00 | $7.71B | $25.46M | 0.3302 | 0.3302 | $25.46M | Segment start / reset |
| 2026-10-16 11:00 | 2026-10-16 11:00 | $7.74B | — | — | — | — | Missing or duplicate minutes (60 required; history may be stale) |