Every trading system requires at least two principal components, whether explicitly separated or not: an alpha-seeking, signal generation component that is concerned about the direction (long or short) of a trade, and an execution component that actually interacts with the market to fulfill those signals by submitting actual orders.
We can therefore decompose every trade into two components:
True PnL of trade = Gross PnL from trade + Cost of executing trade
The gross profit from a trade is the theoretical profit of a trade in a perfect, frictionless world, and is entirely determined by the efficacy (accuracy and precision) of the signal-generating component; whereas the cost of executing a trade is the real-world transaction costs incurred from interacting with the market, determined by the efficacy of the execution component.
The purpose of this article is to discuss the components of these transaction costs, and how we can determine them so that we can ultimately minimize these transaction costs.
Transaction costs themselves can be broken down into 2 categories; fixed transaction costs as well as variable transaction costs.
Fixed transaction costs include costs that are known in advance, prior to even executing the trade, and are static; and examples of fixed transaction costs include fixed commissions, platform fees, market access fees, etc. Typically, the only way to reduce fixed costs is to engage in negotiation with the broker. Game theoretical negotiation with brokers is beyond the scope of this article as well as the capabilities of the execution model and therefore relegated to another discussion.
Variable transaction costs are not known in advance, and can only be estimated ex-ante and confirmed ex-post. Examples of variable transaction costs include market impact of the trade, the spread cost of the trade, and the timing cost of the trade. Variable transaction costs are a function of market conditions and how the execution model interacts with said market conditions and is, therefore, the prime focus of this article.
Almost every idea of transaction costs is either directly influenced by liquidity or can be explained using some dimension of liquidity. Therefore, before any expositions on variable transaction costs, we must first discuss liquidity.
Liquidity has 4 main dimensions, each representing one aspect of liquidity. The 4 main dimensions of liquidity are the breadth of liquidity, the depth of liquidity, the urgency of demanding liquidity, and the resiliency of liquidity.
The breadth dimension of liquidity can be thought of as the bid-ask spread, or the width of the market. For small trades with small quantities, the breadth dimension represents the average trading costs (since market impact will be minimal), and liquidity at that size is immediately available.
The depth dimension of liquidity can be thought of as the quantity of trades available at a given price.
Urgency of liquidity can be thought of as the time taken searching for a counter-party to the trades we want to take.
Resiliency of liquidity can be thought of as how quickly the market recovers from a shock. A resilient market will suffer fewer price discrepancies from trading.
All dimensions of liquidity are closely related — deeper markets are generally tighter, and therefore they are more likely to be resilient and have quantities available for trading immediacy. Putting all these dimensions of liquidity together, liquidity is best summarised by the relative ease of trading large sizes (depth) at low cost (breadth) quickly (urgency) and with minimal impact to the market (resiliency).
We are now able to move on to the first component of variable transaction costs, spread costs. Of the 3 variable costs mentioned in this article, spread costs are the most “visible”. The spread costs represent the difference between the best bid and best ask prices at any given time.
Broadly speaking, it represents the cost of immediately trading at or below the size of the best ask and best bids. This can be illustrated by considering a thought experiment where a trader buys at the best ask and immediately sells at the best bid. The round trip trade which leaves him with no net positions will cost him exactly the spread, assuming prices did not move.
The spread compensates those who provide liquidity. It can be thought of as the risk premia of giving other market participants an option (price and quantity) to trade against. The wider the spread, the more premium is being demanded for the adverse-selection risks.
The simplest way of lowering spread size is to trade more passively. Sending a market order will incur the maximum spread costs, whereas providing liquidity (either joining the best quote or making the market) will net you negative spread costs (now you are being compensated for the risk premia of offering other market participants an option to trade against).
Market impact is represented by the price change caused by a specific trade. Market impact can be estimated by taking the difference between the execution price and the best quote at the time of execution. Note that this is actually the order’s total trading costs; as we are unable to isolate the costs from market impact without having some estimation model. More specifically, for market impact to actually be the difference between the execution price and the best quote, the market needs to be a static market with no natural price appreciation and without the influence of other orders.
Market impact can be further broken down into temporary and permanent impacts. The temporary impact reflects the costs of demanding liquidity urgently, while the permanent impact corresponds to the informational leakage of our order to the market. Since the market is a giant statistical calculator, our orders represent some information to be accounted for in the price of the security; and the permanent impact represents this “accountable information”.
Market impact is a function of liquidity (depth and resiliency) for some given urgency and size. Larger orders incur higher market impact costs compared to smaller ones for the same liquidity. Demanding liquidity immediately will incur higher market impact costs compared to only taking the volume available at the best quote for a given size.
To reduce market impact costs, it requires us to control how the execution model interacts with the market to demand liquidity.
Timing costs are the most elusive type of costs among the three to measure as well as reduce. Broadly speaking, timing costs represent the costs of executing the trade when we did. These costs can be imagined as the opportunity costs of not executing the trade at a better price when we had the chance (regretting not having entered earlier), and the adverse selection cost of entering too early and having price move against us (regretting not having waited to enter later).
Timing costs can be estimated by taking the difference between the price at the time the signal-generating model produces a signal (decision price) and the actual executed price.
To reduce timing costs, it requires us to predict market conditions ahead of execution; as prediction is required for us to minimize ex-post regret (if all we had were current information, then we are unable to determine how much we will regret trading at any point in time until we have already executed the trade).
To optimize, our performance (or cost function) must be measurable. In this case; our primary aim is to reduce the cost of our trades given some signals produced by our signal-generating models. Therefore, the appropriate benchmark to use as a gauge for how well our execution model is doing would be the implementation shortfall.
Implementation shortfall is defined as the return difference between an idealized paper portfolio where all our trades instantaneously happened in a frictionless world and our actual portfolio.
However, to consider a frictionless world is not enough, as it would account only for spread costs and market impact costs; but not contain enough information to determine timing costs. Therefore, to capture that information, we should use the returns of an idealized paper portfolio, where all our trades instantaneously happened at the decision price (of the signal-generating model).
Once we have our benchmark, we can now discuss optimal trading strategies to reduce our cost function (transaction costs).
To optimally execute our orders, that is, to minimize the transaction cost, we should seek to reduce the 3 dimensions of transaction costs (spread, impact, and timing).
Given that market conditions as well as the dimensions of liquidity change through time, we would need to predict these variables and then formulate a plan for interaction with the market using our predictions.
When spread costs are high, immediacy is expensive, as market orders (demanding urgent liquidity) will be costly, whereas limit orders will be much more attractive (providing liquidity). Determining spread costs will thus allow us to utilize optimal strategies for the current market conditions.
With the knowledge that spread costs represent the risk premia that liquidity providers make for providing other market participants the option to trade, we can also estimate the spread costs by estimating how much risk the liquidity providers are taking.
The most relevant risks to liquidity providers are adverse selection to informed traders as well as volatility. Liquidity providers will price these risks into their spread, thus motivating us to quantify these risks to better predict spread costs.
The cost of liquidity providers losing to more informed traders is reflected in the spread to recoup those losses from uninformed traders. Thus, we are motivated to determine when markets are asymmetrically informed; as that would encourage liquidity providers to quote wider spreads.
Current market conditions, such as market activity, also affects spread costs since they also affect asymmetric informational risks. Active markets typically have a higher number of uninformed traders, creating noise and diluting information in the order flow. With a high number of uninformed traders competing for the limit orders, the risks for providing that liquidity option also decrease, as more uninformed traders are competing for the same liquidity. These reduce the average informational asymmetry against the liquidity providers. Further, active markets allow for frequent trading, which means liquidity providers can amortize costs over a larger number of trades, and quickly remove inventory risks by quickly rebalancing their inventory to uninformed traders.
Volatility affects the spread costs because high volatility increases the value of the liquidity option providers as well as represents the difficulty of adjusting limit orders and removing diversifiable inventory risks. Further, high volatility makes predicting the true value of a security much more difficult and is therefore prone to causing more risk-averse behavior. Volatility is also a good surrogate for asymmetric information. Volatility thus prompts liquidity providers to widen their spread, and once again motivates us to quantify and predict volatility to better predict spread costs.
Predicting spread costs is therefore a function of predicting informational asymmetry, volatility, and activeness of the markets.
Market impact costs can be broken down into 2 main costs; the costs due to demanding liquidity and the costs due to information leakage. The cost due to demanding liquidity can be further broken down to the cost of causing an imbalance in the demand-supply imbalance and the cost due to demanding urgency for a given size. Likewise, the cost due to information leakage can be further broken down to the cost of changing market participants’ expectations about the market’s trading intentions and the cost of changing the market participant’s expectations of the security’s fair value.
Under the assumptions that markets continuously adjust prices to achieve a state of equilibrium between demand and supply; then any additional order will thus cause an imbalance in the equilibrium. Market participants sending orders are demanding counterparties to take the opposite end of their trades, and therefore will require a premium to attract the counterparty.
The market price of a security is defined as the midpoint price of the bid-ask spread, and thus the cost of shares executed on the best quotes is equal to one-half of the spread. For any given size, every subsequent price level in the order book above the best quote represents the incremental cost of urgency. The rationale for thinking as such is because the market participant chooses immediate execution (demanding liquidity urgently) over being patient and providing liquidity or even just submitting multiple marketable limit orders at the best quotes.
In an ideal world, market participants are able to determine which orders are submitted by informed traders and incorporate information from these informed orders to determine the fair price of the security. In reality, market participants are unable to discern the “informedness” of an order; and therefore, every order is perceived to have at least some degree of “informedness”.
Whenever an order is submitted to the market, participants utilize the direction, size, and urgency of the order to change their expectations of the fair value of the security. These expectations are naturally adjusted to be in the same direction of the order, thus causing subsequent orders to incur a premium due to this information leakage.
Changes in expectations of fair value represent information leakage that results in a permanent impact on prices. Price changes due to these changes do not revert back after the “shock”.
On the other hand, there exist price changes due to the changes in expectations about net trading intentions. Every order then comes in informs other market participants about the size and urgency of other market participants, and thus, when expectations about the net trading changes; such as when the market expects a large buyer to continue buying up, it causes willing sellers to withhold orders they may have been willing to supply in anticipation of rising prices as well as originally indifferent buyers to accumulate positions so that they can provide liquidity to the large buyer later on.
These price changes due to changes in expectations about net trading intentions are ephemeral and will revert from the “shock” eventually since they do not represent changes in the market’s expectations about the fair value of the security.
Predicting market impacts costs is therefore a function of predicting how orders cause supply-demand imbalances, their overall urgency as well as how they will change the expectations of the net trading intentions in the market as well as the fair value of a security.
The timing costs of trade are represented by the mistakes we make in our prediction models (model risks); the uncertainties we have about prices, such as their trends and volatility, as well as the uncertainties we have about market activity.
As part of our efforts to reduce transaction costs, we will be attempting to predict multiple facets of the market, using an array of prediction models. As we are making timing decisions off the predictions of our models, it should be intuitive to imagine that there will be some timing errors due to the uncertainties surrounding our predictions.
To optimize our order submission strategies, we will also need to account for persistent price trends; as trends against or in our favor will affect the optimal timing. A persistent price trend against us will prompt us to act hastily before our costs increase further; while a persistent price trend in our favor will prompt us to be passive and wait out for further price improvements.
Price volatility as a whole is an important aspect to consider, as mentioned above, volatility encourages liquidity providers to widen their spread since it makes the liquidity option premium greater. In the case of timing risks, volatility also increases uncertainties regarding price, and thus increases the likelihood that prices will move away and so increases our transaction costs.
Lastly, market impact costs are estimated based on trading activity, and we will often make decisions to minimize market impact costs based on activity estimates. When actual activity differs greatly from the predicted activity, our market impact estimates will be wrong, thereby affecting the optimality of our order submission timings. For instance, if there is much greater market activity than predicted, we will end up being more passive than we actually have to be, and this unwarranted passiveness will expose us to timing costs.
By understanding the components of transaction costs and the factors that affect these components, we can put together models that predict the transaction costs that we are likely to face when executing an order. Based on the predictions of these transaction costs and how they are likely to change in the future, it will allow us to make decisions to achieve optimal execution.
For example, by being able to predict the amount of information asymmetry in the market, we are able to determine if spread costs are likely to widen and if they are; we are more motivated to be aggressive and fulfill our orders hastily.
Naturally, the factors that affect these costs are easy to discuss and quite intuitive, but finding appropriate surrogates to quantify their presence is a non-trivial exercise, and the goodness and accuracy of their surrogates will affect the goodness of our transaction cost models.
Despite the complexity of predicting transaction costs, the actual decisions an execution model can make essentially boils down to 3 dimensions:
- Quantity of trades (size aggression)
- Time to fulfill trades (time aggression)
- Price of trades (price aggression)
Deciding and controlling these 3 dimensions will then affect the transaction costs we incur. Put simply, the entirety of our prediction efforts in deciding how much transaction costs we will occur is so that we can decide on these 3 dimensions of our execution strategy.
For example, if our transaction costs models determine that we are likely to incur larger transaction costs in the far future than the near future, we would be highly motivated to utilize an execution strategy that is highly time and price-aggressive to get our orders fulfilled as soon as possible.
To introduce some separability of concerns, we can distinguish between the overarching strategy of an execution model and the actual act of placing orders to get them fulfilled. While the strategy is concerned about how aggressive we generally want to be for this security in this current market condition, the actual fulfillment of orders shall be termed “execution tactics”. These execution tactics will actually be the algorithms that interface with the market to get orders fulfilled, fulfilling the overarching strategy’s concerns.
Execution tactics represent the micro-level choices that must be made to actually fulfil our orders. They include the timing and pricing decisions for order placements and management. To reiterate, while we were previously concerned about predicting transaction costs to figure out a strategy to best interact with the markets, execution tactics represent the actual interaction.
Execution tactics, and how they are used, will eventually lead to the actual orders being fulfilled and thus determine the final transaction costs. The goodness of the execution model will be dependent on how execution tactics are utilized according to some execution strategy, which in turn is decided by the on-going market conditions and predicted transaction costs.
There is no one execution tactic that will allow us to minimize costs everytime, and it is far more likely that we will utilize multiple execution tactics simultaneously, which will often work together to achieve our objective of minimising costs according to some overall strategy. These execution tactics are often broadly good at doing reducing at least one aspect of trading costs.
We are free to experiment with our own execution tactics, but popular execution tactics that are simple in idea and yet powerful include: slicing, layering, and catching.
Slicing is an execution tactic that takes a large order and splits it into many smaller child orders.
By breaking down a large order into smaller quantities, we can reduce its market impact costs as we have less urgency costs and less signalling risk, thus reducing costs due to changes in expectations of other market participants.
There are some tradeoffs when deciding slicing parameters. The greater the number of slices, the smaller the average order will be, and thus the lower the market impact costs and information leakage costs. However, the greater the number of slices, the longer it will take for us to fulfil our orders, and the lower our overall crossing chances are, as opposed to placing one large order on the order book; and these exposes us to timing risks.
Layering is an execution tactic that allows us to maintain a range of standing limit orders.
This takes advantage of favourable price movements in our favor. Both spread and market impact costs are also minimised, since we have no urgency, and are instead offering liquidity to other market participants. In most exchanges, where there exists a price/time priority; layering preserves our priority while giving us scope to edit our order sizes as well.
Layering however, comes with considerable signalling risks and we will thus incur information leakage costs, since we are essentially signalling to the market our net positions. In exchange, we have the potential to benefit from a great price improvement if prices trend in our favor.
Catching is a simple execution tactic that simply sends our entire order to be fulfilled when prices look to be trending away. It prevents us from incurring further timing costs, at the expense of incurring relatively high market impact and spread costs.
The way we intend to use the execution tactics listed above is extremely varied, and current description is too vague for actual implementation. However, while I am careful about being too specific about how the exact execution tactics are utilized, the general idea is that they should be used in a way that is congruent with the overall execution strategy, which is based on observed market conditions and the transaction cost models.
Given some objective measure of reducing the transaction costs of each trade, we should begin our endeavor by understanding what are the components of transaction costs; understanding how to measure their costs and understand how they come about. Next, by understanding the factors that lead to these transaction costs, we are able to build models that predict them. Finally, with our predictions of future transaction costs and the current market conditions, we decide on a strategy and utilize execution tactics in line with the overall strategy to interact with the market.
While I have aspired to make this story as error-free as possible — if one spots any leaps in logic or errors, please contact me @ oscarleemedium@gmail.com.
- 7
- access
- Account
- active
- Additional
- ADvantage
- algorithms
- All
- among
- article
- Benchmark
- BEST
- broker
- build
- Buying
- Cause
- caused
- chances
- change
- child
- component
- continue
- Costs
- Counterparty
- Creating
- Current
- CZ
- Demand
- DID
- Dimension
- Early
- estimates
- EU
- EV
- exchange
- Exchanges
- Exercise
- expects
- experiment
- Face
- fair
- Fees
- Figure
- Finally
- First
- flow
- Focus
- Free
- Fulfill
- function
- future
- game
- General
- Giving
- good
- great
- High
- How
- How To
- HTTPS
- ia
- idea
- Impact
- Increase
- influence
- information
- interaction
- inventory
- IP
- IT
- knowledge
- large
- lead
- Level
- Line
- Liquidity
- liquidity providers
- Long
- Making
- management
- Market
- Markets
- measure
- medium
- model
- move
- Near
- net
- Noise
- offering
- Opportunity
- Option
- order
- orders
- Other
- Paper
- performance
- platform
- Popular
- portfolio
- prediction
- Predictions
- Premium
- price
- pricing
- Produced
- Profit
- range
- Reality
- reduce
- Results
- returns
- Risk
- security
- Sellers
- Shares
- Short
- shortfall
- Simple
- Size
- small
- So
- spread
- State
- Strategy
- submitted
- supply
- system
- tactics
- temporary
- Thinking
- time
- trade
- trader
- Traders
- trades
- Trading
- Trading Strategies
- transaction
- trending
- Trends
- us
- value
- Volatility
- volume
- wait
- WHO
- Work
- world