Option Exercise

These five operations are both TradeApiService constants and asynchronous TradeClient convenience methods.

Exercise Check

Operation

TradeApiService.OPTION_EXERCISE_CHECK = option_exercise_check; convenience method: CheckOptionExerciseAsync.

Request

TigerRequest<OptionExerciseCheckResponse>

ModelValue: OptionExerciseCheckModel.

Parameters

SDK propertyC# typeAPI fieldSDK defaultRequiredConstraints
LangLanguagelangNone (omitted if not set)no SDK validationsee operation constraints
Accountstring (nullable)accountnullno SDK validationsee operation constraints
SecretKeystringsecret_keynullno SDK validationsee operation constraints
ContractIdlongcontract_idNone (omitted if not set)no SDK validationsee operation constraints
Typestringtypenullno SDK validationsee operation constraints
QuantitydoublequantityNone (omitted if not set)no SDK validationsee operation constraints
ExecutingDatestringexecuting_datenullno SDK validationsee operation constraints
IsForcebool (nullable)is_forcenullno SDK validationsee operation constraints
ItmRateint (nullable)itm_ratenullno SDK validationsee operation constraints

Return

OptionExerciseCheckResponse inherits TigerResponse; its data property is OptionExerciseCheckItem. Key fields follow the concrete response model; submit/cancel data is intentionally object in this SDK.

Example

OptionExerciseCheckResponse response = await tradeClient.CheckOptionExerciseAsync(1234567890L, "Exercise", 1, "2026-08-21", false);
if (!response.IsSuccess()) throw new InvalidOperationException(response.Message);

Response type

OptionExerciseCheckItem? data = response?.Data; // null when response or data is absent

Response Example

{
  "code": 0,
  "message": "success",
  "timestamp": 1785528000000,
  "data": {
    "exercisable": true,
    "identifier": "AAPL  250808C00230000",
    "position": 5,
    "maxExerciseQuantity": 5
  }
}

Source and related APIs

See orders and request/response conventions.

Exercise Positions

Operation

TradeApiService.OPTION_EXERCISE_POSITION = option_exercise_position; convenience method: GetOptionExercisePositionsAsync.

Request

TigerRequest<OptionExercisePositionResponse>

ModelValue: OptionExercisePositionModel.

Parameters

SDK propertyC# typeAPI fieldSDK defaultRequiredConstraints
LangLanguagelangNone (omitted if not set)no SDK validationsee operation constraints
Accountstring (nullable)accountnullno SDK validationsee operation constraints
SecretKeystringsecret_keynullno SDK validationsee operation constraints
Typestringtypenullno SDK validationsee operation constraints

Return

OptionExercisePositionResponse inherits TigerResponse; its data property is OptionExercisePositionPage. Key fields follow the concrete response model; submit/cancel data is intentionally object in this SDK.

Example

OptionExercisePositionResponse response = await tradeClient.GetOptionExercisePositionsAsync("Exercise");
if (!response.IsSuccess()) throw new InvalidOperationException(response.Message);

Response type

OptionExercisePositionPage? data = response?.Data; // null when response or data is absent

Response Example

{
  "code": 0,
  "message": "success",
  "timestamp": 1785528000000,
  "data": [
    {
      "identifier": "AAPL  250808C00230000",
      "symbol": "AAPL",
      "strike": 230.0,
      "right": "CALL",
      "expiry": "2025-08-08",
      "position": 5,
      "exercisableQty": 5
    }
  ]
}

Source and related APIs

See orders and request/response conventions.

Submit Exercise

Operation

TradeApiService.OPTION_EXERCISE_SUBMIT = option_exercise_submit; convenience method: SubmitOptionExerciseAsync.

Request

TigerRequest<OptionExerciseSubmitResponse>

ModelValue: OptionExerciseSubmitModel.

Parameters

SDK propertyC# typeAPI fieldSDK defaultRequiredConstraints
LangLanguagelangNone (omitted if not set)no SDK validationsee operation constraints
Accountstring (nullable)accountnullno SDK validationsee operation constraints
SecretKeystringsecret_keynullno SDK validationsee operation constraints
ContractIdlongcontract_idNone (omitted if not set)no SDK validationsee operation constraints
Typestringtypenullno SDK validationsee operation constraints
QuantitydoublequantityNone (omitted if not set)no SDK validationsee operation constraints
ExecutingDatestringexecuting_datenullno SDK validationsee operation constraints
IsForcebool (nullable)is_forcenullno SDK validationsee operation constraints
ItmRateint (nullable)itm_ratenullno SDK validationsee operation constraints

