### liquidity

Is there a standard definition? Does it have a unit? Is it even a number?

I’m going to take a stab. Without loss of generality I’ll define liquidity availability for buying (selling is analogous), as a unitless function $$L(,s)$$ over transaction amount  and time limit $$s$$. Operationally, it means to take  amount of a tradable asset, convert into number of shares $$N$$ at the current price (assume it exists) and request to transact  using all possible algorithms that complete in $$s$$ seconds and find the one that got the most shares $$N^*$$, then $$L(,s) = N^*/N$$, a number between 0 and about 1 (for most cases). The larger it is, the more liquidity there is at the $$(,s)$$ pair. $$L$$ is monotonically decreasing in  and monotonically increasing in $$s$$.

(Note: This notion of liquidity is more general than some others out there, e.g. in this, the price impact of a market order is equivalent to $$L(,0)$$, the execution time of a limit order is the solution for $$s$$ to $$L(,s)=\ell$$ for some $$\ell$$ (*), and the execution probability of the same is the probability that (*) has a solution.)

Example 1. Say the current bid-ask is $99-$101, so assume the price is $100. Say the ask side of an orderbook has 5 shares at$101 and 5 shares at $102. Now I place a market buy order for$1000, so 5 shares will take $101, and 4.85 shares will take$102 (we’ll allow fractional shares). We end up with 9.85 shares, for a liquidity availability of 0.985 at $1000 and 0 seconds. Example 2. Same setup as above, now I am willing to wait 5 seconds to transact, so assume the best strategy (which can’t be known a priori of course) is to put in a limit order for 10.10 shares at$99, which gets filled by a seller moving down to $99 within 5 seconds. Then the liquidity availability is 1.010 at$1000 and 5 seconds.

Example 3. Same setup as above, but now an HFT market maker steps in to quote $99.99-$100.01 with 1 share on each side. (100 times smaller spread!) I’m still willing to wait 5 seconds to transact, but say the market maker has the capability to react in 100 milliseconds to any buy order by buying up the 5 shares at $101 and the 5 shares at$102, and re-offering 10 shares at $103. Then there are two regimes. If I can complete my order in under 100 milliseconds, then I get 1 share at$100.01, 5 shares at $101, and 3.87 shares at$102 for a liquidity availability of 0.987; otherwise, I get 1 share at $100.01, and 8.74 shares at$103 for a liquidity availability of only 0.974.

So has the market maker increased or decreased liquidity? It turns out the market maker increased liquidity only at HFT time scales, and decreased liquidity at all coarser time scales to worse than the 0-second liquidity of Example 1, distorted or at least obscured natural supply/demand, increased volatility, and cost me more money.

These are illustrative thought experiments, so take with a grain of salt. But I do wonder when people throw around the word liquidity and claim they’ve increased it, have they even defined it? Or when they claim they’ve reduced costs, have they done real experiments of the sort above? If neither, then what are they talking about? Why should I believe them? At the very least, it should be emphasized that liquidity or cost are not defined by the visible market spread, which only indicates the cost of transacting at the time scale of the most dominant market participants, in this case, HFT’s. That spread is irrelevant to investors if prices can move faster than their order completion.