期權改單
接口说明
功能說明:期權改單,支援改數和價格。期權訂單查詢建議使用V2訂單查詢接口:訂單詳情
請求URL: /openapi/account/orders/option/replace?account_id={account_id}
要求方式: POST
頻次限制:每個AppId呼叫頻次限制為1秒1次。
請求參數
參數 | 類型 | 是否必須 | 說明 | 示例值 |
---|---|---|---|---|
account_id | String | 是 | 帳戶id | 2847483 |
modify_orders | []order_item | 是 | 訂單明細 |
order_item:
參數 | 類型 | 是否必須 | 說明 | 示例值 |
---|---|---|---|---|
client_order_id | String | 是 | 訂單id | 0KGOHL4PR2SLC0DKIND4TI0002 |
stop_price | String | 否 | 停損價 | 11.00 |
limit_price | String | 否 | 限價 | 11.00 |
quantity | String | 否 | 數量 | 1 |
orders | []order | 是 | 腿明細 |
order
參數 | 類型 | 是否必須 | 說明 | 示例值 |
---|---|---|---|---|
client_order_id | String | 是 | 單腳選擇權訂單id | G2JAJPOR4KUA0F5I9LONH8J83A |
quantity | String | 是 | 數量 | 1 |
響應參數
參數 | 類型 | 是否必須 | 說明 | 示例值 |
---|---|---|---|---|
client_order_id | String | 否 | 客戶端訂單id 普通訂單回傳 | 0KGOHL4PR2SLC0DKIND4TI0002 |
order_id | String | 否 | 訂單id 普通訂單回傳 | 80HG7CPSFDPCAL3TP66LKBAS69 |
請求示例
- Python
- Java
from webullsdktrade.api import API
from webullsdkcore.client import ApiClient
from webullsdkcore.common.region import Region
client_order_id = uuid.uuid4().hex
option_modify_orders = [
{
"client_order_id": client_order_id,
"quantity": "2",
"limit_price": "11.3",
"orders": [
{
"client_order_id": client_order_id,
"quantity": "2"
}
]
}
]
api_client = ApiClient(your_app_key, your_app_secret, Region.HK.value)
api = API(api_client)
response = api.order.replace_option(account_id, option_modify_orders)
if response.status_code == 200:
order_res = response.json()
HttpApiConfig apiConfig = HttpApiConfig.builder()
.appKey(Env.APP_KEY)
.appSecret(Env.APP_SECRET)
.regionId(Region.hk.name())
.build();
TradeApiService apiService = new TradeHttpApiService(apiConfig);
OptionOrderItemLeg optionReplaceItemLeg = new OptionOrderItemLeg();
optionReplaceItemLeg.setQuantity("2");
optionReplaceItemLeg.setClientOrderId(clientOrderId);
List<OptionOrderItemLeg> optionReplaceItemLegList = new ArrayList<>();
optionReplaceItemLegList.add(optionReplaceItemLeg);
OptionOrderItem optionReplaceItem = new OptionOrderItem();
optionReplaceItem.setClientOrderId(clientOrderId();
optionReplaceItem.setLimitPrice("3");
optionReplaceItem.setQuantity("2");
optionReplaceItem.setOrders(optionReplaceItemLegList);
List<OptionOrderItem> optionReplaceItemList = new ArrayList<>();
optionReplaceItemList.add(optionReplaceItem);
OptionOrder optionReplace = new OptionOrder();
optionReplace.setModifyOrders(optionReplaceItemList);
TradeOrderResponse tradeReplaceOptionResponse = apiService.replaceOption(accountId, optionReplace);