Variant Algos

These algorithms are designed to handle larger‐sized orders where an investor seeks to minimize market impact on the price of the security. By using a Percentage of Volume algorithm, clients may participate in volume at a user‐defined rate that is either fixed (the default setting) or varies with time, remaining order size or the market price of the security. The algos will slice the overall order into smaller pieces and are designed to submit orders over a time period determined by both average volume and the share of volume to which the user wishes to restrict his order.

These algorithms may help the order to remain undetected in the marketplace which is especially important for orders that constitute a high proportion of the day's trades. Because these algos are volume‐related, the user may expect to tie his order to how active or inactive a security is while keeping a low profile.

To determine the how long the order will remain active, the user must calculate the average daily volume for the security, which may or may not reflect current market volumes and conditions. How long the order remains in place will also depend in part on the user‐defined price.

Average Daily Volume (ADV) – In order to smooth out daily variations in the number of shares traded in any security, it is common to calculate total shares traded for a specific period and divide by the number of days observed. Users can easily add a column displaying average daily volume in TWS using a simple configuration. It is important for users to have a strong sense of typical daily volume in order to understand other inputs for these variant algos. Click here for more information on adding this to a TWS tool. IB software automatically calculates 90‐day average volume.

Based upon current daily volume TWS will project expected intraday volumes and submit orders accordingly. Users must enter a target percentage in addition to desired size, which effectively determines whether the submitted order will execute over the course of the day or will last only for several hours. Based upon these conditions, orders may not necessarily fill within the same day.

An investor facing specific volume characteristics for a stock he wishes to invest in may wish to better understand an appropriate participation rate that suits the number of shares he wants to buy given the known average volumes traded.

Once the user has a good understanding of the typical trading volume a stock faces, he can find an appropriate participation rate based upon the number of shares he wants to transact.

Let's assume that a stock has an ADV of 6.5 million shares during the 6.5‐hour trading day. Each hour, one million shares might trade (on average). The investor wants to understand what his participation rate should be since this combination of factors will determine whether the purchase of a required amount of shares will fill quickly, within a few hours, over the course of the day or indeed whether it will fully execute during the current session.




Time Variant Percentage of Volume Strategy - This algo allows you to participate in volume at a user-defined rate that varies with time. Define the target percent rate at the start time and at the end time, and the algo calculates the participation rate over time between the two. This allows the order to be more aggressive initially and less aggressive toward the end, or vice versa.

For example, an investor wants to purchase 10,000 shares in ABC Corp. between 10:00 am and12:00 pm ET. He enters an Initial Target Purchase value of 1% and a Terminal Target Percentage of 4%. (NB – the above assumptions hold – ie.1mm ADV per hour).


Start Rate 1.00% — End Rate 4.00%
Start Time End Time Volume Transacted Start Rate End Rate Avg Rate Qty Traded
10:00 10:15 250,000 1.00% 1.38% 1.19% 2,969
10:15 10:30 250,000 1.38% 1.75% 1.56% 3,906
10:30 10:45 250,000 1.75% 2.13% 1.94% 4,844
10:45 11:00 250,000 2.13% 2.50% 2.31% 5,781
11:00 11:15 250,000 2.50% 2.88% 2.69% 6,719
11:15 11:30 250,000 2.88% 3.25% 3.06% 7,656
11:30 11:45 250,000 3.25% 3.63% 3.44% 8,594
11:45 12:00 250,000 3.63% 4.00% 3.81% 9,531
Total Volume 2,000,000 Possible Fill 50,000
  1. If size of order was 10,000 shares, it would be completed in the first 45 minutes
  2. If size of order was 50,000 shares, it would be completed at noon
  3. If size of order was 100,000 shares, it would only be partially executed (50,000 shares)

NOTE: If the order size is 10,000 shares, the last 3,125 shares are transacted at a rate of 1.94% of market volume.


For the two-hour period 2mm shares were traded, putting the daily volume on track for 6.5mm. In the first 15-minutes of his order the investor might have bought 2,969 shares because the algo, starting at a participation rate of 1.00%, would have been working at a rate of 1.38% at the end of that time period. In this case, the investor would be filled on his 10,000 share order within 45- minutes and the final 3,125 shares were bought at a rate of 1.94%. His order would need to have been for 50,000 shares if the terminal rate of 4% was to be achieved.

