Option contract rank
GET/api/v1.0/quote/option-rankOption contract rank. option_market as above; sort_type default VOLUME. count default 50 (max 200). Returns contract code/name, CALL/PUT, volume/turnover, OI, IV, price change, greeks (subset). For free-form screening use quote.option_screen; for underlying rank use quote.option_underlying_rank.
Parameters
| Name | Type | In | Required | Description |
|---|---|---|---|---|
option_market | string | query | yes | Option market. US_SECURITY / US_INDEX / HK_SECURITY / HK_INDEX |
sort_type | string | query | no | Sort type, default VOLUME |
is_asc | bool | query | no | Ascending; default false |
page_size | int | query | no | Page size, default 50, max 200 |
page_flag | string | query | no | Page cursor. Omit or pass empty on the first page; pass back pagination.page_flag. Stop only when pagination.completed is true |
trading_date | string | query | no | Trading day YYYY-MM-DD; omit for latest. Date YYYY-MM-DD in the security's market timezone |
Example
bash
curl -X GET 'https://webapi.moomoo.com/api/v1.0/quote/option-rank?option_market=US_SECURITY' \
-H 'Authorization: Bearer <AccessToken>' | jqResponse parameters
| Name | Type | Description |
|---|---|---|
data.ranks | object[] | |
data.ranks[].code | string | Option contract symbol |
data.ranks[].name | string | Option name |
data.ranks[].option_type | int | CALL / PUT |
data.ranks[].volume | string | Volume |
data.ranks[].turnover | string | Turnover |
data.ranks[].open_interest | string | Open interest |
data.ranks[].oi_increment | int | Daily OI increase (>=0) |
data.ranks[].oi_decrement | int | Daily OI decrease (>=0) |
data.ranks[].iv | number | Implied volatility (percent) |
data.ranks[].option_price | string | Option last price |
data.ranks[].change_rate | number | Change rate (percent) |
data.ranks[].mid_price | string | Mid price |
data.ranks[].bid_price | string | Bid |
data.ranks[].ask_price | string | Ask |
data.ranks[].bid_volume | string | Bid size |
data.ranks[].ask_volume | string | Ask size |
data.ranks[].delta | number | Delta |
data.ranks[].gamma | number | Gamma |
data.ranks[].theta | number | Theta |
data.ranks[].vega | number | Vega |
data.ranks[].rho | number | Rho |
data.trading_date | string | Actual query trading day |
pagination.total | int | |
pagination.completed | bool | True when this is the last page. Stop paging only when completed is true |
pagination.page_flag | string | Next page cursor. Pass it back as page_flag while completed is false; empty on the last page |
Errors
| ret_code | error.code | Description |
|---|---|---|
| 0 | — | Success |
| -3 | invalid_parameter | Missing or invalid parameter |
| -8 | unsupported | Not supported |
| -10 | no_data | No data |
Response example
json
{
"ret_code": 0,
"ret_msg": "success",
"data": {
"ranks": [
{
"code": "US.AAPL",
"name": "example",
"option_type": 0,
"volume": "example",
"turnover": "example",
"open_interest": "example",
"oi_increment": 0,
"oi_decrement": 0,
"iv": 1.2,
"option_price": "example",
"change_rate": 1.2,
"mid_price": "example",
"bid_price": "example",
"ask_price": "example",
"bid_volume": "example",
"ask_volume": "example",
"delta": 1.2,
"gamma": 1.2,
"theta": 1.2,
"vega": 1.2,
"rho": 1.2
}
],
"trading_date": "2026-10-16"
},
"pagination": {
"page_flag": "",
"completed": true,
"total": 0
}
}