Field dictionary
The cross-section's field vocabulary: every column the intelligence layer can rank, screen and query, at the daily and hourly grain.
84 fields, each with its unit and grain. Fields measured on their own carry a signal class — state, momentum, microstructure or no signal — and, where the measurement exists, its forward IC and delay retention. Read the research that produced the classes.
State
Durable 24-hour-horizon signal — carry, positioning and size. Retains ≈1 of its IC after the publication delay.
| Field | Unit · grain | What it means |
|---|---|---|
account_ls_ratio | ratio 1d · 1h IC 0.0156 @24h · retention 1.04 | Long accounts divided by short accounts. Above 1 means more accounts are long than short — crowd direction by head-count. |
cum_funding | fraction (of notional) 1d · 1h IC 0.0473 @24h · retention 1.016 | Running total of funding since the series began, continuous across months — a lifetime level, not an interval's carry. It grows with listing age and cumulative notional, so a cross-sectional rank on it mixes carry with size and history; use funding_paid_7d (the funding accumulated over the trailing window, widened by window_days) or funding_rate_7d_avg (the window's mean rate) for the interval-sized signal. |
d_open_interest | base units 1d · 1h | Change in open interest over the completed interval — net risk added or removed. NULL when the previous interval's snapshot is missing, so it is never a multi-interval change labelled as one interval. |
funding_paid_7d computed | fraction (of notional) 1d · 1h | Funding accumulated over the trailing 7 days — what a constant position of one unit of notional paid (positive) or earned (negative) in funding across the window (widened when window_days is passed). This is the sum, not the mean: funding_rate_7d_avg is this accumulation divided by the window's completed-interval count, so the two agree exactly only for a market that published every interval in the window — a market with holes in its funding series carries a smaller sum than its own average rate implies. A market whose funding source has no reading anywhere in the window is null rather than zero. |
funding_rate_7d_avg computed | fraction (of notional per interval) 1d · 1h | Average funding over the trailing 7 days, normalized by the selected grain's completed-interval count (widened when window_days is passed). Positive means longs paid. |
funding_rate_mean | fraction (hourly rate) 1d · 1h | Mean funding rate for the completed interval. Positive means longs paid shorts on average — the crowd was long and paid for it. The venue's neutral print is +0.00125%/h (≈ +11%/yr) and a large block of markets prints exactly that, so a percentile or z-score of funding ties across the block; compare a market's rate against the neutral print rather than expecting a ranking to separate it. |
pnl_imbalance computed | ratio 1d · 1h IC 0.0306 @24h · retention 0.785 | The interval's realised close PnL split by the side that booked it, as a share of the gross PnL booked by both sides. Exactly +1 when shorts finished net-positive and longs net-negative, exactly -1 in the mirror case, and an intermediate value only when both sides finished the same way (both up or both down) — so read it as which side won the interval, not as a graded magnitude. It is a sign, not a score: whenever the two sides' PnL have opposite signs the reading is exactly ±1, so a large block of markets can tie at the maximum. Positive means the short side won the interval — the price fell over the positions it closed, not necessarily over the interval; negative means the long side won. A zero reading means neither side realised anything and is reported as null. Holds the interval's own row only, so it describes what already happened rather than predicting what comes next. For a graded measure, read the stored closed_pnl_long and closed_pnl_short instead. Do not order or rank a cross-section on it — ranking on pnl_imbalance ranks on a sign; use a continuous factor for ordering. |
whale_long_account_share | ratio 1d · 1h IC 0.0318 @24h · retention 1.005 | What fraction of the whale cohort is on the long side, by head-count. |
whale_net_position | base units 1d · 1h | Net signed size of the whale cohort, in coin size. Positive means the biggest accounts are net long. |
Momentum
A short-term reversal that survives the delay, but is small and often below round-trip cost.
| Field | Unit · grain | What it means |
|---|---|---|
ret_1h | fraction 1h IC -0.0152 @24h · retention 0.682 | The completed hour's return: close divided by the previous published hour's close, minus 1. |
Microstructure
Real at the bar, gone after the entry delay — contemporaneous with the bar’s own move, not predictive.
| Field | Unit · grain | What it means |
|---|---|---|
oi_change_pct_1h computed | fraction 1h IC -0.0271 @1h · retention 0.34 | Change in USD open interest over the hourly interval ending at the row's timestamp, as a FRACTION of the level it opened at: 0.347 is +34.7%, not +0.347%. Multiply by 100 for a percentage. |
taker_imbalance_vw_1h computed | ratio 1h IC -0.0226 @1h · retention 0.066 | Notional-weighted taker imbalance over exactly 1 completed hourly interval: aggressor_delta × vwap divided by usd_volume. |
No signal
Measured on its own; the order-flow hypothesis did not hold. There is no edge to decay.
| Field | Unit · grain | What it means |
|---|---|---|
aggressor_delta | base units 1d · 1h | Net aggressive pressure during the completed interval: buy volume minus sell volume. Positive means buyers leaned on the book harder than sellers. |
net_taker_open | base units 1d · 1h | Net new aggressive directional risk: long opens minus short opens by takers during the completed interval. |
net_taker_open_over_oi computed | ratio 1d · 1h IC -0.005 @1h · retention 0.88 | The selected interval's net aggressive directional risk as a share of open interest — the taker tilt, normalized. |
taker_flip_l2s | base units 1d · 1h | Aggressive long-to-short flip volume — a capitulation tell (longs giving up and flipping). |
taker_flip_s2l | base units 1d · 1h | Aggressive short-to-long flip volume — a squeeze tell (shorts giving up and flipping). |
Other fields
Stored and descriptive fields that were never measured on their own, so they carry no signal class.
| Field | Unit · grain | What it means |
|---|---|---|
buy_vol | base units 1d · 1h | The slice of volume where the aggressor was buying (lifting the offer). Demand pressure. |
close | USD 1d · 1h | Price at the end of the completed interval — the one most people mean by 'the price'. |
closed_pnl_long | USD 1d · 1h | Realized profit or loss booked by longs during the completed interval. |
closed_pnl_short | USD 1d · 1h | Realized profit or loss booked by shorts during the completed interval. |
coin | symbol 1d · 1h | Which market the row is for. A bare symbol for crypto perps; HIP-3 markets carry their deployer prefix, e.g. xyz:NVDA. |
concentration_skew | ratio 1d · 1h | Short-side concentration minus long-side concentration (top10_short_share − top10_long_share). Positive means the shorts are the whale-heavy side — the one more prone to a squeeze. |
day | date 1d | The UTC day the row covers. |
flow_vs_snapshot_oi_residual | base units 1d · 1h | The gap between the completed interval's open-interest change and the change taker flow explains. What's left is mostly the maker side — passive positioning the trade tape can't show. |
funding_hours | count 1d | How many hourly funding observations the day's figures are built from (sparse on some HIP-3 venues). |
funding_paid | fraction (of notional) 1d · 1h | Funding rates summed over the completed interval — the share of notional a position held across the interval paid (positive) or earned (negative). |
funding_rate_delta_1h computed | fraction (hourly rate) 1h | Current funding rate minus the immediately previous published hour's funding rate. |
funding_rate_max | fraction (hourly rate) 1d | The day's highest hourly funding rate. |
funding_rate_min | fraction (hourly rate) 1d | The day's lowest hourly funding rate. |
funding_rate_sum_24h computed | fraction (of notional) 1h | Sum of the current and 23 immediately prior published hourly funding rates. |
funding_sign_change_1h computed | boolean fraction 1h | 1 when the current and immediately previous published hourly funding rates have different signs, 0 when their signs match, and NULL when either rate is missing. |
hhi_gross | ratio 1d · 1h | A standard market-concentration score over all exposure — high when a handful of accounts dominate the book. |
high | USD 1d · 1h | Highest trade price during the completed interval. |
hour | timestamp 1h | The completed UTC hour the row covers. |
low | USD 1d · 1h | Lowest trade price during the completed interval. |
maker_fees | USD 1d · 1h | Fees paid — or rebates earned — on the passive side (makers). |
n_closed_longs | count 1d · 1h | Accounts that closed a long during the completed interval. NULL when the previous interval's snapshot is missing, so it is never a multi-interval count labelled as one interval. |
n_closed_shorts | count 1d · 1h | Accounts that closed a short during the completed interval. NULL when the previous interval's snapshot is missing, so it is never a multi-interval count labelled as one interval. |
n_flipped_l2s | count 1d · 1h | Accounts that flipped from long to short — a sentiment reversal, one account at a time — during the completed interval. NULL when the previous interval's snapshot is missing, so it is never a multi-interval count labelled as one interval. |
n_flipped_s2l | count 1d · 1h | Accounts that flipped from short to long during the completed interval. NULL when the previous interval's snapshot is missing, so it is never a multi-interval count labelled as one interval. |
n_long_positions | count 1d · 1h | How many accounts held a long at the completed interval's close. |
n_new_longs | count 1d · 1h | Accounts that opened a fresh long during the completed interval. NULL when the previous interval's snapshot is missing, so it is never a multi-interval count labelled as one interval. |
n_new_shorts | count 1d · 1h | Accounts that opened a fresh short during the completed interval. NULL when the previous interval's snapshot is missing, so it is never a multi-interval count labelled as one interval. |
n_short_positions | count 1d · 1h | How many accounts held a short at the completed interval's close. |
n_unique_users | count 1d · 1h | How many distinct accounts held any position — the breadth of participation. |
n_whale_accounts | count 1d · 1h | How many accounts make up the whale cohort (the top 10% by position size). |
net_taker_flow_7d computed | base units 1d · 1h | Net aggressive pressure summed over the trailing 7 days (widened when window_days is passed): buy-minus-sell taker flow. Base units, so it scales with the market's size — use taker_imbalance_7d to rank markets of different sizes against each other. |
oi_change_over_volume_4h computed | ratio (USD ÷ USD) 1h | USD open-interest change summed over exactly 4 completed hourly intervals divided by USD traded notional over the same interval. |
oi_change_over_volume_7d computed | ratio (USD ÷ USD) 1d · 1h | Open-interest notional added over the trailing 7 days divided by average traded notional for the selected grain — higher means open interest is growing faster than the volume trading it; 1.0 means OI grew by a full interval's turnover. |
oi_change_pct_4h computed | fraction 1h | The same for the four-hour interval ending at the row's timestamp, as a FRACTION: 0.347 is +34.7%. Multiply by 100 for a percentage. |
oi_change_z_30d computed | z-score 1d · 1h | How unusual the completed interval's open-interest change is against its own trailing 30-day distribution, in standard deviations. |
oi_closed | base units 1d · 1h | Aggressive volume that closed positions — flow-implied OI removed. |
oi_open | base units 1d | Open interest at the day's own 00:00 boundary — the level the day started from. NULL when the coin had not started trading by that instant (its first snapshot came later), rather than a later hour's level presented as the day's open. |
oi_opened | base units 1d · 1h | Aggressive volume that opened positions — flow-implied OI added. |
oi_over_volume computed | ratio 1d · 1h | Open-interest notional divided by traded notional for the selected interval — how much risk sits on the book per unit of turnover. High means a market is crowded relative to its liquidity. |
oi_usd | USD 1d · 1h | Open interest at the completed interval's close in USD notional (open_interest × close) — the cross-comparable open-interest figure, one-sided like open_interest. |
open | USD 1d · 1h | Price at the start of the completed interval. |
open_interest | base units 1d · 1h | Size of open positions at the completed interval's close, in coin size, counting each contract once (the classical one-sided convention). The venue's own API and UI sum both sides instead, so their open-interest figure is twice this one. Rising means new money committing; falling means positions unwinding. |
range_pct | fraction 1d · 1h | The completed interval's high-to-low range as a share of its opening price. |
ret_1d | fraction 1d | The day's return: close divided by the previous day's close, minus 1. |
ret_24h computed | fraction 1h | Compounded close-to-close return over exactly 24 completed hourly intervals. |
ret_30d computed | fraction 1d · 1h | Cumulative return over the trailing 30 days. |
ret_4h computed | fraction 1h | Compounded close-to-close return over exactly 4 completed hourly intervals. |
ret_7d computed | fraction 1d · 1h | Cumulative return over the trailing 7 days (widened when window_days is passed). |
sell_vol | base units 1d · 1h | The slice of volume where the aggressor was selling (hitting the bid). Supply pressure. |
taker_close_long_vol | base units 1d · 1h | Aggressive volume that closed existing longs — longs taking profit or cutting. |
taker_close_short_vol | base units 1d · 1h | Aggressive volume that closed existing shorts — shorts covering. |
taker_fees | USD 1d · 1h | Fees paid by the aggressive side (takers). |
taker_imbalance_7d computed | ratio 1d · 1h | Net aggressive pressure over the trailing 7 days as a share of the volume that produced it (widened when window_days is passed): buy-minus-sell taker flow divided by total traded volume. Runs from -1 (every trade a taker sell) to +1 (every trade a taker buy), and is price- and size-independent, so it compares across markets. It weights every completed interval equally — see taker_imbalance_vw_7d for the notional-weighted form. |
taker_imbalance_vw_24h computed | ratio 1h | Notional-weighted taker imbalance over exactly 24 completed hourly intervals: summed aggressor_delta × vwap divided by summed usd_volume. |
taker_imbalance_vw_4h computed | ratio 1h | Notional-weighted taker imbalance over exactly 4 completed hourly intervals: summed aggressor_delta × vwap divided by summed usd_volume. |
taker_imbalance_vw_7d computed | ratio 1d · 1h | The same net aggressive pressure over the trailing 7 days, weighting each completed interval by the notional that traded in it rather than by base units (widened when window_days is passed): the imbalance of the window's flow rather than the mean of its intervals. The two are different quantities, not two estimates of one — they separate on a market whose aggression concentrates into a few heavy intervals — and this is the form the taker-flow research book ranks on. |
taker_open_long_vol | base units 1d · 1h | Aggressive volume that opened new long positions — fresh long risk entering. |
taker_open_short_vol | base units 1d · 1h | Aggressive volume that opened new short positions — fresh short risk entering. |
top10_long_share | ratio 1d · 1h | How much of the long side is held by its ten biggest accounts — high means the longs are a few whales, not a broad crowd. |
top10_short_share | ratio 1d · 1h | The same concentration measure for the short side. |
total_fees | USD 1d · 1h | All trading fees paid during the completed interval. |
trade_count | count 1d · 1h | How many individual trades happened during the completed interval — a proxy for activity and fragmentation. |
usd_volume | USD 1d · 1h | Traded notional during the completed interval: each source bar's vwap multiplied by its volume and summed. |
usd_volume_7d_avg computed | USD 1d · 1h | Average traded notional per completed interval over the trailing 7 days (widened when window_days is passed). |
vol_30d computed | fraction 1d · 1h | Standard deviation of interval returns over the trailing 30 days, annualized by the grain-derived square root of 365 daily intervals or 8,760 hourly intervals. |
volume | base units 1d · 1h | How much traded during the completed interval, in coin size (base units). |
vwap | USD 1d · 1h | The completed interval's volume-weighted average price (usd_volume / volume) — a fairer 'where did it actually trade' than the close. |