Size Variant Percentage of Volume Strategy - This algo allows you to participate in volume at a user-defined rate that varies over time depending on the remaining size of the order. Define the target percent rate at the start time (Initial Participation Rate) and at the end time (Terminal Participation Rate), and the algo calculates the participation rate over time between the two based on the remaining order size. This allows the order to be more aggressive initially and less aggressive toward the end, or vice versa. Let's look at a series of examples to explain how the order may a) achieve its objective roughly in line with the desired life of an order, b) fill quickly without reaching its terminal rate and c) experience a partial fill. Note that all three examples use the above assumptions of 6.5 ADV and on average, trading of approximately one million shares/hour.

Example A - An investor wants to purchase 50,000 shares in ABC Corp. between 10:00 am- 12:00 pm ET. He enters an Initial Target Purchase value of 2% and a Terminal Target Percentage of 5%. In this case, as the order continues to fill, the algo constantly evaluates the remaining balance of the order and using updated volume projections, tailors the value of orders submitted to ensure that it remains active through the desired time period.


Start Rate 2.00% — End Rate 5.00% — Order Size 50,000
Start Time End Time Volume Transacted Start Qty Remaining Start Qty Executed Start Rate Qty Traded
10:00 10:15 250,000 50,000 - 2.00% 5,000
10:15 10:30 250,000 45,000 5,000 2.30% 5,750
10:30 10:45 250,000 39,250 10,750 2.65% 6,613
10:45 11:00 250,000 32,638 17,363 3.04% 7,604
11:00 11:15 250,000 25,033 24,967 3.50% 8,745
11:15 11:30 250,000 16,288 33,712 4.02% 10,057
11:30 11:45 250,000 6,231 43,769 4.63% 6,231
11:45 12:00 250,000 0 50,000 5.00% 0
Total Volume 2,000,000 Possible Fill 50,000
  1. If the order size was 50,000 shares, the rate of 5% would be realized at 12:00

Note how the algorithm takes the starting and ending rates entered by the user and adapts the pace of execution over the life of the order. In the first 15-minute period, the algo is set to purchase 2.0% of volume running at a pace of 250,000 or 5,000 shares. The pace steps up thereafter to 2.30% of volume meaning the algo buys 5,750 shares during the second 15-minute period. The order is completed by 11:45 and just before the terminal rate would have been reached in this case.

Example B - An investor only wants to purchase 10,000 shares in this case. Based upon the 6.5mm ADV experienced by this security and a 2.0% starting rate, the investor would have bought 5,000 shares within the first 15-minute period, at which point the pace of buying would have stepped up to 3.5%. However, it would only take a further 15-minute period to purchase another 5,000 shares, which would complete the order.


Start Rate 2.00% — End Rate 5.00% — Order Size 10,000
Start Time End Time Volume Transacted Start Qty Remaining Start Qty Executed Start Rate Qty Traded
10:00 10:15 250,000 10,000 10.000 2.00% 5,000
10:15 10:30 250,000 5,000 5000 3.50% 5,000
10:30 10:45 250,000 0 10000 5.00% 0
10:45 11:00 250,000 0 10000 5.00% 0
11:00 11:15 250,000 0 10000 5.00% 0
11:15 11:30 250,000 0 10000 5.00% 0
11:30 11:45 250,000 0 10000 5.00% 0
11:45 12:00 250,000 0 10000 5.00% 0
Total Volume 2,000,000 Possible Fill 10,000
  1. If the the order size was 10,000 shares, the rate of 5% would be realized at 10:30

Example C – This investor wants to buy 100,000 shares, which would represent above 1.54% of total ADV. The user enters the start rate of 2.0% and a terminal rate of 5.0% to operate between 10:00 am-12:00 pm ET. During the next two hours, for the life of the order, the algorithm makes purchases of 5,000 and above every fifteen minutes. By 12:00 pm the participation rate has picked-up to 3.32% based upon prevailing volume and the remaining order balance.


Start Rate 2.00% — End Rate 5.00% — Order Size 100,000
Start Time End Time Volume Transacted Start Qty Remaining Start Qty Executed Start Rate Qty Traded
10:00 10:15 250,000 100,000 - 2.00% 5,000
10:15 10:30 250,000 95,000 5,000 2.15% 5,375
10:30 10:45 250,000 89,625 10,375 2.31% 5,778
10:45 11:00 250,000 83,847 16,153 2.48% 6,211
11:00 11:15 250,000 77,635 22,365 2.67% 6,677
11:15 11:30 250,000 70,958 29,042 2.87% 7,178
11:30 11:45 250,000 63,780 36,220 3.09% 7,717
11:45 12:00 250,000 56,063 43,937 3.32% 8,295
Total Volume 2,000,000 Possible Fill 10,000
  1. If the the order size was 10,000 shares, the rate of 5% would be realized at 10:30

However, only 52,232 shares have been bought by the time the order period is complete representing just over half the amount of the full order.

