CQG FLOW algo first enters the market then tries to exit at a better price to make profit when market moves in favorable direction or at break even or with limited loss otherwise.
Order types: MKT
Method: for a given time period tries to enter the market with single order of fixed size at regular time intervals, each fill of entry order results in launch of an exit order which is essentially a CQG POSITIONBRKT algo with single profit target.
Parameters:
|
Name |
Tag number |
Format |
Comment |
|
TargetStrategy |
847 |
Int |
1027 – CQG FLOW |
|
StartTime |
8151 |
Time after which the algo will begin execution. No slices will be released before this time. Replaced with UTC Now acquired by CQG Algo Engine when this parameter is in the past or not present. Unless stated otherwise, can be updated to different value before algo execution has started; value change is ignored after algo start. Default – Now. This is a global algo parameter. For non-default value to be used it’s required to set it for leg order with 0 index but recommended to use same value for both leg orders. | |
|
EndTime |
8152 |
Time that, when set, represents the Computed End Time. Cannot be specified together with MaxDurationInMinutes. Automatically replaced with order’s symbol specific end of trading day when set to time after trading day end. Default: symbol specific end of trading day. This is a global algo parameter. For non-default value to be used it’s required to set it for leg order with 0 index but recommended to use same value for both leg orders. | |
|
MaxDurationInMinutes |
9030 |
Float |
If set, this value is added to StartTime to yield the Computed End Time. At the Computed End Time, all slices in the market will be paid up. Non-working size will be cancelled. MaxDurationInMinutes cannot be specified together with End Time. If neither this value, nor End Time are set, the Computed End Time will default to order’s symbol specific end of trading day. Computed End Time will be set to order’s symbol specific end of trading day the when StartTime + MaxDurationInMinutes is after trading day end. This is a global algo parameter. For non-default value to be used it’s required to set it for leg order with 0 index but recommended to use same value for both leg orders. |
|
LegIndex |
10000 |
Int |
0-based leg index. Required for all legs. Should be set to: 0 – for first leg. 1 – for second leg. |
|
GroupID |
10001 |
String |
Globally unique identifier assigned by a client to every leg order constituting the single multi-legged algo order. Required for all legs. |
|
NumberOfLegs |
10002 |
Int |
Number of legs in multi-legged algo. Required for all legs, shall be 2. |
|
IntervalInSeconds |
8820 |
Int |
Slice entry interval in seconds. Default – 10. Allowed value range is [1; 86400]. Specific for leg order with 0 index. |
|
OrderSizeOverride |
8840 |
Int |
Size of child order algo will be launching each slice interval except, probably, last slice which can be smaller if order remaining quantity is less than child size. Default – 1. Zero value means launch whole quantity at once. Allowed value range is [0; leg order size]. When ChildSize is greater than leg order size its value will be limited by leg order size. Specific for leg order with 0 index. |
|
TickOffset |
8402 |
Int |
Initial placement of child orders relative to best level. 0 means join best, -1 means one tick through the market. Default – -1. This parameter value is not limited. Specific for leg order with 0 index. |
|
StopTicks |
9602 |
Int |
Number of ticks away from algo order price (higher for BUY, lower for SELL) to calculate price which when reached will result in launching ‘stop’ part of the algo. Default – 5. Shall be greater than or equal to 0. Specific for leg order with 1 index. |
|
OnStopTrigger |
9604 |
Char |
Defines how triggered stop order shall be executed. Supported values: 0 – Limit - Launch native limit order at the trigger price. 1 – StaticPayup - Launch native limit order at a price level which is StopPayupTicks better than trigger price. Better means 'more aggressive' price, i.e., higher for BUY order. 2 – PayupAlgo - Launch payup algo order using trigger price as starting price of an order. Default is 0 (Limit). Specific for leg order with 1 index. |
|
StopPayupTicks |
9603 |
Int |
Price offset in ticks for calculating stop order price. 0 - means same price as stop price 1 - means one tick better (more aggressive) than stop price. Used when OnStopTrigger value is 1 (StaticPayup). Default – 0. Shall be greater than or equal to 0. Specific for leg order with 1 index. |
|
Target1PriceTicks |
9610 |
Int |
Number of ticks away from algo order price (lower for BUY, higher for SELL) to determine price of first profit target order. Default – 0. Shall be greater than or equal to 0. Specific for leg order with 1 index. |
|
Target1OrderType |
Char |
9616 |
Order type for first target. Supported values: 1 – Limit - Launch native limit order at the target price. 2 – TrailingStopAlgo - Wait until market crosses target price level then launch trailing stop algo order. Default – 1 (Limit). Specific for leg order with 1 index. |
|
Target1TrailTicks |
Int |
9617 |
A tick distance from market (last trade price) to maintain. Used when value of Target1OrderType is 2 (TrailingStopAlgo). Default – 0. Specific for leg order with 1 index. |
|
Target1OnTrigger |
Char |
9618 |
Defines how triggerred trailing stop order shall be executed if it was used for first target order. Used when Target1OrderType is 2 (TrailingStopAlgo). Supported values: 0 – Limit - Launch native limit order at the trigger price. 1 – StaticPayup - Launch native limit order at a price level which is TrailingStopPayupTicks better than trigger price. Better means 'more aggressive' price, i.e., higher for BUY order. 2 – PayupAlgo - Launch payup algo order using trigger price as starting price of an order. Default is 0 (Limit). Specific for leg order with 1 index. |
|
TrailingStopPayupTicks |
Int |
9625 |
Price offset in ticks for limit order with static payup launched on trailing stop trigger. 0 - means same price as trigger price, 1 - means one tick better than trigger price. Better means 'more aggressive' price, i.e., higher for BUY order. Used when target order type is TrailingStopAlgo and its trigger behavior is StaticPayup. This parameter is shared between all target orders with trailing stop order which trigger behavior is chosen to be StaticPayup. Shall be greater than or equal to 0. Specific for leg order with 1 index. |
|
PayupModel |
9105 |
Char |
See CQG PAYUP algo. Shared between all orders which dedicated Target1OnTrigger parameter value is 2 (PayupAlgo). Specific for leg order with 1 index. |
|
ModelSensitivity |
9111 |
Float |
See CQG PAYUP algo. Shared between all orders which dedicated Target1OnTrigger parameter value is 2 (PayupAlgo). Specific for leg order with 1 index. |
|
OppositeSizeRatio |
9120 |
Float |
See CQG PAYUP algo. Shared between all orders which dedicated Target1OnTrigger parameter value is 2 (PayupAlgo). Specific for leg order with 1 index. |
|
OppositeSizeRaw |
9130 |
Int |
See CQG PAYUP algo. Shared between all orders which dedicated Target1OnTrigger parameter value is 2 (PayupAlgo). Specific for leg order with 1 index. |
|
OnMiss |
9106 |
Char |
See CQG PAYUP algo. Shared between all orders which dedicated Target1OnTrigger parameter value is 2 (PayupAlgo). Specific for leg order with 1 index. |
|
MaxChaseTicks |
8202 |
Int |
See CQG PAYUP algo. Shared between all orders which dedicated Target1OnTrigger parameter value is 2 (PayupAlgo). Specific for leg order with 1 index. |
Order placement will be rejected if one of the following conditions is not met:
o leg orders shall be on same security;
o leg order sizes shall be equal;
o leg orders shall be on opposite sides.