Please review first the Trading with Investor/RT support page if you are not familiar with I/RT live trading order execution features
Introducing the new Trading Strategy setups, supported by CQG and Rithmic order routing systems.
Investor/RT 13.6 and higher features a major new automated server based trading order management functionality for use with the CQG and Rithmic order routing systems. Investor/RT enables the trader to create named Trading Strategy setups. As for any other I/RT object, you may use the Object Manager / Trading Strategy menu to create or edit a new setup. A Trading Strategy has one, two, or three legs or targets. Each target has a quantity to be bought/sold and specifies the stop loss and profit target for that quantity (expressed in tick increments) from the entry price. For example, a basic single target strategy to buy or sell 3 contracts with a 4 tick stop loss and a 12 tick profit target would be setup like this:

Similarly, a more complex trading strategy where 5 contracts are bought/sold with three targets legs contract might look like this:

When trading orders are submitted to your broker using Investor/RT, you may optionally specify the name of a strategy that will be used to manage the trade. A trade may be manually initiated using
- the ChartTradingDOM or ChartMiniTrader RTX extensions (which are the new recommended method versus the legacy Trading Order Desk feature)
- from a user-created chart button that is set up to execute a named trading order, where the trading order setup specifies the name of the strategy to be used to manage the position.
For example, using the Basic1Bracket4x12 Strategy shown above, you can submit a limit order to buy 3 contracts by clicking on the desired buy limit price in the ChartTradingDOM. Investor/RT submits this parent order as an OPO (Order Places Order) to the broker along with a pair of OCO orders representing the stop loss and profit target per the specified strategy. All three orders are submitted in tandem to the broker and are managed server-side by the CQG or Rithmic order routing systems. When the limit order fills, the two OCO orders then become active working orders. Note that these OCO orders, when accepted by the broker are shown in a subdued gray color in the ChartTradingDOM so you can see where the price levels for the stop and targets will be when these orders become active. When the fill of the parent order occurs, both stop and target orders change color to indicate they are now active working orders. When the broker fills either the stop or target, the opposite side is canceled automatically. Stops and target OCO orders can be revised by dragging the adjustment icon to a new price level in the ChartTradingDOM. Such revisions can be done before or after these submitted orders are actively working. If you manually cancel an OCO order, you must manually cancel the opposite side of the OCO.
Please be aware of the following difference in terms of order management, between CQG and Rithmic:
- For users of CQG order routing, when you submit a market order that has an associated strategy, Investor/RT first submits the market order alone and keeps the bracket orders pending until the position is filled. Once Investor/RT has the average fill price, it computes stop and target prices for the strategy and submits all of the OCO orders in tandem (2, 4 or 6 orders representing 1, 2 or 3 target legs). When initiating positions with market orders, all OCO pairs are submitted after the fill and become active immediately once accepted by the broker.
- Users of Rithmic order routing submitting market orders, the market order and targets/stop orders are all submitted to the broker at once, just as limit or stop orders to enter the market are. RIthmic handles the stop and target working orders, releasing them as fill(s) occur and computing the stop and target price offset from the average fill price.
Within a trading strategy setup window, you can also optionally specify a server side managed stop strategy.
- For Rithmic order routing, choose Trailing Stop as the stop strategy and the resulting OCO brackets will be server side managed as auto trailing stops as the market moves in favor of the position. The trail stop offset is the number of ticks specified as the stop offset in the Trading Strategy.
- For CQG order routing, an additional setup information, associated with the Stop Strategy, is available, where a different trailing stop offset may be specified.
Using Trading strategy with the ChartingDOM or Chart MiniTrader features
When Investor/RT is configured with CQG Continuum or Rithmic as the brokerage destination, the ChartTradingDOM shows a strategy checkbox at the bottom of the DOM. Check this box and select the name of the strategy you wish to use when you submit an order using the DOM. To use the ChartTradingDOM for manual trading, uncheck the strategy checkbox or choose None from the list of strategies shown in the strategy list.
Using Trading Strategy with Chart Buttons having "Execute Trading Order" as purpose
You can also Setup chart buttons that submit trading orders that have an attached strategy. For example, if you wish to enter the market at a limit or stop price, you could create a trading order that calls for a limit or stop order to be placed where the limit or stop price is specified as mouse-click. In the Trading Order setup you may specify the name of the strategy that you wish to be used when the limit or stop order is submitted. Once the trading order setup is saved and assigned a name, you can right-click in a chart of the instrument you wish to trade and choose Add Button. Setup the button with purpose Execute Trading Order and provide the name of the trading order you created earlier. The button can have a custom title and a background color of your choosing. When you click this button in the chart, Investor/RT will prompt you with a message and price selection cursor, asking you to click on the desired stop or limit price. You then click in the chart at the price level you want and the entire trading strategy is sent to the broker. You will then see your limit or stop order working in the chart and working order reference lines will appear in the chart for each of the OCO pairs of working orders associated with the strategy. These fill and working order reference lines are optional; if you do not see these, go to File > Preferences > Trading > General to opt into the display of fill lines and working order reference lines. Alternatively, you can right-click in any chart and choose Trade... to bring the ChartTradingDOM into view, depicting the limit (stop) order working and the OCO orders pairs as described above.
Instead of a mouse click, you may also introduce a limit or stop price at a predefined level, using a V# variable as the limit or stop price, with the V# automatically updated by a custom indicator (using the Set current value into V# variable). Please note that once the order is submitted, the limit or stop prices is fixed once for all. To update the price of an existing resting order, you would have to use a separate Chart button having another Trading order presets, ie one with a "Revise Order" as order action. This does require including, in this "Revise Order" presets, the ID of the corresponding order (that has to be recovered, just right after the order execution, through one of the Live Trading "Order ID" RTL tokens)
Running a semi automated order execution approach using a signal action (or the Trading Rule / Trading System indicators)
Instead of a manual action (triggering a button click or a mouse click), you may automate a trade entry by linking it to a signal marker for example, or any other Investor RT feature having the ability to trigger a "Signal action"). As when using buttons, the first step is to create a 'Trading Order' object, the second step is to select this Trading Order in the "Signal action" definition Window. Signal Action can also be created through the Object Manager window. Finally, this signal action can be attached to a signal market so that the order may be triggered whenever the signal fires. It is recommended, in most cases, to check the signal completed bar only. For more advanced uses, taking into account the current actual trading position in order to trigger specific uses, you may use the "Trading Rule" indicator or the "Trading System" indicator (where signal action can be attached to specific trading rules)

