TT CORE SDK

TT Implementation of Prices and Ticking

TT Implementation of Prices and Ticking

How TT Represents Ticks

A price in ticks is always an integer value. With this in mind, consider the following exchange contract specification for FGBL.

Product Eurex Euro-Bund (FGBL) Eurex Euro-Bund (FGBL)
Product type Future Calendar Spread
Point value €1000 €1000
Tick size 1/100 of a point 1/100 of a point
Tick value €10 €10

Notice that the Tick Size is the same for both the futures and the calendar spreads. Now assume that you bought one FGBL-Sep20xDec20 spread at 1/100 and received the following fills.

Contract Buy/Sell Qty Price (Points-Fractional)
FGBL-Sep20 Buy 1 114 15/100
FGBL-Dec20 Sell 1 114 14/100

Converting these prices to ticks format, you get:

  • Price (ticks) of FGBL-Sep20 = (114 15/100) / (1/100) = 11415
  • Price (ticks) of FGBL-Dec20 = (114 14/100) / (1/100) = 11411

If you then sold 1 FGBL-Sep20 future at 114 17/100, your P&L for the FGBL-Sep20 contract would be:

  • P&L (contract currency) = 1 x (11417 - 11415) x €10 = €20

Now consider the following exchange contract specifications for the CBOT 30-year US Treasury Bond futures and calendar spreads.

Product CBOT 30-Year US Treasury Bonds (ZB) CBOT 30-Year US Treasury Bonds (ZB)
Product type Future Calendar Spread
Point value $1000 $1000
Tick size 1/32 of a point 1/128 of a point
Tick value $31.25 $7.8125

Notice that the Tick Size and Tick Value of the calendar spread is defined as a factor of four smaller than those of the futures contract. Now assume that you bought one ZB-Sep20xDec20 spread at 1/128 and received the following fills:

Contract Buy/Sell Qty Price (Points-Fractional)
ZB-Sep20 Buy 1 114 15/128
ZB-Dec20 Sell 1 114 14/128

Converting these prices to ticks format, you get:

  • Price (Ticks) of ZB-Sep20 = (114 15/128) / (1/32) = 3651.75
  • Price (Ticks) of ZB-Dec20 = (114 14/128) / (1/32) = 3651.50

Notice that you can receive futures fill prices that are not evenly divisible by the Tick Size when corresponding spreads trade in a smaller Tick Size. Because ticks are integers, these values would be incorrectly rounded to the nearest whole number. All calculations involving these fill prices would then be wrong, including P&L.

As a result, TT calculates the least common denominator of the Tick Sizes of all contracts of the same product and defines this as the TT Base Tick Size. TT also defines a TT Base Tick Size Multiplier for each contract to calculate the actual Tick Size. It determines the Tick Size for a contract using the following formula:

  • Tick Size = TT Base Tick Size x TT Base Tick Size Multiplier

Because FGBL futures and calendar spreads have the same Tick Size, TT sets the TT Base Tick Size of both to 1/100 and sets the TT Base Tick Size Multiplier of both to 1, as shown:

Product Eurex Euro-Bund (FGBL) Eurex Euro-Bund (FGBL)
Product Type Future Calendar Spread
Point Value €1000 €1000
Tick Size 1/100 of a point 1/100 of a point
Tick Value €1000 €1000
TT Base Tick Size 1/100 of a point 1/100 of a point
TT Base Tick Size Multiplier 1 1

However, because ZB futures and calendar spreads have different Tick Sizes, TT sets the TT Base Tick Size of both to 1/128 (128 is the least common denominator). TT also sets the TT Base Tick Size Multiplier of the futures to 4 (since 1/128 x 4 = 1/32) and the TT Base Tick Size Multiplier of the spreads to 1 (since 1/128 x 1 = 1/128).

Product CBOT 30-Year US Treasury Bonds (ZB) CBOT 30-Year US Treasury Bonds (ZB)
Product Type Future Calendar Spread
Point Value $1000 $1000
Tick Size 1/32 of a point 1/128 of a point
Tick Value $31.25 $7.8125
TT Base Tick Size 1/128 of a point 1/128 of a point
TT Base Tick Size Multiplier 4 1

TT applications use the TT Base Tick Size when converting a price to ticks. For the FGBL fills listed above, the calculations yield the same results, because the Tick Size and the TT Base Tick Size are the same. For the ZB fills listed above, however, the calculations yield the following:

  • Price (Ticks) of ZB-Sep20 = (114 15/128) / (1/128) = 14607
  • Price (Ticks) of ZB-Dec20 = (114 14/128) / (1/128) = 14606

Notice that the result represents the number of ticks of size 1/128. The TT Tick Value corresponding to the TT Tick Size is calculated as follows:

  • TT Tick Value = Point Value x TT Tick Size = $1000 x (1/128) = $7.8125

If you then sold 1 ZB-Sep20 future at 114 5/32 (dividing by 1/128 gives 14,612 ticks), your P&L for the ZB-Sep20 contract would be:

  • P&L (contract currency) = 1 x (14,612 - 14,607) x $7.8125 = $39.0625

TT Display Format

TT developed a variety of algorithms to convert prices in points to the TT Display format, based on how traders prefer to see prices for particular products in TT. For example, the algorithm associated with Eurex FGBL futures simply converts the price in points to a string without any additional processing. For example, if the price of an FGBL contract in Points is 100.02, TT displays “100.02”.

The algorithm associated with a CBOT ZB spread converts the price in points to a string as shown in the following table. Recall that the Tick Size of CBOT ZB spreads is 1/128, sometimes known in the industry as “1/4 of 1/32”.

Full Price Points (Fractional) Points (Decimal) Ticks TT Display
$2,062.50 2 2/128 (2 0.5/32) 2.0156250 258 2005
$2,031.25 2 1/128 (2 0.25/32) 2.0078125 257 2002
$2,000.00 2 0/128 (2 0.0/32) 2.0000000 256 2000
$1,968.75 1 127/128 (1 31.75/32) 1.9921875 255 1317
$1,937.50 1 126/128 (1 31.5/32) 1.9843750 254 1315