期权行权

示例上下文

import { createClientConfig, TradeClient } from '@tigeropenapi/tigeropen';

const config = createClientConfig();
const tradeClient = TradeClient.fromConfig(config, config.account, config.secretKey);

行权检查

签名

async checkOptionExercise(req: OptionExerciseCheckRequest): Promise<OptionExerciseCheckResult | undefined>

用途

执行 check option exercise。

参数、默认值与约束

参数类型必填SDK 默认值约束
reqOptionExerciseCheckRequestNone
req.accountstring | undefinedTradeClient account when empty (client)
req.secretKeystring | undefinedInstitution account secret key. Overrides the default set in ClientConfig; omit to use the config default.
req.contractIdnumber期权合约 ID
req.typestringExercise | Expire
req.quantitynumber | undefined
req.executingDatestring | undefinedyyyy-MM-dd,Exercise 类型建议填
req.isForceboolean | undefinedExercise 类型建议填
req.itmRatenumber | undefined0–10,Expire 类型专用
req.langstring | undefined

返回

Promise<OptionExerciseCheckResult | undefined>

字段类型说明
availableQuantitynumber可行权数量
positionnumber持仓数量
stkPositionnumber股票持仓
stkPositionChangenumber股票持仓变动
stkPositionBeforenumber行权前股票持仓
stkPositionAfternumber行权后股票持仓
symbolstring股票代码

示例

const result = await tradeClient.checkOptionExercise({ contractId: 123, type: 'Exercise' });
console.log(result);

返回示例

{
  "availableQuantity": 0,
  "position": 0,
  "stkPosition": 0,
  "stkPositionChange": 0,
  "stkPositionBefore": 0,
  "stkPositionAfter": 0,
  "symbol": "string"
}

获取行权持仓

签名

async getOptionExercisePositions(req: OptionExercisePositionRequest): Promise<OptionExercisePositionPageResult | undefined>

用途

查询可行权期权持仓。

参数、默认值与约束

参数类型必填SDK 默认值约束
reqOptionExercisePositionRequestNone
req.accountstring | undefinedTradeClient account when empty (client)
req.secretKeystring | undefinedInstitution account secret key. Overrides the default set in ClientConfig; omit to use the config default.
req.typestringExercise | Expire
req.langstring | undefined

返回

Promise<OptionExercisePositionPageResult | undefined>

字段类型说明
pageNumnumber页码
pageSizenumber每页大小
itemCountnumber条目数
pageCountnumber总页数
itemsOptionExercisePosition[]数据数组

示例

const result = await tradeClient.getOptionExercisePositions({ type: 'Exercise' });
console.log(result);

返回示例

{
  "pageNum": 0,
  "pageSize": 0,
  "itemCount": 0,
  "pageCount": 0,
  "items": [
    {
      "contractId": 0,
      "symbol": "string",
      "stkSymbol": "string",
      "expireDate": "string",
      "strike": "string",
      "callPut": "string",
      "market": "string",
      "accountId": 0,
      "position": 0,
      "availableQuantity": 0
    }
  ]
}

提交行权

签名

async submitOptionExercise(req: OptionExerciseSubmitRequest): Promise<boolean>

用途

执行 submit option exercise。

参数、默认值与约束

参数类型必填SDK 默认值约束
reqOptionExerciseSubmitRequestNone
req.accountstring | undefinedTradeClient account when empty (client)
req.secretKeystring | undefinedInstitution account secret key. Overrides the default set in ClientConfig; omit to use the config default.
req.contractIdnumber
req.typestringExercise | Expire
req.quantitynumber
req.executingDatestring | undefinedExercise 必填,yyyy-MM-dd
req.isForceboolean | undefinedExercise 必填
req.itmRatenumber | undefined0–10,Expire 专用
req.langstring | undefined

返回

Promise<boolean>

示例

const result = await tradeClient.submitOptionExercise({ contractId: 123, type: 'Exercise', quantity: 1 });
console.log(result);

返回示例

"boolean"

获取行权记录

签名

async getOptionExerciseRecords(req: OptionExerciseRecordsRequest): Promise<OptionExerciseRecordPageResult | undefined>

用途

查询期权行权记录。

参数、默认值与约束

参数类型必填SDK 默认值约束
reqOptionExerciseRecordsRequestNone
req.accountstring | undefinedTradeClient account when empty (client)
req.secretKeystring | undefinedInstitution account secret key. Overrides the default set in ClientConfig; omit to use the config default.
req.pagenumber | undefined从 1 开始,默认 1
req.sizenumber | undefined1–100,默认 20
req.statusstring | undefinedNew | Cancel | Success | Fail
req.typestring | undefinedExercise | Expire
req.symbolstring | undefined
req.orderBystring | undefinedsymbol | expire_date | strike | is_call
req.langstring | undefined

返回

Promise<OptionExerciseRecordPageResult | undefined>

字段类型说明
pageNumnumber页码
pageSizenumber每页大小
itemCountnumber条目数
pageCountnumber总页数
itemsOptionExerciseRecord[]数据数组

示例

const result = await tradeClient.getOptionExerciseRecords({ page: 1, size: 20, type: 'Exercise' });
console.log(result);

返回示例

{
  "pageNum": 1,
  "pageSize": 20,
  "itemCount": 1,
  "pageCount": 1,
  "items": [
    {
      "id": 12345,
      "contractId": 55678,
      "symbol": "AAPL  260919C00200000",
      "stkSymbol": "AAPL",
      "expireDate": "20260919",
      "strike": "200.0",
      "callPut": "CALL",
      "type": "Exercise",
      "requestQuantity": 1,
      "quantity": 1,
      "status": "Submitted",
      "executingDate": "2026-09-19",
      "itmRate": 0,
      "isForce": false,
      "reason": "",
      "accountId": 10001
    }
  ]
}

取消行权

签名

async cancelOptionExercise(req: OptionExerciseCancelRequest): Promise<boolean>

用途

取消 option exercise。

参数、默认值与约束

参数类型必填SDK 默认值约束
reqOptionExerciseCancelRequestNone
req.accountstring | undefinedTradeClient account when empty (client)
req.secretKeystring | undefinedInstitution account secret key. Overrides the default set in ClientConfig; omit to use the config default.
req.idnumber
req.langstring | undefined

返回

Promise<boolean>

示例

const result = await tradeClient.cancelOptionExercise({ id: 1 });
console.log(result);

返回示例

"boolean"

Did this page help you?