6
$\begingroup$

I am using an API to direct orders based on some proprietary buy/sell signal. I am trying to frame a thought process which outlines the slippage/impact risks versus execution risks given the option to utilize different order and algo types. The intent is to identify a (quasi-)optimal execution method, either by individual security or a blanket approach for the entire portfolio. Implicitly, my ultimate goal is maximizing my portfolio’s logarithmic growth rate, so I am willing to trade off some execution price for slippage risk, and vice versa. I have modeled the expected execution costs, but this only tells me that I should be willing to forego a fill if the trading costs exceed the expected return.

General Information about the strategy:

  • Buys/sells illiquid securities (e.g., small and micro-cap stocks; some OTC)
  • Holding periods tend to be in the months or longer

The API I am using allows for the following basic order types (there is additionally a little bit of customizability for algos):

  • Limit
  • Market / Market on Close / Market on Open
  • max % of volume
  • Relative to NBBO
  • Relative to NBBO + limit
  • VWAP

So far, I have ruled out market and simple limits orders. VWAPs (best efforts) seem sensible, but I am worried about their susceptibility to gaming since this is what probably what liquidity seeking algos expect. Relative orders are interesting, but a similar problem is that I would think anything at the top of the book is subject to game playing. % of volume orders seem highly susceptible to fill risk, especially for illiquid securities.

How should I begin to think about optimal execution given a choice of execution methods? What simplifying assumptions or heuristic frameworks could be useful in identifying quasi-optimal execution strategies? Is it worth investing serious time and energy into investigating algorithmic order types which seek hidden liquidity on illiquid securities?

Note: Given my trading frequency, I am not particularly interested in doing better than the midpoint of the NBBO. I am just trying to figure out how to execute at the highest rate possible without becoming scalper bait. Strict optimality conditions and dynamic stochastic control are not required.

$\endgroup$
  • $\begingroup$ How urgent will your executions be? By this I mean, can you wait all day or even more than one day or will you want to execute within a specific timeframe, i.e., the last hour of trading? $\endgroup$ – amdopt Feb 15 '18 at 21:37
  • $\begingroup$ The quicker the fill the better with same day execution being highly preferred. The better the price the better. So I know if I have to compromise because I can't have the best of both. $\endgroup$ – David Addison Feb 15 '18 at 21:41
  • $\begingroup$ Is a TWAP order type available? Also, are you able to assign a limit price to the VWAP or TWAP(If available)? Further, are you able to submit Limit-On-Close orders? I'm just trying to get a feel for the options you have. Also, how large will your orders be relative to avg. daily volume? $\endgroup$ – amdopt Feb 15 '18 at 21:46
  • $\begingroup$ TWAP and LOC are available manually, but haven't been added to the API yet. Basically, anything offered by IB is available, but I am trying not to devote much time to trading. Typically, my orders are small compared to avg daily volume, but have the potential to be much greater. I've been as high as 6.5%. For the more illiquid trades, I have been using REL+.01 orders. $\endgroup$ – David Addison Feb 15 '18 at 22:05
2
$\begingroup$

Please note that my answer is primarily opinion/experience based. If it is not appropriate I will take it down or edit accordingly.

How should I begin to think about optimal execution given a choice of execution methods? What simplifying assumptions or heuristic frameworks could be useful in identifying quasi-optimal execution strategies?

I think optimal execution for you is achieving the same (or close to it) fill as your model. Though without extra details, this is hard to say. For illiquid securities, I have had lots of success over the years executing a high percentage of average daily volume by using a combination of orders. For example, you might start a time slicing algorithm (TWAP) early in the day and just set it to buy 100 shares (or some small arbitrary amount) every X minutes. You could simultaneously have a VWAP algorithm running that has a limit price associated with it. You will find the most liquidity at the closing auction--use it! Also, I wouldn't throw away a traditional limit order just because it is simple. If you can get filled with a limit at your price or better, you should use it. With a limit order, you should also be able to dictate the order size shown to market. In this way, you will not show the world how large of an order size you have. The order may not get filled, but nothing is going to go wrong by leaving a limit on the book.

With orders that are the size you mentioned in your comments above, a split between TWAP, VWAP, and MOC should be more than sufficient. I have executed orders of more than 30% of average daily volume within the last hour of trading in this way and not had any major slippage issues. Orders larger than that I tend to use a similar approach just starting the execution earlier. IB also has a newer algorithm called Adaptive as well that you can set a limit price with as well as the "urgency" of the order. I have used this to execute during the day quite often over the past few months and I really like it.

Is it worth investing serious time and energy into investigating algorithmic order types which seek hidden liquidity on illiquid securities?

I think it is worth investigating. It can't hurt. Leaving an order routed to a dark pool isn't going to cost you anything. With illiquid securities, it may not be all that fulfilling unless the pool you are routing to is the one getting the flow. You will find this out when you start executing. If you have access to several dark pools, you should be able to find a cross somewhere though it may not be worth the trouble unless you have a large order.

Furthermore, using IB, you have access to Jeffries and Credit Suisse algorithms. They are available through the API and if you are seeking hidden liquidity you might take a look into them as well.

Link to IB's algo guide: http://interactivebrokers.github.io/tws-api/algos.html#gsc.tab=0

$\endgroup$
  • $\begingroup$ Thank you for the thorough answer. I had seen the algos labeled JEFFALGO and CSFBALGO. I am intrigued by these, and I will have to investigate further. Notably, people seem like them even though they charge an additional .3 cents per share. This makes me think learning how to do this stuff on my own would be worth my while. There is definitely some food for thought here, so thank you again. $\endgroup$ – David Addison Feb 15 '18 at 22:32
  • $\begingroup$ @DavidAddison my pleasure. Feel free to reach out through email if you like. I have a healthy amount of experience in algorithmic execution as well as using many different prime brokers. Either way, good luck! $\endgroup$ – amdopt Feb 15 '18 at 22:35
  • $\begingroup$ that’s very generous of you. I will definitely keep you in mind as I begin to dig into this $\endgroup$ – David Addison Feb 15 '18 at 23:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.