Return

OptionExerciseSubmitResponse inherits TigerResponse; its data property is object. Key fields follow the concrete response model; submit/cancel data is intentionally object in this SDK.

Example

OptionExerciseSubmitResponse response = await tradeClient.SubmitOptionExerciseAsync(1234567890L, "Exercise", 1, "2026-08-21", false);
if (!response.IsSuccess()) throw new InvalidOperationException(response.Message);

Response type

object? data = response?.Data; // null when response or data is absent

Response Example

{
  "code": 0,
  "message": "success",
  "timestamp": 1785528000000,
  "data": {
    "id": 200001
  }
}

Source and related APIs

See orders and request/response conventions.

Exercise Records

Operation

TradeApiService.OPTION_EXERCISE_RECORD = option_exercise_record; convenience method: GetOptionExerciseRecordsAsync.

Request

TigerRequest<OptionExerciseRecordResponse>

ModelValue: OptionExerciseRecordModel.

Parameters

SDK propertyC# typeAPI fieldSDK defaultRequiredConstraints
LangLanguagelangNone (omitted if not set)no SDK validationsee operation constraints
Accountstring (nullable)accountnullno SDK validationsee operation constraints
SecretKeystringsecret_keynullno SDK validationsee operation constraints
Typestringtypenullno SDK validationsee operation constraints
Statusstringstatusnullno SDK validationsee operation constraints
Symbolstringsymbolnullno SDK validationsee operation constraints
OrderBystringorder_bynullno SDK validationsee operation constraints
Pageintpage1no SDK validationsee operation constraints
Sizeintsize20no SDK validationsee operation constraints

Return

OptionExerciseRecordResponse inherits TigerResponse; its data property is OptionExerciseRecordPage. Key fields follow the concrete response model; submit/cancel data is intentionally object in this SDK.

Example

OptionExerciseRecordResponse response = await tradeClient.GetOptionExerciseRecordsAsync(page: 1, size: 20);
if (!response.IsSuccess()) throw new InvalidOperationException(response.Message);

Response type

OptionExerciseRecordPage? data = response?.Data; // null when response or data is absent

Response Example

{
  "code": 0,
  "message": "success",
  "timestamp": 1785528000000,
  "data": [
    {
      "id": 200001,
      "identifier": "AAPL  250808C00230000",
      "direction": "EXERCISE",
      "quantity": 5,
      "status": "SUBMITTED",
      "createTime": 1785441600000
    }
  ]
}

Source and related APIs

See orders and request/response conventions.

Cancel Exercise

Operation

TradeApiService.OPTION_EXERCISE_CANCEL = option_exercise_cancel; convenience method: CancelOptionExerciseAsync.

Request

TigerRequest<OptionExerciseCancelResponse>

ModelValue: OptionExerciseCancelModel.

Parameters

SDK propertyC# typeAPI fieldSDK defaultRequiredConstraints
LangLanguagelangNone (omitted if not set)no SDK validationsee operation constraints
Accountstring (nullable)accountnullno SDK validationsee operation constraints
SecretKeystringsecret_keynullno SDK validationsee operation constraints
IdlongidNone (omitted if not set)no SDK validationsee operation constraints

Return

OptionExerciseCancelResponse inherits TigerResponse; its data property is object. Key fields follow the concrete response model; submit/cancel data is intentionally object in this SDK.

Example

OptionExerciseCancelResponse response = await tradeClient.CancelOptionExerciseAsync(1234567890L);
if (!response.IsSuccess()) throw new InvalidOperationException(response.Message);

Response type

object? data = response?.Data; // null when response or data is absent

Response Example

{
  "code": 0,
  "message": "success",
  "timestamp": 1785528000000,
  "data": {
    "id": 200001,
    "status": "CANCELLED"
  }
}

Source and related APIs

See orders and request/response conventions.


Did this page help you?