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:00am and 12:00pm 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 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 |
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:00am and 12:00pm 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 Time | End Time | Volume Transacted | Start Qty Remaining | Start Qty Executed | Start Rate | Qty Traded |
---|---|---|---|---|---|---|
10:00 | 10:15 | 250,000 | 50,000 | 0 | 2.00% | 5,394 |
10:15 | 10:30 | 250,000 | 44,606 | 5,394 | 2.32% | 6,268 |
10:30 | 10:45 | 250,000 | 38,338 | 11,662 | 2.70% | 7,282 |
10:45 | 11:00 | 250,000 | 31,056 | 18,944 | 3.14% | 8460 |
11:00 | 11:15 | 250,000 | 22,596 | 27,404 | 3.64% | 9,829 |
11:15 | 11:30 | 250,000 | 12,767 | 37,233 | 4.23% | 11,420 |
11:30 | 11:45 | 250,000 | 1,347 | 48,653 | 4.92% | 1347 |
11:45 | 12:00 | 250,000 | 0 | 50,000 | 5.00% | 0 |
Total Volume | 2,000,000 | Possible Fill | 50,000 |
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 Time | End Time | Volume Transacted | Start Qty Remaining | Start Qty Executed | Start Rate | Qty Traded |
---|---|---|---|---|---|---|
10:00 | 10:15 | 250,000 | 10,000 | 0 | 2.00% | 7,447 |
10:15 | 10:30 | 250,000 | 2553 | 7447 | 4.23% | 2,553 |
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 |
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:00am and 12:00pm 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:00pm the participation rate has picked-up to 3.32% based upon prevailing volume and the remaining order balance.
Start Time | End Time | Volume Transacted | Start Qty Remaining | Start Qty Executed | Start Rate | Qty Traded |
---|---|---|---|---|---|---|
10:00 | 10:15 | 250,000 | 100,000 | 0 | 2.00% | 5,192 |
10:15 | 10:30 | 250,000 | 94,808 | 5,192 | 2.16% | 5,597 |
10:30 | 10:45 | 250,000 | 89,211 | 10,789 | 2.32% | 6,033 |
10:45 | 11:00 | 250,000 | 83,178 | 16,822 | 2.50% | 6,502 |
11:00 | 11:15 | 250,000 | 76,676 | 23,324 | 2.70% | 7,009 |
11:15 | 11:30 | 250,000 | 69,667 | 30,333 | 2.91% | 7,554 |
11:30 | 11:45 | 250,000 | 62,113 | 37,887 | 3.14% | 8,144 |
11:45 | 12:00 | 250,000 | 53,969 | 46,031 | 3.38% | 8,777 |
Total Volume | 2,000,000 | Possible Fill | 54,808 |
However, only 54,808 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.
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 and 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.
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% |
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.
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.
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 | 1.50% | 6.00% |
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% |
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.