Stocks Flow Outliers API - Cross-Symbol Equity Scanner - FlashAlpha Lab API
Lab API Stocks Outliers

Stocks Flow Outliers API

Cross-symbol stock-flow outliers ranked by absolute net notional, same shape as the options-outliers payload.

Endpoint

GET /v1/flow/stocks/outliers
Auth required (X-Api-Key) Rate Limited: Yes Alpha plan+

Parameters

Name In Required Default Description
limit query no 20 Rows returned, clamped to 1..200
minTrades query no 20 Minimum trades for a symbol to qualify
windowMinutes query no 240 Lookback window, clamped to 1..10080
curl -H "X-Api-Key: YOUR_API_KEY" \
  "https://lab.flashalpha.com/v1/flow/stocks/outliers?limit=20&minTrades=100&windowMinutes=240"
import requests

resp = requests.get(
    "https://lab.flashalpha.com/v1/flow/stocks/outliers",
    headers={"X-Api-Key": "YOUR_API_KEY"}
)
data = resp.json()
print(f"{data['qualified']} of {data['tracked']} symbols qualified")
const resp = await fetch(
  "https://lab.flashalpha.com/v1/flow/stocks/outliers",
  { headers: { "X-Api-Key": "YOUR_API_KEY" } }
);
const data = await resp.json();
console.log(data.qualified + " of " + data.tracked + " symbols qualified");

Response

{
  "generatedUtc": "2026-05-12T18:42:10Z",
  "windowMinutes": 240,
  "tracked": 1840,
  "qualified": 845,
  "limit": 20,
  "outliers": [
    {
      "symbol": "NVDA",
      "tradeCount": 184200,
      "buyVolume": 2845000,
      "sellVolume": 1999800,
      "midVolume": 84200,
      "netVolume": 845200,
      "imbalancePct": 0.42,
      "skew": 1.42,
      "notional": 5840000000,
      "netNotional": 1015800000,
      "biggestTrade": 250000,
      "biggestTradeUtc": "2026-05-12T17:18:42Z",
      "biggestAgeSec": 5008,
      "lastVwap": 1202.18,
      "lastTradeUtc": "2026-05-12T18:42:08Z",
      "lastTradeAgeSec": 2
    }
  ]
}

Key Response Fields

Field Type Description
generatedUtcstringGeneration timestamp
windowMinutesintegerEffective lookback window
trackedintegerSymbols scanned
qualifiedintegerSymbols that met filters
limitintegerEffective output limit
outliers[]arrayOutlier rows (same shape as options outliers): symbol, tradeCount, buyVolume, sellVolume, midVolume, netVolume, imbalancePct, skew, notional, netNotional, biggestTrade, biggestTradeUtc, biggestAgeSec, lastVwap, lastTradeUtc, lastTradeAgeSec

Errors

Status Description
403Requires Alpha plan or higher
502Upstream flow data source unavailable

About

Same response shape as options outliers, applied to the equity universe. Use minTrades to filter out thin tape and limit to cap output size. Cached 30 seconds on the server.

Common Use Cases

  • Scan for unusual equity activity - rank outliers[] by skew and absolute netNotional to surface the most one-sided names across the universe
  • Quantify directional lean - read imbalancePct and signed netVolume to size how far buyers or sellers dominate each outlier's tape
  • Run a fresh big-print radar - filter on a low biggestAgeSec (with biggestTrade/biggestTradeUtc) to catch institutional prints that landed seconds ago
  • Filter out thin tape - raise minTrades and check qualified vs tracked to confirm enough symbols cleared the participation floor before trusting the ranking
  • Add execution and freshness context - pull lastVwap for slippage and lastTradeAgeSec to drop stale names from alerts
  • Generate pairs ideas - contrast skew across correlated tickers to find divergent flow for a relative-value setup

Related reading

Complementary endpoints

  • Stocks Leaderboard - the net-notional top-N ranking that pairs with this skew/imbalance view
  • Stocks Summary - drill into a single outlier's flow totals
  • Stocks Recent - inspect the per-trade tape behind a flagged symbol
  • Options Outliers - the matching outlier scan for the options tape (same response shape)

Ready to build?

Get your free API key and start pulling live options data in 30 seconds.