Skip to content
All library documents

Estimating Equity Trading Costs with a Square-Root Impact Model

Article Quant Q&A · Author: mHelpMe

Summary

The document addresses forecasting stock trading costs from order and market data. It recommends separating fees, bid-ask spread costs, and market impact, then estimating spread and impact with a model combining the spread with volatility scaled by the square root of order size relative to average daily volume. The model parameters can be fitted to a database of orders by minimizing squared prediction errors; a generalized size exponent can be tested if the square-root form is uncertain.

The response also flags that the question’s implemented-shortfall definition is incorrect for this purpose, and gives a direction-adjusted measure based on decision price versus open. It suggests using representative statistics for spread, volatility, and volume when normalizing across instruments. The proposed relationship is a modeling starting point, not a guarantee of fit: results depend on the data, order definition, and calibration, while the original end-of-day inputs may not capture all execution details.

Key ideas

  • Trading cost analysis separates fees, bid-ask spread, and market impact.
  • A proposed spread and impact model combines spread with volatility scaled by the square root of order size relative to average daily volume.
  • Fit model parameters to order data by minimizing squared prediction errors.
  • A size exponent can be estimated as an alternative when the square-root relationship is uncertain.
  • Implemented shortfall should account for trade direction and compare execution against the decision price.

Tags

Full text
# forecasting trading costs with end of day data


# forecasting trading costs with end of day data












I am trying to create a model that forecasts trading costs (using end of day data, so no intra day data). My trading cost (also called Implemented Shortfall (IS) is defined as such for a single stock,

```
IS = (vwap - open) / open
```

for the market as a whole,

```
IS = abs(IS_single_stock - IS_market_median)
```

Variables that I am looking at include a companies market cap, the daily spread, vwap, volume & a liquidity measure called liq_m.

Doing a simple linear regression of each variable against IS produced very low r-squares, below 0.1. Combining the variables did very little to to improve the results. The residual plots appear to have some pattern, the one below is similar for most of the variables, this is mcap vs IS residuals.

The normal probability plot also highlights that the residuals are not linear & have a left skew.

In the literal I have read on implemented shortfall all the models are non linear models so this is not unexpected.

I am unsure though of how to proceed next i.e. how to select an appropriate non linear model for testing? The end goal is to have a model that allows me to forecast the cost of trading a certain company.

Below are two more plots. One is the daily plot of mcaps over time - a mean is used to calculate the mcap of the 100 companies used in the sample. Beneath that is the Implemented Shortfall again a mean is used in the plot.

## Answer by lehalle (score 2)

https://quant.stackexchange.com/a/40459

Trading costs are made of different components:

- fees

- bid-ask spread costs

- market impact

The last two components (ba-spread plus market impact) have to be estimated using a regression. There is a consensus today about a square root law of the market impact, mainly the spread + market impact models usually have the following shape:

$$a \psi + \kappa \sigma\sqrt{Q\over ADV}$$

Where $\psi$ is the bid-ask spread, $\sigma$ the volatility of the considered instrument, and $ADV$ its average daily volume. $a$ and $\kappa$ are the parameters to estimate.

For details refer to Market Microstructure in Practice (p203-209 of 2nd edition) or most papers in the December 2015 issue of Market Microstructure and Liquidity.

To answer to the details of your question:

- first you made a mistake in your definition of IS (Implement Shortfall), it should be $$IS = sign(order)\times {(decision - open) \over open}$$

- then you can estimate $a$ and $\kappa$ minimizing $$\left(a \psi + \kappa \sigma\sqrt{Q\over ADV} - IS\right)^2$$ on your database of orders.

- if you have any double on the square root, you can try a fit of $$\left(a \psi + \kappa \sigma\left({Q\over ADV}\right)^\gamma - IS\right)^2$$

A detail: $\psi, \sigma$ and $ADV$ are here for renormalization purpose from one instrument to another. You can use any statistics representative of these variables (long term averages, median, mean, etc).

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.