Skip to content

Option Chain ​

GET /api/v1.0/quote/{symbol}/option-chain

Get the option chain for a given underlying within an expiry-date range; each record is a single CALL or PUT contract. Returns: contract symbol, stock_id, contract name, lot size, security type (DRVT), option side (CALL / PUT), underlying stock symbol, strike date, strike price, index_option_type (NORMAL / SMALL / N/A), expiration cycle (MONTH / WEEK / END_OF_MONTH / QUARTERLY / WEEKMON-FRI / N/A), option specification (STANDARD / NON_STANDARD / N/A). Supported markets: HK / US / JP; other markets return ret_code=-8 unsupported. Supports HK/US/JP equities, plus HK indices (HSI / HSCEI / HSTECH, etc.) and US indices (VIX / XSP / DJX / OEX / RUT and various sector indices); index_option_type is required for index underlyings, omitted for ordinary equities. Currently unavailable indices: US..SPX, US..NDX (no data available). start / end are optional yyyy-MM-dd; empty list when no chain available; server returns at most 20 expiry dates per call (nearest first). For the expiry date list use quote.option_expiration_date; for IV / HV analysis use quote.option_volatility; for exercise probability use quote.option_exercise_probability.

Parameters ​

NameTypeInRequiredDescription
symbolstringpathyesOption underlying symbol (path param), e.g. HK.00700
startstringquerynoStart expiry date yyyy-MM-dd (inclusive). If omitted, no lower bound. e.g. 2026-05-01
endstringquerynoEnd expiry date yyyy-MM-dd (inclusive). If omitted, no upper bound. e.g. 2026-05-31
index_option_typeintquerynoIndex option type (only for index underlyings; omit for equities). HK: 1=HSI/2=HSCEI/3=Mini-HSI/4=Mini-HSCEI/5=HSTECH; US: 1000=fallback/1001=VIX/1003=XSP/1005=EFS/1006=MXS/1007=DJX/1008=OEX/1009=SIXB/1010=SIXI/1011=SIXM/1012=SIXU/1013=SIXV/1014=XEO/1015=BKX/1016=XAU/1017=OSX/1018=SOX/1019=UTY/1020=RUT/1021=SIXRE/1022=XND/1023=CBTX/1024=MBTX; JP: 2001=N225/2002=N225M/2003=TOPIX. SPX(1002)/NDX(1004) currently have no data available and are removed
filter_standardstringquerynoFilter by standard / non-standard options; ALL=all (default), STANDARD=standard only, NON_STANDARD=non-standard only (FLEX / adjusted contracts)

Example ​

bash
curl 'https://webapi.moomoo.com/api/v1.0/quote/US.AAPL/option-chain' | jq

Response ​

NameTypeDescription
data.option_chainobject[]
data.option_chain[].codestringOption contract symbol, e.g. HK.TCH260528C230000
data.option_chain[].stock_idstringOption contract numeric ID, e.g. 81210697
data.option_chain[].namestringOption contract English name
data.option_chain[].sc_namestringOption contract Simplified Chinese name
data.option_chain[].tc_namestringOption contract Traditional Chinese name
data.option_chain[].lot_sizeintShares per lot for the contract, e.g. 100
data.option_chain[].stock_typestringSecurity type; always DRVT for option contracts
data.option_chain[].option_typestringOption side. Values: CALL / PUT
data.option_chain[].stock_ownerstringUnderlying stock symbol, e.g. HK.00700
data.option_chain[].strike_timestringStrike date, format yyyy-MM-dd, e.g. 2026-05-28
data.option_chain[].strike_pricenumberStrike price (divided by 1e9 to restore the real value), e.g. 230
data.option_chain[].index_option_typestringIndex option type. Values: NORMAL (standard index option) / SMALL (mini index option, e.g. Mini-HSI / Mini-HSCEI) / N/A (non-index option or unspecified)
data.option_chain[].expiration_cycleintExpiration cycle. Values: MONTH / WEEK / END_OF_MONTH / QUARTERLY / WEEKMON / WEEKTUE / WEEKWED / WEEKTHU / WEEKFRI / N/A
data.option_chain[].option_standard_typeintOption specification type. Values: STANDARD / NON_STANDARD (FLEX / adjusted contracts) / N/A

Errors ​

ret_codeerror.codeWhen
0—Success
-3invalid_parameterA parameter is missing or not in the allowed set
-7invalid_symbolSymbol is not in the security master
-8unsupportedMarket or instrument is outside this API
-9permission_deniedAuthenticated, but without quote permission
-10no_dataNothing is returned
-11rate_limitedPer-user rate limit

Response example ​

json
{
  "ret_code": 0,
  "ret_msg": "success",
  "data": {
    "option_chain": [
      {
        "code": "US.AAPL",
        "stock_id": "example",
        "name": "example",
        "sc_name": "example",
        "tc_name": "example",
        "lot_size": 0,
        "stock_type": "example",
        "option_type": "example",
        "stock_owner": "example",
        "strike_time": "example",
        "strike_price": 1.2,
        "index_option_type": "example",
        "expiration_cycle": 0,
        "option_standard_type": 0
      }
    ]
  }
}