Place Orders
State-changing operations must prevent duplicate submission.
Preview Order
Operation
TradeApiService.PREVIEW_ORDER = preview_order. Use this constant for TigerRequest.ApiMethodName.
Request
TigerRequest<TigerDictResponse>ModelValue: PlaceOrderModel.
Parameters
| SDK property | C# type | API field | SDK default | Required | Constraints |
|---|---|---|---|---|---|
Lang | Language | lang | CLR default; omitted during serialization | no | — |
Account | string (nullable) | account | null | Auto-filled if empty | If empty, TradeClient injects TigerConfig.DefaultAccount; validation fails if it remains empty |
SecretKey | string | secret_key | null | no | — |
OrderId | Int32 | order_id | CLR default; omitted during serialization | Optional | — |
SecType | SecType | sec_type | CLR default; omitted during serialization | Optional | — |
Market | Market | market | CLR default; omitted during serialization | Optional | Enum value |
Currency | Currency | currency | CLR default; omitted during serialization | Optional | — |
Symbol | string | symbol | null | Required | — |
Right | string (nullable) | right | null | Optional | — |
Strike | string (nullable) | strike | null | Optional | — |
Expiry | string (nullable) | expiry | null | Optional | — |
Action | ActionType | action | CLR default; omitted during serialization | Optional | — |
OrderType | OrderType | order_type | CLR default; omitted during serialization | Optional | price fields are conditionally required by order type |
TotalQuantity | Int64 (nullable) | total_quantity | null | Optional | — |
TotalQuantityScale | Int32 (nullable) | total_quantity_scale | null | Optional | — |
LimitPrice | Double (nullable) | limit_price | null | Optional | conditional order-price field |
CashAmount | Double (nullable) | cash_amount | null | Optional | — |
AdjustLimit | Double | adjust_limit | CLR default; omitted during serialization | Optional | — |
AuxPrice | Double (nullable) | aux_price | null | Optional | conditional order-price field |
TrailingPercent | Double (nullable) | trailing_percent | null | Optional | conditional order-price field |
TimeInForce | TimeInForce | time_in_force | TimeInForce.DAY | Optional | — |
ExpireTime | long | expire_time | CLR default; omitted during serialization | Optional | — |
OutsideRth | Boolean | outside_rth | true | Optional | — |
TradingSessionType | TradeSession | trading_session_type | CLR default; omitted during serialization | Optional | — |
Exchange | string | exchange | null | Optional | — |
Multiplier | double | multiplier | CLR default; omitted during serialization | Optional | — |
LocalSymbol | string | local_symbol | null | Optional | — |
AllocAccounts | list of string | alloc_accounts | null | Optional | — |
AllocShares | list of Double | alloc_shares | null | Optional | — |
AlgoStrategy | string | algo_strategy | null | Optional | — |
AlgoParams | list of TagValue | algo_params | null | Optional | — |
DisplaySize | Int64 (nullable) | display_size | null | Optional | — |
MinDisplaySize | Int64 (nullable) | min_display_size | null | Optional | — |
CheckIntervals | Int64 (nullable) | check_intervals | null | Optional | — |
PriceType | string (nullable) | price_type | null | Optional | — |
StartTime | Int64 (nullable) | start_time | null | Optional | Timestamp or date format; maintain chronological order |
EndTime | Int64 (nullable) | end_time | null | Optional | Timestamp or date format; maintain chronological order |
UserMark | string | user_mark | null | Optional | — |
AttachType | AttachType | attach_type | CLR default; omitted during serialization | Optional | — |
ProfitTakerOrderId | Int32 | profit_taker_orderId | CLR default; omitted during serialization | Optional | — |
ProfitTakerPrice | Double | profit_taker_price | CLR default; omitted during serialization | Optional | — |
ProfitTakerTif | TimeInForce | profit_taker_tif | CLR default; omitted during serialization | Optional | — |
ProfitTakerRth | Boolean | profit_taker_rth | CLR default; omitted during serialization | Optional | — |
StopLossOrderType | OrderType | stop_loss_order_type | CLR default; omitted during serialization | Optional | — |
StopLossOrderId | Int32 | stop_loss_orderId | CLR default; omitted during serialization | Optional | — |
StopLossPrice | Double | stop_loss_price | CLR default; omitted during serialization | Optional | — |
StopLossLimitPrice | Double | stop_loss_limit_price | CLR default; omitted during serialization | Optional | — |
StopLossTif | TimeInForce | stop_loss_tif | CLR default; omitted during serialization | Optional | — |
StopLossTrailingPercent | Double | stop_loss_trailing_percent | CLR default; omitted during serialization | Optional | — |
StopLossTrailingAmount | Double | stop_loss_trailing_amount | CLR default; omitted during serialization | Optional | — |
ComboType | string | combo_type | null | Optional | — |
Return
TigerDictResponse inherits TigerResponse; its data property is Dictionary<string, object>.
Example
TigerRequest<TigerDictResponse> request = new()
{
ApiMethodName = TradeApiService.PREVIEW_ORDER,
ModelValue = new PlaceOrderModel
{
Account = tradeClient.GetDefaultAccount,
OrderId = 12345,
SecType = SecType.STK,
Market = Market.US,
Currency = Currency.USD,
Symbol = "YOUR_SYMBOL",
Action = ActionType.BUY,
OrderType = OrderType.LMT,
TotalQuantity = 1,
LimitPrice = 0.01
}
};
TigerDictResponse? response = await tradeClient.ExecuteAsync(request);Response type
Dictionary<string, object>? data = response?.Data; // null when response or data is absentData fields
| Type | SDK contract |
|---|---|
Dictionary<string, object> | Dynamic dictionary; the SDK defines no fixed keys or nested object types. |
Related APIs
See Requests, responses, and operations.
Place Order
Operation
TradeApiService.PLACE_ORDER = place_order. Use this constant for TigerRequest.ApiMethodName.
Request
TigerRequest<PlaceOrderResponse>ModelValue: PlaceOrderModel.
Parameters
| SDK property | C# type | API field | SDK default | Required | Constraints |
|---|---|---|---|---|---|
Lang | Language | lang | CLR default; omitted during serialization | no | — |
Account | string (nullable) | account | null | Auto-filled if empty | If empty, TradeClient injects TigerConfig.DefaultAccount; validation fails if it remains empty |
SecretKey | string | secret_key | null | no | — |
OrderId | Int32 | order_id | CLR default; omitted during serialization | Optional | — |
SecType | SecType | sec_type | CLR default; omitted during serialization | Optional | — |
Market | Market | market | CLR default; omitted during serialization | Optional | Enum value |
Currency | Currency | currency | CLR default; omitted during serialization | Optional | — |
Symbol | string | symbol | null | Required | — |
Right | string (nullable) | right | null | Optional | — |
Strike | string (nullable) | strike | null | Optional | — |
Expiry | string (nullable) | expiry | null | Optional | — |
Action | ActionType | action | CLR default; omitted during serialization | Optional | — |
OrderType | OrderType | order_type | CLR default; omitted during serialization | Optional | price fields are conditionally required by order type |
TotalQuantity | Int64 (nullable) | total_quantity | null | Optional | — |
TotalQuantityScale | Int32 (nullable) | total_quantity_scale | null | Optional | — |
LimitPrice | Double (nullable) | limit_price | null | Optional | conditional order-price field |
CashAmount | Double (nullable) | cash_amount | null | Optional | — |
AdjustLimit | Double | adjust_limit | CLR default; omitted during serialization | Optional | — |
AuxPrice | Double (nullable) | aux_price | null | Optional | conditional order-price field |
TrailingPercent | Double (nullable) | trailing_percent | null | Optional | conditional order-price field |
TimeInForce | TimeInForce | time_in_force | TimeInForce.DAY | Optional | — |
ExpireTime | long | expire_time | CLR default; omitted during serialization | Optional | — |
OutsideRth | Boolean | outside_rth | true | Optional | — |
TradingSessionType | TradeSession | trading_session_type | CLR default; omitted during serialization | Optional | — |
Exchange | string | exchange | null | Optional | — |
Multiplier | double | multiplier | CLR default; omitted during serialization | Optional | — |
LocalSymbol | string | local_symbol | null | Optional | — |
AllocAccounts | list of string | alloc_accounts | null | Optional | — |
AllocShares | list of Double | alloc_shares | null | Optional | — |
AlgoStrategy | string | algo_strategy | null | Optional | — |
AlgoParams | list of TagValue | algo_params | null | Optional | — |
DisplaySize | Int64 (nullable) | display_size | null | Optional | — |
MinDisplaySize | Int64 (nullable) | min_display_size | null | Optional | — |
CheckIntervals | Int64 (nullable) | check_intervals | null | Optional | — |
PriceType | string (nullable) | price_type | null | Optional | — |
StartTime | Int64 (nullable) | start_time | null | Optional | Timestamp or date format; maintain chronological order |
EndTime | Int64 (nullable) | end_time | null | Optional | Timestamp or date format; maintain chronological order |
UserMark | string | user_mark | null | Optional | — |
AttachType | AttachType | attach_type | CLR default; omitted during serialization | Optional | — |
ProfitTakerOrderId | Int32 | profit_taker_orderId | CLR default; omitted during serialization | Optional | — |
ProfitTakerPrice | Double | profit_taker_price | CLR default; omitted during serialization | Optional | — |
ProfitTakerTif | TimeInForce | profit_taker_tif | CLR default; omitted during serialization | Optional | — |
ProfitTakerRth | Boolean | profit_taker_rth | CLR default; omitted during serialization | Optional | — |
StopLossOrderType | OrderType | stop_loss_order_type | CLR default; omitted during serialization | Optional | — |
StopLossOrderId | Int32 | stop_loss_orderId | CLR default; omitted during serialization | Optional | — |
StopLossPrice | Double | stop_loss_price | CLR default; omitted during serialization | Optional | — |
StopLossLimitPrice | Double | stop_loss_limit_price | CLR default; omitted during serialization | Optional | — |
StopLossTif | TimeInForce | stop_loss_tif | CLR default; omitted during serialization | Optional | — |
StopLossTrailingPercent | Double | stop_loss_trailing_percent | CLR default; omitted during serialization | Optional | — |
StopLossTrailingAmount | Double | stop_loss_trailing_amount | CLR default; omitted during serialization | Optional | — |
ComboType | string | combo_type | null | Optional | — |
Return
PlaceOrderResponse inherits TigerResponse; its data property is PlaceOrderItem.
Example
TigerRequest<PlaceOrderResponse> request = new()
{
ApiMethodName = TradeApiService.PLACE_ORDER,
ModelValue = new PlaceOrderModel
{
Account = tradeClient.GetDefaultAccount,
OrderId = 12345,
SecType = SecType.STK,
Market = Market.US,
Currency = Currency.USD,
Symbol = "YOUR_SYMBOL",
Action = ActionType.BUY,
OrderType = OrderType.LMT,
TotalQuantity = 1,
LimitPrice = 0.01
}
};
// This submits a real order. Replace every placeholder, review the request, then call:
// PlaceOrderResponse? response = await tradeClient.ExecuteAsync(request);Response type
PlaceOrderItem? data = response?.Data; // null when response or data is absentData fields (PlaceOrderItem)
| Field | API field | C# type | Description |
|---|---|---|---|
Id | id | long | Order record ID. |
SubIds | subIds | List<Int64> | Child order record IDs. |
Orders | orders | List<TradeOrder> | Submitted order records. |
See the TradeOrder fields in Order queries for every item in Orders.
Response Example
{
"code": 0,
"message": "success",
"timestamp": 1785528000000,
"data": {
"id": 123458,
"orderId": 789014,
"subIds": []
}
}Rate limit
Base tier: 120 requests per minute.
Related APIs
Updated 23 days ago
