Assume a scalper/market maker who is operating on an exchange with $N$ stocks with different characteristics such as current market value, average bid-ask spread, average daily volume and historical volatility.

Due to constraints imposed on this market maker he can only engage in $n$ of the $N$ stocks on the exchange, where $n << N$ ($n$ is much smaller than $N$).

Thus the market maker needs to choose which $n$ stocks to engage in. Obviously he wants to choose those $n$ stocks so that he maximizes his risk reward ratio.

What procedure/algorithm should the market maker follow to choose which stocks to make a market in? What trade-offs does he face in his choice?

  • $\begingroup$ Do you means stocks? Asking which shares to provide liquidity for doesn't make any sense. $\endgroup$ May 19, 2011 at 16:22
  • $\begingroup$ chris: Yes, "shares" should have been "stocks". Thanks for notifying I've now s/share/stock/g. English is not my native language :-) $\endgroup$
    – knorv
    May 19, 2011 at 17:39
  • $\begingroup$ Did you just upvote 12 of my earlier answers? We've had issues with vote stuffing before. This can cause problems, so don't do that again. $\endgroup$ May 19, 2011 at 22:59
  • $\begingroup$ chris: Yes, I upvoted answers that I felt demonstrated real world hft/quant experience, and most of your answers certainly do. Sorry didn't know that multi-upvoting was discouraged. Won't do that again. $\endgroup$
    – knorv
    May 20, 2011 at 8:08

2 Answers 2


All things being equal, stocks with the highest bid-ask spread present the greatest opportunity for the market maker

The size of the opportunity (i.e. revenue expectation) can be represented as Volume * Bid-Ask Spread. Your algorithm should rank-order that revenue expectation

Stocks with high current market values will tend to have narrower spreads and be more liquid (i.e. smaller bid-ask per transaction), more competition from other market makers, but also more volume. So there is a trade-off in volume vs. spread in current market value. However, all of this should be captured in the "Bid-Ask * Volume" formula anyway so I don't think that variable is necessary

Historical volatility will tend to increase the bid-ask spread (i.e. increase the compensation to the market maker). The market-maker is compensated for providing liquidity and holding inventory in a dynamic market (Trade-off #2). Again, this would already be factored into the bid-ask spread so you can ignore this variable as well

  • 5
    $\begingroup$ You can have another indicator for the competition from other market makers. The ratio of volume / quote size is a nice start. After you start trading, your real % market share and analysis of pnl will be much better indicators. Occasionally, in HFT arms race, your % market share can dramatically drop after a major competitor upgrade their system. There are also more and more HFT market 'takers' now. Analyzing your pnl to understand how many $h!t you pick up (your limit order not fast enough to run away) can tell you more story between you and your taker competitors. $\endgroup$
    – 楊祝昇
    Oct 21, 2011 at 17:12
  • 1
    $\begingroup$ Good point. Excellent contributions to the site by the way! $\endgroup$ Oct 21, 2011 at 17:24

I don't know about an algorithm, but you probably want to pick the stocks that have the most ways to hedge, or the ones with the least idiosyncratic risk.

  • 1
    $\begingroup$ Why? Please elaborate :-) $\endgroup$
    – knorv
    May 19, 2011 at 18:01
  • 2
    $\begingroup$ Suppose you're lifted on an offer in SPY. You can lay off your risk by buying, S&P futures, e-mini S&P futures, options on SPY, options on ES, options on SPX, a basket of stocks, another index ETF (e.g. DIA) or futures/options on it, etc. Suppose instead that you were lifted on an offer for a small-cap start-up company with relatively few similar competitors and no liquid derivatives. You don't have anywhere to lay-off risk, or liquidate if things go wrong. $\endgroup$
    – user508
    May 19, 2011 at 18:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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