Skip to content

Option Volatility Smile ​

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

Get the option Implied Volatility Smile curve across strike prices for a specified (or nearest upcoming) expiry date. Uses expire_time to select the expiry date, or the nearest unexpired date when omitted. Returns Call IV, Put IV, and Average IV (percent) by strike price. Supported markets: US / HK / JP.

Request ​

ParameterTypeInRequiredDescription
symbolstringpathyesOption underlying symbol (path param), e.g. US.TSLA / US.AAPL / HK.00700
expire_timestringquerynoTarget expiry date yyyy-MM-dd; omit to automatically pick the nearest available expiry
index_option_typeintquerynoIndex option type (only for index underlyings; omit for equities)

Example ​

bash
curl -X GET 'https://webapi.moomoo.com/api/v1.0/quote/US.AAPL/option-iv-smile?expire_time=1&index_option_type=1' \
  -H 'Authorization: Bearer <AccessToken>' | jq

Response ​

FieldTypeDescription
data.itemsobject[]
data.items[].strike_pricestringStrike price (divided by 1e9)
data.items[].strike_dateintegerExpiry date YYYY-MM-DD
data.items[].call_ivnumberCall implied volatility (percent)
data.items[].put_ivnumberPut implied volatility (percent)
data.items[].avg_ivnumberAverage implied volatility (percent)

Errors ​

ret_codeerror.codeDescription
0—Success
-3invalid_parameterMissing or invalid parameter
-7invalid_symbolUnknown symbol
-8unsupportedMarket or product is not supported
-9permission_deniedMissing permission
-10no_dataNo data
-11rate_limitedToo many requests

Sample ​

json
{
  "ret_code": 0,
  "ret_msg": "success",
  "data": {
    "items": [
      {
        "strike_price": "example",
        "strike_date": 0,
        "call_iv": "example",
        "put_iv": "example",
        "avg_iv": "example"
      }
    ]
  }
}