While spreads can be set up and traded directly on trading applications, it’s best to create a spread QFormula. Complex spreads are more easily entered on trading applications by typing a QNumber than by typing a complicated formula.
1. Click the Formula button to open Formula Builder.
2. Click the QFormulas tab.
3. Click the New button.
4. Type a name for the QFormula.
5. Click OK. The new QFormula is displayed in the list, and the next QNumber in the series is automatically assigned to it. Click the arrow to change the QNumber, or type a new number.
6. Enter your spread strategy in the Formula Editor. As soon as you have typed SPREAD( the system displays the spread formula and an example to assist you. Replace the @ in SPREAD(@) with your strategy.
Alternatively, you can enter the common notation (e.g. CLE-ET), and then apply the Spread function.
7. If you prefer to select calculation settings using a parameters window instead of typing them into the formula editor, click the Setup button. This button is active when the spread formula is selected.
The Setup Synthetic Spread Calculation Parameters window opens. Make your selections, and then close the window.
This is also the way to apply net change and yield to the spread formula.
8. Click the Trading Execution Patterns button to set trading parameters. Choose which legs to work, the order type, volume ratio, stacked orders parameters, and incomplete order behavior.
9. Close Formula Builder. Now, you’re able to enter the QFormula number directly on the DOMTrader and Order Ticket.
It is displayed as a number, name, or formula depending on your display format setting.
In the Formula Editor, hover the mouse over a part of the strategy to display a tooltip. That tooltip identifies the element of the formula you’re pointing to.
Net change and yield are calculated as if all of the legs are wrapped in Yield operator, so that these calculations are identical:
YIELD(SPREAD(leg1-leg2+5))
SPREAD(YIELD(leg1)-YIELD(leg2)+5)
And these calculations are identical:
NC(SPREAD(leg1-leg2+5))
SPREAD(NC(leg1)-NC(leg2)+5)
Offsets are calculated as is.
You can apply net change and yield to a spread using the Setup Synthetic Spread Calculation Parameters window.
Net Change
You can trade spreads based on net change, the difference between today’s current price and the settlement price. Order duration is limited to DAY, but all order types are supported.
Net change formulas are identified on the tabs.
Yield
You can trade spreads based on yield for cash symbols. You can trade any order type. Outrights can be traded with any duration. For spreads, only day orders are accepted.
Yield formulas are identified on the tabs. Instead of price in the price column, the difference in yield is displayed. Yields for the legs are displayed in the right-most column of the DOM ladder. You can change the location of the column in Trading Preferences.
Setting Synthetic Spread Calculation Parameters (Setup Button)
Click the Setup button to open the calculation parameters window. If the Setup button is not active, make sure the spread formula is selected in the Formula Editor.
Changes entered here are reflected in the spread formula in the editor. For example, SPREAD(CLEH2-CLEJ2,L1) becomes SPREAD(CLEH2-CLEJ2,CUR) if you change the calculation mode to currency.
By selecting Yes for Yield, SPREAD(1.6*TYA-USA, , , 5:3) becomes SPREAD(1.6*YIELD(TYA)-YIELD(USA), , , 5:3).
Field |
Description |
Calc Mode |
Identifies how you would like the spread calculated, by legs or currency. Auto = Displays difference in price between symbols. L1, L2, L3, etc. = Displays price based on tick value of leg selected. CUR = Displays the price based on the full currency values of the legs. Consider E-Mini S&P versus E-Mini NASDAQ 100 using a one contract leg-to-leg ratio. The dollar value of the E-Mini S&P is the price multiplied by $50. If the price of the futures contract is 1097.25, then the value of the contract is $54,862.50 (1097.25 * $50). The dollar value of the E-Mini NASDAQ 100 is the price multiplied by $20. If the price is of the futures contract is 1798.00, then the value of the contract is $18.902.50 (1798.00 * $20). If you calculate EP-ENQ with CUR selected, the price displayed is $18,902.50 ($54,862.50-$35,960.00). In the case of a spread where two legs trade in different currencies, adjust the expression to the appropriate currency using a conversion ratio, such as today’s exchange rate, as currency is calculated as a raw number and not as a monetary value in a base currency. For example, consider the DAX Index that trades in Euros versus the E-Mini S&P that trades in dollars. To adjust for Euro: SPREAD(DD-EP/1.5,CUR). For USD: SPREAD(1.5*DD-EP,CUR). Price for spreads that include cash instruments inherit their formatting from the leg that is used for tick size calculation. For example, SPREAD(BUS02-TUA) is formatted in the same way as BUS02. If the calculation mode is changed to L2, then spread price is formatted in the same way as TUA. If you define the tick size, then the price is formatted as a rounded decimal. Applies to Order Ticket and DOMTrader only. Default = Auto. |
Rollover |
If turned on, when one leg expires, all legs roll over to the same month. Allowed values: OFF = Same month rollover is turned off. ON = Same month rollover is turned on. Default = OFF. |
Tick Size |
Use Auto or enter a tick size value. Auto = Uses L1 tick size for spread tick size. 5 = Uses 5 as the tick increment. 10 = Uses 10 as the tick increment. Default = Auto. |
Trade Strategy |
Opens the trading parameters window. |
BAT filter |
You can have the system select bid/ask or trades or you can make the selections yourself for each leg. Spread Auto = Tells the system to use bid/ask data if available, otherwise trade data. Default. By Legs = Indicates that you will make the data selection for each leg. Leg Bid/Ask = If leg side is buy, leg ask price is used for spread ask price calculation and leg bid price is used for spread bid price calculation. If leg side is sell, leg ask price is used for spread bid price calculation and leg bid price is used for spread ask price calculation. Default. Bid/Bid = Leg ask price is used for spread ask price calculation and leg bid price is used for spread bid price calculation. Trade = Trades of the given leg are used for both synthetic spread ask and bid prices calculation. |
NC |
Select Yes to quote by net change instead of price. |
Yield |
Select Yes to quote by yield instead of price. |