gex profile max change
Shows the strikes with the most significant change in GEX imbalance over various lookback periods. Also known as "max priors" for the GEX Profile.
chart
Powers the gex profile chart.
Shows the strikes with the most significant change in GEX imbalance over various lookback periods. Also known as "max priors" for the GEX Profile.
Subscription
Requires a State subscription or higher.
Request
Example: /SPX/state/full/maxchange
Headers
| Name | Type | Description |
|---|---|---|
Authorization | string | Required. Format: "Bearer <YOUR_API_KEY>" |
User-Agent | string | Required. Identify your client application. |
Accept | string | Required. Set to "application/json". |
Path parameters
| Name | Type | Description |
|---|---|---|
ticker | string | Desired ticker symbol (e.g., SPX). |
category | string | GEX aggregation category: full, gex_full, zero, gex_zero, one, or gex_one. |
Response
| Field | Type | Description |
|---|---|---|
timestamp | integer | The Unix timestamp of when the data was generated. |
ticker | string | The ticker symbol for the requested asset. |
current | array | The strike and GEX imbalance value with the largest change in the last calculation cycle. Two numbers: [strike, GEX change]. |
one | array | The strike and GEX imbalance value with the largest change in the last 1 minute. Two numbers: [strike, GEX change]. |
five | array | The strike and GEX imbalance value with the largest change in the last 5 minutes. Two numbers: [strike, GEX change]. |
ten | array | The strike and GEX imbalance value with the largest change in the last 10 minutes. Two numbers: [strike, GEX change]. |
fifteen | array | The strike and GEX imbalance value with the largest change in the last 15 minutes. Two numbers: [strike, GEX change]. |
thirty | array | The strike and GEX imbalance value with the largest change in the last 30 minutes. Two numbers: [strike, GEX change]. |
{
"timestamp": 1753283592,
"ticker": "SPX",
"current": [
6340,
-32.156
],
"one": [
6335,
85.319
],
"five": [
6330,
-236.029
],
"ten": [
6325,
409.361
],
"fifteen": [
6340,
-795.71
],
"thirty": [
6340,
-337.716
]
}{
"type": "object",
"required": [
"timestamp",
"ticker",
"current",
"one",
"five",
"ten",
"fifteen",
"thirty"
],
"properties": {
"timestamp": {
"type": "integer",
"format": "int64"
},
"ticker": {
"type": "string",
"minLength": 2,
"maxLength": 6
},
"current": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": {
"type": "number"
}
},
"one": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": {
"type": "number"
}
},
"five": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": {
"type": "number"
}
},
"ten": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": {
"type": "number"
}
},
"fifteen": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": {
"type": "number"
}
},
"thirty": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"items": {
"type": "number"
}
}
},
"additionalProperties": false
}type: object
required:
- timestamp
- ticker
- current
- one
- five
- ten
- fifteen
- thirty
properties:
timestamp:
type: integer
format: int64
ticker:
type: string
minLength: 2
maxLength: 6
current:
type: array
minItems: 2
maxItems: 2
items:
type: number
one:
type: array
minItems: 2
maxItems: 2
items:
type: number
five:
type: array
minItems: 2
maxItems: 2
items:
type: number
ten:
type: array
minItems: 2
maxItems: 2
items:
type: number
fifteen:
type: array
minItems: 2
maxItems: 2
items:
type: number
thirty:
type: array
minItems: 2
maxItems: 2
items:
type: number
additionalProperties: falseErrors
Most error responses have the body {"error": "<message>"}. A 401 response has no body. A 403 response from the API key product check also has no body.
| Status | Body | When |
|---|---|---|
400 | {"error": "User-Agent not found."} | The request has no User-Agent header. |
400 | {"error": "Authorization header not found."} | The request has no Authorization header. |
400 | {"error": "Invalid ticker format."} or {"error": "Unknown ticker symbol: <ticker>"} | The ticker is not a known symbol. |
400 | {"error": "Invalid category package combination."} | The category is not a state category. |
400 | {"error": "Category must be one of gex_full, gex_one or gex_zero"} | The category is a greek category (delta, gamma, vanna, charm and their _zero and _one forms). This route accepts the GEX categories only. |
401 | (no body) | The API key is not valid. |
403 | {"error": "User is not subscribed."} | The account has no subscription. |
403 | {"error": "User does not have permission to access this endpoint."} | The account does not have REST API access. |
403 | {"error": "Classic package does not have access."} | The account has a Classic subscription. This route needs State or higher. |
403 | {"error": "Commercial child access is suspended."} | The commercial seat that owns the API key is suspended. |
404 | {"error": "Chart not found."} | The server has no max change data for the ticker and category yet. |
429 | {"error": "Rate limit exceeded."} | The account has used its quota for this endpoint. See rate limits. |
500 | {"error": "Failed to get max change"} | The server could not read the data. Retry the request. |
gex profile major levels
Provides the major levels from the GEX Profile, including the strikes with the largest positive (call) and negative (put) GEX imbalances.
options profile greeks
Displays the results of our orderflow classification engine, showing the net imbalance of transactions for a specified Greek. This allows for detailed analysis of taker long vs. short positioning and its associated risks.