Skip to content

Options flow & screeners · 4 min read

Compare Net Flow and Net Drift

Distinguish per-bucket activity from cumulative premium drift.

Choose a bucket view or a cumulative view

Net Flow shows selected call and put premium or contract volume within each time bucket. Net Drift accumulates selected net premium across the session and can display call-minus-put drift. One answers what occurred in a bucket; the other answers how selected net activity has accumulated. Their shapes can differ dramatically while using the same admitted prints, so identify the series definition before comparing heights.

Align the two tools

Map → Flow Analysis is a useful arrangement because it places related views together.

  1. Choose identical symbols, session and trading date.
  2. Match expiration, right, aggressor, size and trade-type filters.
  3. Set a common bucket period.
  4. Read each legend for premium versus contracts and net versus separate side totals.
  5. Hover the same bucket in both views.
  6. Inspect partial-coverage notices if either series begins late or contains holes.

Interpret the axes and cumulative baseline

The underlying-price line uses a price axis; flow and drift use their own measurement axes. A rising underlying alongside falling drift is a relationship to investigate, not a unit mismatch to correct by resizing axes. A cumulative series is anchored to its selected admitted range. Changing session or scope changes that baseline. A metadata-only refresh can update totals or source status without creating a new nonzero bucket.

Worked example: positive buckets, falling cumulative net

Imagine total call premium remains high in every bucket while signed net call premium is negative because more classified premium is on the selling side. The gross activity can look large while cumulative net drift falls. Compare the precise legend and side components rather than calling this contradictory. If a missing earlier interval is later repaired, cumulative values after that interval can change even though no new live trade occurred at their historical timestamps.

Troubleshoot a late start or unexpected reset

Confirm the selected session and trading date before assuming the series lost data. Widen filters to test whether only qualifying activity begins late. Use Rebuild missing flow when the tool offers eligible partial-coverage recovery, then inspect whether coverage actually improves. Changing the price display basis should not be interpreted as a change in raw executed premium. For support include the bucket, series names, filters and before/after coverage state.

Align filters, measurements and coverage

Premium, contract volume and trade count measure different things. Ten contracts at a high option price can contribute more premium than many contracts at a low price. Gross premium, signed net premium, call-minus-put drift and an individual time bucket are also different aggregates. Before reconciling tools, match the symbol family, exact roots where relevant, trading date, session, expirations, call/put choice, size and premium thresholds, aggressor filters and any trade-type selection.

A live stream can begin after the session started. Its current rows may be fresh while an earlier prefix is missing. Historical repair can add eligible prints and recompute older totals without representing new live trades. Empty filtered results mean no admitted matching rows, not necessarily no market activity. Read the reported source times, observed bounds and partial-coverage state. For an apparent mismatch, reproduce it with broad filters first, then add one filter at a time and compare the same measurement over the same time interval.

Read repairs and cumulative baselines without double counting

For a cumulative drift, an earlier repaired bucket affects every later cumulative point that includes it. If a missing interval is added, the final total can change even while the latest bucket's new activity is small. Do not add the repair amount to the already updated final total a second time. Compare the old and new coverage, then inspect per-bucket components to explain the difference. A correction-aware series is expected to replace earlier values rather than append a duplicate copy of the same historical execution.

The live one-second visible refresh behavior is independent of the selected chart period. A five-minute bucket can still have a forming value that updates while its boundary remains fixed. Hidden or historical widgets can have different refresh behavior, so a paused-looking chart needs its selection and visibility checked first. If you use an implied-price display basis, keep the price methodology separate from premium drift: transforming the underlying price path does not transform option premium into futures dollars or justify filling missing flow from the price candles.

More in Options flow & screeners