Combo Option Spread
GET/api/v1.0/quote/{symbol}/option-strategy-spreadQuery the server spread list and default spread for an underlying + strategy + expiry. Returns spread_list (actual price) and default_spread (actual price). Supports US and HK equity/ETF options; HK index, JP and other markets return -8. HK Covered(2) / Collar(8) return -8. CalendarSpread(15) / DiagonalSpread(16) require far_expire_time. No matching spreads (including the expiry having no contracts under the current filter_standard) return ret_code=0 with spread_list=[]. Use the spread with quote.option_strategy to list combos.
Parameters
| Name | Type | In | Required | Description |
|---|---|---|---|---|
symbol | string | path | yes | Option underlying symbol (path param), US or HK equity/ETF. e.g. US.AAPL / HK.00700 |
strategy | int | query | yes | Combo strategy type, same values as quote.option_strategy. HK does not support 2/8 |
expire_time | string | query | yes | Near expiry date yyyy-MM-dd, e.g. 2026-08-21 |
far_expire_time | string | query | no | Far expiry date yyyy-MM-dd; required for CalendarSpread / DiagonalSpread |
index_option_type | int | query | no | US index option type; required only for US index underlyings, omit for equities. HK index options have no combo strategies; do not pass 1-5 |
filter_standard | string | query | no | Filter by standard / non-standard options; same as the expiry-date query |
Example
bash
curl 'https://webapi.moomoo.com/api/v1.0/quote/US.AAPL/option-strategy-spread?strategy=1&expire_time=value' | jqResponse
| Name | Type | Description |
|---|---|---|
data.spread_list | number | Spread list (divided by 1e9) |
data.default_spread | number | Default spread (divided by 1e9); unused when spread_list is empty |
Errors
| ret_code | error.code | When |
|---|---|---|
| 0 | — | Success |
| -3 | invalid_parameter | A parameter is missing or not in the allowed set |
| -7 | invalid_symbol | Symbol is not in the security master |
| -8 | unsupported | Market or instrument is outside this API |
| -9 | permission_denied | Authenticated, but without quote permission |
| -10 | no_data | Nothing is returned |
| -11 | rate_limited | Per-user rate limit |
Response example
json
{
"ret_code": 0,
"ret_msg": "success",
"data": {
"spread_list": 1.2,
"default_spread": 1.2
}
}