Event-contract combo RFQ: submit at least two legs plus MVC and
POST/api/v1.0/quote/combo-quotesEvent-contract combo RFQ: submit at least two legs plus MVC and receive YES bid/ask, quote_id, and rfq_id. Each combo_legs item: code (KS contract or .YES/.NO subcontract; the suffix is echoed), side (BUY/SELL/SELL_SHORT/BUY_BACK), qty_ratio (positive integer, every leg must use the same value), pred_side (YES/NO, may differ per leg); optional position_id. side is not sent to RFQ and is only echoed for a later order; RFQ uses pred_side. Returned prices are still the YES bid/ask. Legs must come from different events (at most one contract per event). Do not pair two combo_contracts from the same list row. mvc must come from quote.valid_combo_list and must not be invented. The quote may be cached, not a live exact RFQ. quote_id and rfq_id expire; request a new quote after expiry. Either id is omitted when the server does not send it. No subscribe required.
Parameters
| Name | Type | In | Required | Description |
|---|---|---|---|---|
mvc | string | body | yes | MVC ticker; must be passed through from quote.valid_combo_list data.mvc |
mvc_exchange | string | body | no | Optional MVC exchange; pass through data.mvc_exchange when present |
combo_legs | string | body | yes | Combo legs, at least 2 and at most 20. Must span different events; at most one leg per event. pred_side may differ per leg; side and qty_ratio must be the same across all legs |
Example
curl -X POST 'https://webapi.moomoo.com/api/v1.0/quote/combo-quotes' -H 'Content-Type: application/json' -d '{}' \
-H 'Authorization: Bearer <AccessToken>' | jqResponse parameters
| Name | Type | Description |
|---|---|---|
data.combo_legs | string | Echoed combo legs |
data.bid_price | string | YES bid price in (0,1) |
data.ask_price | string | YES ask price in (0,1) |
data.quote_id | string | Time-limited quote id for a subsequent combo order |
data.rfq_id | string | RFQ id paired with quote_id; omitted when the server does not send it |
data.should_retry | bool | Whether the caller should retry the RFQ |
data.bid_size | string | Bid size |
data.ask_size | string | Ask size |
Errors
| ret_code | error.code | Description |
|---|---|---|
| 0 | — | Success |
| -3 | invalid_parameter | Missing or invalid parameter |
| -8 | unsupported | Not supported |
| -10 | no_data | No data |
Response example
{
"ret_code": 0,
"ret_msg": "success",
"data": {
"combo_legs": "example",
"bid_price": "example",
"ask_price": "example",
"quote_id": "example",
"rfq_id": "example",
"should_retry": false,
"bid_size": "example",
"ask_size": "example"
}
}