---
title: "Today's flow vs trailing average (with similar-days lookback)"
method: GET
path: "/v1/flow/{ticker}/historical-compare"
tags: ["Flow"]
---

# Today's flow vs trailing average (with similar-days lookback)

`GET /v1/flow/{ticker}/historical-compare`

Compares the current trading day's premium / volume / net premium /
call-put ratio against the trailing 20-trading-day average for the
same ticker. Returns absolute deltas, percentile rankings, and the
five most-similar past trading days.

## Path parameters

- `ticker` string, required

## Query parameters

- `date` string, date

## Response `200`

Today vs historical comparison.

- HistoricalCompareSuccess
  - `data` HistoricalCompareResponse, required
    - `ticker` string, required
    - `date` string, date, required
    - `current` CurrentMetrics, required
      - `totalPremium` number, required
      - `totalVolume` integer, required
      - `callPremium` number, required
      - `putPremium` number, required
      - `netPremium` number, required
      - `callPutRatio` number, required
      - `callVolume` integer, required
      - `putVolume` integer, required
    - `historical` HistoricalMetrics, required
      - `avgPremium` number, required
      - `avgVolume` number, required
      - `avgNetPremium` number, required
      - `avgCallPutRatio` number, required
      - `avgCallPremium` number, required
      - `avgPutPremium` number, required
      - `daysAnalyzed` integer, required
    - `vsAverage` VsAverage, required
      - `premiumVsAvg` number, required — Today's premium as a multiple of the historical average (1.0 = at average).
      - `volumeVsAvg` number, required
      - `netPremiumVsAvg` number, required
    - `percentileRankings` PercentileRankings, required
      - `premiumPercentile` integer, required
      - `volumePercentile` integer, required
      - `netPremiumPercentile` integer, required
    - `similarDays` SimilarDay[], required
      - `date` string, date, required
      - `netPremium` number, required
      - `totalPremium` number, required
      - `similarityScore` number, required — 0..1; higher = more similar to today's flow profile.
  - `meta` Meta, required
    - `timestamp` string, date-time, required — Server-side timestamp the response was generated at.
    - `requestId` string, required — Short opaque ID for log correlation.

## Other responses

- `400` — Request validation failed.
- `401` — Missing or invalid API key.
- `402` — The account's shared Skylit credit balance is lower than this route's cost. Top up to continue. Carries `X-Credits-Remaining: 0`.
- `403` — API key revoked/expired, monthly quota exceeded, or the account's API access is suspended (`account_suspended`).
- `404` — Unknown resource (ticker / sector / window with no data).
- `429` — Per-minute rate limit exceeded.
- `503` — Underlying data source temporarily unavailable, or the credit balance could not be verified (`credit_check_failed`). Safe to retry.

---

[API](https://skmtc.net/skylit/apis/flowseeker-skylit-public-api.md) · [All operations](https://skmtc.net/skylit/apis/flowseeker-skylit-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/skylit/flowseeker-skylit-public-api/revisions/3280190b1b24/schema)
