Net premium
Eligible at-ask premium − eligible at-bid premium, separately for calls and puts.
What it answers: where did more premium trade relative to the bid and ask?
THE CHART, THE CALCULATION, THE LIMITS
Net Flow compares eligible options premium traded at the ask with premium traded at the bid. Calls and puts are calculated separately. Use it to investigate how activity changes alongside price.
It is a quote-relative measure. It does not establish who initiated a trade, whether it opened a position, or what price will do next.
01 / SEE THE RELATIONSHIP
Fictional XYZ example · USD
Six one-minute intervals · not market data
Net premium on the left. XYZ price on the right.
Running call net contracts − put net contracts. Green above zero; red below.
Cumulative points use interval-end totals. Price observations use those same times. Separate axes have different units; a visual line crossing is not a trading signal.
READ THE SAME TRADES TWO WAYS
A cumulative line carries earlier activity forward. A per-minute line isolates what changed in each interval. Neither is a moving average. These two charts use the same six minutes of fictional call trades above.
Add each minute to the previous total.
Read each interval independently.
| Interval end | 09:31 | 09:32 | 09:33 | 09:34 | 09:35 | 09:36 |
|---|---|---|---|---|---|---|
| Minute call net | +$430 | −$360 | +$1,160 | −$790 | +$970 | +$260 |
| Running call net | $430 | $70 | $1,230 | $440 | $1,410 | $1,670 |
At 09:32, the running total is $70: the preceding $430 plus this minute’s −$360. The line remains above zero even though this minute’s net is negative. A rising line can also remain below zero while recovering an earlier negative total.
“Missing” does not mean no trades. A gap must stay visible. A subtotal from the records available cannot establish the full-session total. Likewise, separate underlying-price observations should not be presented as a continuous price feed.
Before comparing two platforms, match the date, expiration, moneyness, units and time aggregation. A smoother-looking line alone does not establish better coverage or accuracy.
02 / FOLLOW THE NUMBERS
Choose an interval above.
The ledger and totals stay linked.
| Option | Matched result | Contracts | Price | Premium | Net effect |
|---|---|---|---|---|---|
| Call | At ask | 3 | $2.10 | $630 | +$630 |
| Call | At bid | 1 | $2.00 | $200 | −$200 |
| Put | At ask | 2 | $1.20 | $240 | +$240 |
| Put | At bid | 3 | $1.10 | $330 | −$330 |
| Call | Midpoint | 2 | $2.05 | $410 | Not included |
| Put | Multi-leg | 1 | $1.20 | $120 | Not included |
Premium = option price × contracts × multiplier. This example assumes a multiplier of 100 and eligible, timely quotes for its at-ask and at-bid trades.
In the first interval, the midpoint trade does not establish an at-bid or at-ask result. The multi-leg trade is outside this calculation’s eligible execution conditions. Both still add to this example’s unsigned traded volume. A missing classification is not zero trading activity.
In EasyBear’s current calculation, regular and automatic executions are eligible, subject to the matched quote and other validation checks. A multi-leg trade can be one component of a package; treating that leg as a standalone directional bet is not supported.
03 / KEEP THE UNITS STRAIGHT
Eligible at-ask premium − eligible at-bid premium, separately for calls and puts.
What it answers: where did more premium trade relative to the bid and ask?
Eligible at-ask quantity − eligible at-bid quantity. The balance chart subtracts put net contracts from call net contracts.
What it answers: how does the quantity imbalance compare with the premium imbalance?
The sum of contract quantities. Calls and puts both add to volume, including reported trades outside the net calculation.
What it answers: how much activity occurred, even when the signed totals offset?
A trade count counts records. Contract volume counts quantities. One reported trade for 50 contracts is one trade and 50 contracts—not 50 separate trades.
04 / DEFINE THE QUESTION
0DTE selects contracts expiring on the selected trading date. All loaded expirations includes every expiration in the loaded dataset; it does not promise the whole options market.
All includes every moneyness category. It does not mean at the money. Classification requires a valid underlying reference at the trade’s time.
Here, ATM means strike equals the reference price. A call is ITM when the underlying reference is above the strike; a put is ITM when the reference is below the strike. A price band labelled “near ATM” would be a different filter.
05 / PUT IT TO WORK
Start with a time interval, then inspect expiration, strike and individual records. A large dollar move may reflect expensive contracts, larger quantities or both.
Compare the same time window and scope. Net Flow describes the eligible records; a reaction in price is a separate observation. Neither alone establishes a reversal.
Check coverage and unresolved revisions. A missing minute must not become a zero. A cancellation can leave premium unchanged while altering contract volume or counts.
Quote matching, execution conditions, expiration scope, trade-size caps, moneyness rules and cancellation processing can change totals. Compare definitions and the selected scope before comparing the lines.
This worked example uses EasyBear’s calculation. It is not a reproduction or numerical validation of another platform. Consult each platform’s methodology before treating its totals as equivalent.