Skip to content

Plate Stock

GET /api/v1.0/quote/plate-stock

Get the list of stock members under a specified plate (sector), with sorting and pagination support.

Parameters

NameTypeInRequiredDescription
plate_codestringqueryyesPlate code (from the plate list API), e.g. HK.LIST1045.
sort_fieldstringquerynoSort field. Default NONE. See Naming Dictionary.
ascendboolquerynoAscending order. Default true.
price_typestringquerynoValue source for price-type sort fields. Default NORMAL. Values: NORMAL / BEFORE / AFTER / OVERNIGHT.
leverage_directionintquerynoETF leverage direction filter (only effective for ETF plates): 0=all / 1=long / 2=short. Default 0.
leverage_multipleintquerynoETF leverage multiple filter (only effective for ETF plates), scaled by 10^3, e.g. 2000=2x. Default 0=all.
next_keystringquerynoPagination cursor. Leave empty for the first page; pass the previous page's pagination.next_key.
limitintquerynoPage size. Default 200, max 1000.

Request Example

bash
curl 'https://webapi.moomoo.com/api/v1.0/quote/plate-stock?plate_code=HK.LIST1045&limit=2' | jq

Response Fields

Returns data.stock_list[] as the plate constituent stock list; pagination info in top-level pagination.

FieldTypeDescription
codestringStock code (with market prefix), e.g. HK.02337.
stock_idintStock ID (internal numeric identifier).
stock_namestringEnglish name.
sc_namestringSimplified Chinese name.
tc_namestringTraditional Chinese name.
stock_typestringSecurity type. See Naming Dictionary.
lot_sizeintShares per lot (options=contract shares, futures=contract multiplier).
list_timeintListing time (millisecond timestamp); returns 0 if no data.
pagination.totalintTotal members in the plate.
pagination.has_moreboolWhether there is a next page.
pagination.next_keystringNext page cursor; "-1" when no more pages.

Supported Markets

  • Markets: HK / US / SH / SZ / SG / JP / CA / AU / MY and all markets (consistent with plates returned by the plate list API).
  • ETF leverage filters (leverage_direction / leverage_multiple) only take effect for ETF plates; they are ignored for other plates even if passed.
  • price_type only affects the value source for price-type sort fields.

Error Codes

ret_codeerror.codeTrigger ConditionHandling
0--Success (valid plate with no constituents returns empty stock_list with pagination.total=0)--
-3invalid_parameterMissing plate_code / plate_code doesn't match market prefix regex / sort_field not in enum / price_type not in enum / limit exceeds 1000 / invalid next_keyCorrect request parameters and retry
-7invalid_symbolplate_code cannot resolve to a valid plate (code does not exist or has been delisted)Get valid plate codes from the plate list API
-4internal_errorGateway failed to construct backend requestRetry; contact gateway support if persistent

Response Example

json
{
  "ret_code": 0,
  "ret_msg": "success",
  "data": {
    "stock_list": [
      {
        "code": "HK.02337",
        "stock_id": 74891344742689,
        "stock_name": "众诚能源",
        "stock_type": "STOCK",
        "lot_size": 1000,
        "list_time": 1508083200000
      },
      {
        "code": "HK.01193",
        "stock_id": 38976828212393,
        "stock_name": "华润燃气",
        "stock_type": "STOCK",
        "lot_size": 100,
        "list_time": 784137600000
      }
    ]
  },
  "pagination": { "has_more": true, "next_key": "2", "total": 22 }
}