Additional improvements on the Trading Strategy feature (March 2020)
- Leg Quantity values introduced as V# variables
Trading Strategy setups in Investor/RT 14 have been enhanced to support user variables for the OCO leg Quantity values. Both symbol specific V# variables (and possibly C# variables) can be used for leg quantities. When any of OCO leg quantity is variable, the total order quantity at the top left corner of the setup will show as <var> to denote that the trade size quantity varies. It will be determined at the instant the underlying trading order is submitted, reflecting the values of the V# or C# variable(s) used in the setup. For example, you may have a strategy with two legs a 1 qty for leg one and a V#1 qty leg two. When the strategy order is submitted with V#1 set to say 4, the result is a 5 qty trade with leg 2 being a 4 lots. V# variables can set in many ways, e.g. you can title V#1 as "Order Qty" and add a menu button to your trading chart with purpose Set V# Variable. Clicking the button then offers several choices for order quantity to control the strategy.
Let's consider the example in the screenshot below: in this case, the first leg of my OCO strategy has a V#3 qty (I can set the V#3 to 1 through a chart button) and my second leg had a fixed qty (2) - Investor/RT in that case executed a BUY mkt order for (V#3+2) lots = 3 lots and i got the attached OCO legs accordingly with the expected qty. In the Trading strategy setup window, as soon as I/RT detects that one of the OCO leg include a V# based quantity, <var> will automatically show up as total Order Quantity.

- Using T# variables (within the Trading order setup window) as Trading Strategy name
Trading Order setups allow the user to select a specific strategy name, thereby creating a strategy-based trading order. Strategies with variable qty can be used in this way as well. A button in the chart can initiate a trade by executing the named trading order; the quantity of the order is determined based on the variable(s) used in the strategy. Trading Order setups now support user text variables in place of a fixed strategy name. If you have a trading order that specifies strategy T#1, then the text value of T#1 for the symbol in question must contain the name of the strategy to use. By changing the name of the strategy in the T#1 variable, the user can control which strategy is used with the trading order in question. And of course, the strategies so identified can themselves incorporate user variable control for the order leg quantity. Please note that the option to use a T#1-T#32 reference for selecting a Trading Strategy (see below) does appear as soon as at least 2 other ("fixed name") Trading strategies are defined.

Let's consider a simple example combining both new features
Let's assume you have a strategy named X3 (trading a total a 3 lot with some specific OCO rule) and and another trading strategy named Y9 (with 9 lots and another set of OCO rules). Let's assume also that you have setup, for example, a trading order to buy V#1 contracts at market using the Trading Strategy T#1 a,d that you have added a button to the chart that Execute this trading order preset.
If you try to submit this and V#1 is zero and/or T#1 is blank, RT will refuse to send the order and emit an error message. Now you can use RTL or a chart button to set the value of V#1 to 9 or 3, e.g. a menu button with two choices 3 or 9.
T#1 can be set by entering X3 or Y9 as text in a quotepage row manually for the symbol in question. Or you can use this statement with the RTL conditional operator (? a:b) SET(T#1, V#1 = 3 ? "X3" : "Y9")
This simple formula will check the present value of V#1 to determine whether you will trade 3 lots or 9 lots. If 3, then T#1 will be set to "X3", otherwise the "Y9" strategy name will be used.
When RT is preparing to send a trading order that has T# variable strategy, it will first verify that the qty of the trading order is the same as the strategy before allowing it to be sent to the broker. In other words, if you somehow had V#1 set to 9 but T#1 was "X3", I/RT would not send the order, giving you an error message about the qty mismatch. So first, you set V#1 somehow to the qty you wish to trade, then you execute that SET statement to set which strategy name should be used when your trading order for strategy T#1 is sent to the broker. (just create a Signal Action and include as "confirm with" rules this conditional SET statement.Then add a chart button with the purpose "Execute a Signal Action" to update at will the T#1 value )