Real-time Ticker
GET/api/v1.0/quote/{symbol}/rt-tickerGet tick-by-tick trade data for a symbol. Returns the latest N trade details, including price, volume, buy/sell direction, trade type and session.
Parameters
| Name | Type | In | Required | Description |
|---|---|---|---|---|
symbol | string | path | yes | Symbol code, e.g. HK.00700. |
num | int | query | no | Number of ticks to return, default 500, range 1~750. |
period | string[] | query | no | Filter by session; pass multiple values with the same key, e.g. ?period=BEFORE&period=AFTER; omit for all sessions. See enum period_type. |
Request Example
bash
curl -s "https://webapi.moomoo.com/api/v1.0/quote/HK.00700/rt-ticker?num=3" \
-H "Authorization: Bearer <AccessToken>" | jqResponse Fields
Returns top-level fields + ticker_list array + volume_precision.
Top-level Fields
| Field | Type | Description |
|---|---|---|
| code | string | Symbol code |
| name | string | English name |
| sc_name | string | Simplified Chinese name |
| tc_name | string | Traditional Chinese name |
| last_close | float | Previous close price (for client-side change calculation) |
| volume_precision | int | Volume precision n. Only common-instrument volume is scaled by 10^n; divide it when needed. Event contracts and perpetuals already expose hp_volume as the real value, typically with n=0, so do not divide again |
ticker_list[] Elements
| Field | Type | Description |
|---|---|---|
| sequence | int | Tick-by-tick sequence number (int64, monotonically increasing, can be used for dedup / incremental fetch) |
| time | int | Trade time, millisecond timestamp |
| price | float | Trade price |
| volume | number | Trade volume. Share count for stocks; real size for event contracts and perpetuals, may be fractional |
| turnover | number | Turnover. Real value for event contracts and perpetuals |
| pred_side | string | Event-contract side: NONE, YES, or NO. Not buy/sell |
| ticker_direction | string | Buy/sell direction. See ticker_direction enum below |
| tick_type | string | Tick-by-tick trade type (trade method). See tick_type enum below |
| period_type | string | Session the tick belongs to. See enum period_type |
| trade_type | string | Exchange trade type (ASCII character), display directly in UI, e.g. US P=Pre-market / T=Form-T / U=Cancel; HK / A-shares may be empty |
Enum ticker_direction (Buy/sell direction)
| Value | Meaning |
|---|---|
| BUY | Buy |
| SELL | Sell |
| NEUTRAL | Neutral (cannot determine active side) |
Enum tick_type (Tick-by-tick trade type)
| Value | Meaning |
|---|---|
| UNKNOWN | Unknown |
| AUTO_MATCH | Auto-match trade (most common for HK) |
| LATE | Late trade |
| NON_AUTO_MATCH | Non-auto-match trade |
| ODD_LOT | Odd lot trade |
| AUCTION | Auction trade |
| BULK | Block trade |
| OVERSEAS | Overseas trade |
| UNAUTO_MATCH_OFF | Non-auto-match off-exchange |
| NON_DIRECT_OFF | Non-direct off-exchange |
| OVERSEAS_OFF | Overseas off-exchange |
| AUTO_MATCH_OFF | Auto-match off-exchange |
| BULK_OFF | Block trade off-exchange |
| LATE_OFF | Late trade off-exchange |
| AUCTION_OFF | Auction off-exchange |
| ODD_LOT_OFF | Odd lot off-exchange |
| EVENING | Evening trade |
| ACCEPT_ELECTRONIC | Accept electronic |
| OUT_HOUR_CONTRACT | After-hours contract trade |
| BANK_CHARGE | CCASS charge |
| ELECTRONIC | Electronic trade |
| HIGH_DENSITY | High density trade |
| INTERMEDIATE_PRICE | Intermediate price trade |
| AT_AUCTION | At-auction trade |
| AUCTION_LIMIT | Auction limit trade |
| AT_AUCTION_LIMIT | At-auction limit |
| ENHANCE_LIMIT | Enhanced limit |
| HOT_QUOTE | Real-time quote |
| MARKET | Market order |
| ROUND_LOT | Round lot |
| SPECIAL_LOT | Special lot |
| ODD_AND_SPECIAL_LOT | Odd and special lot |
Supported Markets
- Code must use a market prefix supported by the API and your quote entitlements; the table below lists common markets, and other registered prefixes may also be supported. Otherwise, the API returns
invalid_symbol. - Only returns the latest N trades, does not support time range filtering; for historical tick-by-tick data by time range, use other history APIs.
Common market prefixes and categories:
| Prefix | Market | Supported Categories |
|---|---|---|
| HK | Hong Kong | Equity / Trust / REIT / Warrant / CBBC / Inline Warrant / Index / Sector / ETF / Option |
| US | United States | Equity / ETF / Index |
| SH | Shanghai | Equity / ETF / Index / Sector |
| SZ | Shenzhen | Equity / ETF / Index / Sector |
| BJ | Beijing | Equity / Index |
| KR | Korea | Equity / ETF / Index |
Error Codes
| ret_code | error.code | Trigger Condition | Recommended Action |
|---|---|---|---|
| -3 | invalid_parameter | symbol format invalid / num out of range / period value not in enum | Correct parameters and retry |
| -7 | invalid_symbol | symbol format valid but corresponding security not found | Use search API to confirm code validity |
| -5 | internal_error | Service error | Retry; if persistent, contact support |
| positive | backend_biz_error | Business error; see the response message for details | Follow ret_msg instructions; permission issues require enabling the corresponding market |
Response Example
json
{
"ret_code": 0,
"ret_msg": "success",
"data": {
"code": "HK.00700",
"name": "TENCENT",
"sc_name": "腾讯控股",
"tc_name": "騰訊控股",
"last_close": 481.6,
"ticker_list": [
{
"sequence": 7647056964060558023,
"time": 1780469195226,
"price": 465.8,
"volume": 100,
"turnover": 46580,
"ticker_direction": "SELL",
"tick_type": "LATE",
"period_type": "NORMAL",
"trade_type": " "
},
{
"sequence": 7647056964060558022,
"time": 1780469195104,
"price": 465.8,
"volume": 500,
"turnover": 232900,
"ticker_direction": "SELL",
"tick_type": "LATE",
"period_type": "NORMAL",
"trade_type": " "
},
{
"sequence": 7647056964060558021,
"time": 1780469195062,
"price": 465.8,
"volume": 100,
"turnover": 46580,
"ticker_direction": "BUY",
"tick_type": "AUTO_MATCH",
"period_type": "NORMAL",
"trade_type": " "
}
],
"volume_precision": 0
}
}