Bid-Ask Spreads from Daily High and Low Prices

Corwin and Schultz (2012) derive bid-ask spreads as a measure of stock liquidity. We make available the Stata code for this measure. The code is easy to use and requires just basic understanding of Stata. The code can be adapted for use in Excel, Python, or R.

Corwin and Schultz (2012) ‘s estimator is based on two ideas. First , daily high prices are almost always buyer-initiated trades and daily low prices are almost always seller-initiated trades. The ratio of high-to-low prices for a day therefore reflects both the fundamental volatility of the stock and its bid-ask spread. Second , the component of the high-to-low price ratio that is due to volatility increases proportionately with the length of the trading interval , while the component due to bid-ask spreads does not. This implies that the sum of the price ranges over two consecutive single days reflects two days’ volatility and twice the spread , while the price range over one two-day period reflects two days’ volatility and one spread. This allows us to derive an estimate of a stock’s bid-ask spread as a function of the high-to-low price ratio for a single two-day period and the high-to-low ratios for two consecutive single days.


Our Stata Code

We have developed easy to use yet robust codes for bid-ask spread.  The codes need just a basic understanding of Stata. Further, our comments on each line of code will surely help you to not only apply the code but also understand the process more clearly.

We can also help by modifying the codes to match different research questions and hypothesis. Currently, we have the following liquidity measures:



The code is available for $ 100/model, plus a $50 for raw data processing (in case the data is not in Stata format and variables are not already constructed). For further details, please contact us at:


Other liquidity measures

Currently, we have codes for the following liquidity measures:

  • Corwin and Schultz (2012) – High-low spread of
  • Florackis et al. (2011) – Price Impact Ratio
  • Pastor and Stambaugh (2003)
  • Amihud (2002) liquidity measure
  • Roll  (1984) – Impact Ratio


Amihud, Y. (2002). Illiquidity and stock returns: cross-section and time-series effects. Journal of financial markets5(1), 31-56.

Corwin, S. A., & Schultz, P. (2012). A simple way to estimate bid‐ask spreads from daily high and low prices. The Journal of Finance67(2), 719-760.

Florackis, C., Gregoriou, A., & Kostakis, A. (2011). Trading frequency and asset pricing on the London Stock Exchange: Evidence from a new price impact ratio. Journal of Banking & Finance35(12), 3335-3350.

Goyenko, R. Y., Holden, C. W., & Trzcinka, C. A. (2009). Do liquidity measures measure liquidity?. Journal of financial Economics92(2), 153-181.

Pastor, L., Stambaugh, R., (2003). Liquidity risk and expected stock returns. Journal of Political Economy 111, 642–685.

Project code: P8-C