Skip to main content

Order Group Messages

Overview

Order groups provide automatic order cancellation when a contracts limit is reached. This feature helps manage risk by ensuring positions don’t exceed predefined thresholds. Limits are evaluated over a rolling 15-second window. Order groups are managed through custom FIX message types.
When an order group’s contracts limit is hit, all orders in the group are automatically canceled and no new orders can be placed until the group is reset.

Order Group Request (35=UOG)

Manage order groups with Create, Reset, Delete, Trigger, and Update operations.

Required Fields

TagNameDescriptionType/Values
20131OrderGroupActionOperation to performCreate<1>, Reset<2>, Delete<3>, Trigger<4>, Update<5>

Fields by Action

Create (Action=1)

TagNameDescriptionRequired
20132OrderGroupContractsLimitMaximum contracts allowed (1-1,000,000)Yes
The OrderGroupID is generated by the server and returned in the response. Do not include tag 20130 in Create requests.

Reset (Action=2)

TagNameDescriptionRequired
20130OrderGroupIDID of group to resetYes

Delete (Action=3)

TagNameDescriptionRequired
20130OrderGroupIDID of group to deleteYes

Trigger (Action=4)

TagNameDescriptionRequired
20130OrderGroupIDID of group to triggerYes
The Trigger action immediately cancels all orders in the specified order group, regardless of whether the contracts limit has been reached. This is useful for manual risk management or emergency order cancellation.

Update (Action=5)

TagNameDescriptionRequired
20130OrderGroupIDID of group to updateYes
20132OrderGroupContractsLimitNew maximum contracts allowed (1-1,000,000)Yes
If the updated limit would immediately trigger the group (based on the rolling 15-second window), the server cancels all orders in the group and marks it as triggered. No new orders can be placed until the group is reset.

Example Messages

Create Order Group
8=FIXT.1.1|9=150|35=UOG|34=5|52=20230809-12:34:56.789|49=your-api-key|56=KalshiNR|
20131=1|20132=5000|10=123|
Reset Order Group
8=FIXT.1.1|9=150|35=UOG|34=6|52=20230809-12:34:57.789|49=your-api-key|56=KalshiNR|
20131=2|20130=770e8400-e29b-41d4-a716-446655440002|10=124|
Delete Order Group
8=FIXT.1.1|9=150|35=UOG|34=7|52=20230809-12:34:58.789|49=your-api-key|56=KalshiNR|
20131=3|20130=770e8400-e29b-41d4-a716-446655440002|10=125|
Trigger Order Group
8=FIXT.1.1|9=150|35=UOG|34=8|52=20230809-12:34:59.789|49=your-api-key|56=KalshiNR|
20131=4|20130=770e8400-e29b-41d4-a716-446655440002|10=126|
Update Order Group Limit
8=FIXT.1.1|9=150|35=UOG|34=9|52=20230809-12:35:00.789|49=your-api-key|56=KalshiNR|
20131=5|20130=770e8400-e29b-41d4-a716-446655440002|20132=2500|10=127|

Order Group Response (35=UOH)

Response to order group management requests.

Response Fields

TagNameDescription
20130OrderGroupIDID of the order group
Errors are returned as BusinessMessageReject (35=j) messages, not in the OrderGroupResponse.