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 property | C# type | API field | SDK default | Required | Constraints |
|---|---|---|---|---|---|
Lang | Language | lang | None (omitted if not set) | no SDK validation | see operation constraints |
Account | string (nullable) | account | null | no SDK validation | see operation constraints |
SecretKey | string | secret_key | null | no SDK validation | see operation constraints |
ContractId | long | contract_id | None (omitted if not set) | no SDK validation | see operation constraints |
Type | string | type | null | no SDK validation | see operation constraints |
Quantity | double | quantity | None (omitted if not set) | no SDK validation | see operation constraints |
ExecutingDate | string | executing_date | null | no SDK validation | see operation constraints |
IsForce | bool (nullable) | is_force | null | no SDK validation | see operation constraints |
ItmRate | int (nullable) | itm_rate | null | no SDK validation | see 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 absentResponse 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 property | C# type | API field | SDK default | Required | Constraints |
|---|---|---|---|---|---|
Lang | Language | lang | None (omitted if not set) | no SDK validation | see operation constraints |
Account | string (nullable) | account | null | no SDK validation | see operation constraints |
SecretKey | string | secret_key | null | no SDK validation | see operation constraints |
Type | string | type | null | no SDK validation | see 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 absentResponse 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 property | C# type | API field | SDK default | Required | Constraints |
|---|---|---|---|---|---|
Lang | Language | lang | None (omitted if not set) | no SDK validation | see operation constraints |
Account | string (nullable) | account | null | no SDK validation | see operation constraints |
SecretKey | string | secret_key | null | no SDK validation | see operation constraints |
ContractId | long | contract_id | None (omitted if not set) | no SDK validation | see operation constraints |
Type | string | type | null | no SDK validation | see operation constraints |
Quantity | double | quantity | None (omitted if not set) | no SDK validation | see operation constraints |
ExecutingDate | string | executing_date | null | no SDK validation | see operation constraints |
IsForce | bool (nullable) | is_force | null | no SDK validation | see operation constraints |
ItmRate | int (nullable) | itm_rate | null | no SDK validation | see 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 absentResponse 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 property | C# type | API field | SDK default | Required | Constraints |
|---|---|---|---|---|---|
Lang | Language | lang | None (omitted if not set) | no SDK validation | see operation constraints |
Account | string (nullable) | account | null | no SDK validation | see operation constraints |
SecretKey | string | secret_key | null | no SDK validation | see operation constraints |
Type | string | type | null | no SDK validation | see operation constraints |
Status | string | status | null | no SDK validation | see operation constraints |
Symbol | string | symbol | null | no SDK validation | see operation constraints |
OrderBy | string | order_by | null | no SDK validation | see operation constraints |
Page | int | page | 1 | no SDK validation | see operation constraints |
Size | int | size | 20 | no SDK validation | see 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 absentResponse 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 property | C# type | API field | SDK default | Required | Constraints |
|---|---|---|---|---|---|
Lang | Language | lang | None (omitted if not set) | no SDK validation | see operation constraints |
Account | string (nullable) | account | null | no SDK validation | see operation constraints |
SecretKey | string | secret_key | null | no SDK validation | see operation constraints |
Id | long | id | None (omitted if not set) | no SDK validation | see 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 absentResponse Example
{
"code": 0,
"message": "success",
"timestamp": 1785528000000,
"data": {
"id": 200001,
"status": "CANCELLED"
}
}Source and related APIs
See orders and request/response conventions.
Updated 1 day ago