Price Variant Percentage of Volume Strategy - This algo allows you to participate in volume at a user-defined rate that varies over time depending on the market price of the security. This algo allows you to buy more aggressively when the price is low and be more passive as the price increases, and just the opposite for sell orders. The order quantity and volume distribution over the time during which the order is active is determined using the target percent of volume you entered along with continuously updated volume forecasts calculated from TWS market data.

Sell example

Variables:

Target Percentage – 10%

Minimum Target Percentage – 1%

Maximum Target Percentage – 20%

Target Percentage Change Rate – 5%

With ABC Corp. trading at $100.00 per share, an investor wants to sell 6,500 shares in total between 10:00am‐ 12:00pm. However, the investor wants to step up the pace of selling in the event that the share price strengthens. Conversely, he wants to ease off the selling pressure in the event the share price weakens.

Target Percentage 10.00% — Change Rate 5.00% — Min Participation Rate 1.00% — Max Max Participation Rate 20.00%
Start Time End Time Price Percent Change In Price Participation Rate
10:00 10:15 100.00 0.00% 10.00%
10:15 10:30 100.25 0.25% 11.25%
10:30 10:45 101.00 1.00% 15.00%
10:45 11:00 102.00 2.00% 20.00%
11:00 11:15 101.50 1.50% 17.50%
11:15 11:30 100.50 0.50% 12.50%
11:30 11:45 99.50 -0.50% 7.50%
11:45 12:00 99.00 -1.00% 5.00%
  1. As price increases the participation rate increases for a sell order
  2. If price falls the participation rate decreases for a sell order

The investor decides to participate at a pace of exactly 10% of ADV at the outset as shares are trading at $100.00 each.

He also sets the Target Percentage Change Rate to 5%. For every 1% increase (or $1.00 in this case) in the value of ABC Corp. his pace of selling will increase by the amount entered in this field. For a sell order, a 1% increase to $101.00 will step‐up his pace of selling from 10% to 15%. Should the share price advance to $102.00 his participation rate will increase to comprise 20% of ADV.

Users can also add maximum and minimum values for target percentage rates. In this case, for example, a 1% minimum target percentage rate would cause the algo to participate at 1% of ADV in the event the share price falls to $98.00 and below. Likewise a 20% maximum target percentage rate would cause the algo to never comprise more than 20% of ADV at any price above $102.00 during the timeframe input by the user.

Buy example


Variables:

Target Percentage – 15%

Minimum Target Percentage – 6%

Maximum Target Percentage – 20%

Target Percentage Change Rate – 7%

In this example, the investor is a buyer of a large amount of ABC Corp. currently trading at $100.00 per share. He wishes to buy more aggressively if the share price falls, but never wants to form more than 20% of ADV. The user sets the Target Percentage Participation rate at the outset to 15% and sets the Change Rate to 7%. For each 1% change in the share price, the algo will vary the pace of participation by 7%. Although he has set the change rate to 7%, should the share price fall by 1% to $99.00 the algo should accelerate the pace of buying to form 22% of ADV, but the investor has set a ceiling at 20% of volume. Should the share price rise, the algo will ease off its buying pace, such that a 2% jump in the share price ought to see participation slide to 1%. However, be entering a value for the Minimum Target Participation rate ensures that the pace of buying remains at 6% of ADV regardless of the rise in the share price.


Target Percentage 15.00% — Change Rate 7.00% — Min Participation Rate 6.00% — Max Max Participation Rate 20.00%
Start Time End Time Price Percent Change In Price Participation Rate
10:00 10:15 100.00 0.00% 15.00%
10:15 10:30 100.25 0.25% 13.25%
10:30 10:45 101.00 1.00% 8.00%
10:45 11:00 103.00 3.00% 6.00%
11:00 11:15 101.50 6.00% 17.50%
11:15 11:30 100.50 0.50% 11.50%
11:30 11:45 99.50 -0.50% 18.50%
11:45 12:00 99.00 -1.00% 20.00%
  1. As price increases the participation rate decreases for a buy order
  2. If price falls the participation rate increases for a buy order

The table explains that as the price increases by 0.25% during the first 15‐minutes, the participation falls from its Target Percentage value of 15% to 13.25%. For a 1% rise in the share price the participation rate dwindles to 8% having fallen by the value of the Change Rate. Note that by the time the share price has risen by 3% to $103.00 the algo has reduced the purchase rate to the minimum allowed by the order input of 6%. As the order progresses, a decline in the share price of 0.5% causes the participation rate to advance back above the target to 18.5%. By the time the share price declines to $99.00 (‐1%) the algo has accelerated the participation rate to its maximum value of 20% of ADV.