Skip to content

Options flow & screeners · 4 min read

Build an Options Screener search

Filter and sort contracts or tickers using server-side results.

Screen a candidate set rather than read a raw tape

Options Screener evaluates supported filters and rankings on the server, returning contract-grain or ticker-grain rows according to the selected mode. It is designed to narrow an investigation, not expose every execution in chronological order. A preset supplies a starting filter combination; inspect its resulting criteria before assuming its name defines a statistically validated trading opportunity.

Build and audit a search

Keep one broad baseline to compare against your refined screen.

  1. Open Options Flow → Screener.
  2. Choose contract or ticker grain where offered.
  3. Select a preset and inspect the active filters.
  4. Choose symbol/expiry scope and supported activity or size thresholds.
  5. Select a sort column and page through matching rows.
  6. Open an exact-contract result when you need quote or history detail.
  7. Clear one restrictive filter at a time when the screen is empty.

Understand row grain and paging

A contract row retains an exact root, expiration, strike and right. A ticker row aggregates a broader population, so its totals and ranking need not equal one contract's fields. Rankings can refresh between pages; an offset-backed screen is not necessarily a frozen dataset. A repeated or skipped rank after an underlying refresh needs inspection of the snapshot/change state, not an assumption that one contract was permanently duplicated in storage.

Worked example: high volume with a narrow expiration

Start with all expirations and sort by an available volume measure. Narrow to the nearest expiration and note which leaders remain. Then inspect daily OI and exact contract detail on one result. A high volume/OI relationship can prioritize investigation, but it does not tell you how many contracts opened positions today. If changing to ticker grain alters the leader, that reflects a different grouping rather than necessarily inconsistent data.

Troubleshoot stale or absent candidates

Check session, date and required provider/plan availability before repeatedly changing filters. A stale reference close can limit price-change interpretation even when current activity is available. When reporting a result, include grain, preset, active filters, sort direction and page position. Use the exact contract identity instead of its current rank because the rank can move. Do not include a full API key when the issue is in the cookie-authenticated terminal screener.

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.

Turn a screen into a documented investigation

Save a note of the complete active criteria, not only the preset name. Presets can be refined, and two screens carrying the same visible label can differ after local filter changes. Record row grain, expiry scope, thresholds, sorting and the current page. For a contract result, preserve its exact identity before switching views. For a ticker result, expect that several contracts can contribute, so opening one drawer cannot reproduce the entire ticker aggregate.

When investigating a leader, use its fields to form a testable question: was the rank driven by volume, premium, a ratio or price change? Inspect the dated denominator and reference values, then compare exact execution evidence where available. Avoid interpreting a top-ranked row as an executable multi-leg quote or a recommendation. If pagination changes after refresh, identify the contract rather than insisting it remain at one numerical rank. This workflow produces useful screening notes and gives support a stable case when a field, rather than a changing position in the list, appears incorrect.

More in Options flow & screeners