Browse all readings

Research Readings Net taker flow over the trailing hour

Trade flow

Net taker flow over the trailing hour

Net taker flow over the trailing hour as a share of its traded notional: taker buy USD minus taker sell USD over their sum, so +1 means every print lifted the offer and -1 means every print hit the bid.

Observed
measured over the trailing hour
Unit
ratio
Valid range
-1 to 1

In plain English

Measures which side initiated more traded notional over the trailing hour: buyers lifting offers or sellers hitting bids.

How to read it

The ratio is (taker buy USD - taker sell USD) / their sum over (t - 1h, t]. A value of +0.2 means 60% buy-initiated and 40% sell-initiated notional; zero is balanced and -0.2 reverses those shares. The full observation window and nonzero traded notional are required. An empty or warming window is absent, not balanced.

Constructed example · not historical data

Buy share and net flow use different scales

  • Trailing hour: $60k buys + $40k sells60% buy share
Filled means buy-initiated notional; the rest is sell-initiated. Net taker flow = (60 - 40) / (60 + 40) = +0.2. The ratio is not +0.6 and does not count new positions.

Why a researcher might use it

Compare the signed lean of executed flow across markets, or contrast the latest hour with the four-hour window to study changes in that lean.

What it does not prove

Every trade has a buyer and seller. This ratio measures the initiating side, not money entering the market, new positions, trader count or future buying pressure. Equal ratios can represent very different USD volumes.

Use in Research
Technical details

Field ID

feature.taker_net_ratio_1h

Valid query operators

at least, at most, between

Window operators: lowest, highest, average, latest or change in, over a trailing window.

Editable query preset

This preset is a starting point, not a recommendation. Edit it before running the search.

{
  "schema_version": "research_query.v2",
  "normalization_version": "archive_normalization.v1",
  "feature_version": "feature_defs.v1",
  "target": "record_occurrences",
  "where": {
    "all": [
      [
        "feature.taker_net_ratio_1h",
        "gte",
        0.2
      ],
      [
        "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.

Related readings