Estimating Fair Value from Order Books and Recent Trades
Summary
The discussion considers whether recent trade VWAP, the bid-ask midpoint, a moving average of midpoints, or an average across book prices can estimate a stock’s value for market making. It suggests treating infrequent trades as missing observations: regress observed trade prices on order-book information, potentially weighting by displayed volume, then predict prices at times without trades. Full information maximum likelihood is mentioned as one way to handle missing data, though other imputation methods may be too slow for trading use.
The replies caution that a value estimate alone may not explain losses or a lack of trades. The midpoint is offered as a practical starting point for liquid instruments, while sparse trading makes estimation harder. Averaging all book prices can produce a value far from the midpoint, and combining estimates is suggested as something to explore. The discussion provides no empirical comparison, validated strategy, or performance evidence; it frames these ideas as heuristics and advises checking other parts of the market-making approach too.
Key ideas
- Trade prices can be treated as intermittently observed data and modeled using order-book features.
- A regression on bid, ask, or volume-weighted book information can predict prices when trades are absent.
- The bid-ask midpoint is a convenient starting estimate for liquid instruments.
- Averaging every price level in the order book can yield a value far from the midpoint.
- Incorrect value estimates may not be the only cause of poor market-making results.
Tags
Full text
# Calculating true value of a stock given the order-book and recent trades # Calculating true value of a stock given the order-book and recent trades I'm trying to calculate the 'true value' of a stock listed on an exchange. I have access to the limit order-book (containing all bid/ask quotes) and also all trades which have taken place (which contain price, amount, date etc). The context is from the POV of designing a market-making algorithm with positive expected profit. I've tried taking: - The VWAP of recent trades - The mid-point of the bid-ask spread - The SMA of the mid-point of the bid-ask spread - The mean over all prices in the order-book All these attempts have resulted in an overall loss, or no-trading taking place at all. I must be approaching this from the wrong angle and I think the primary suspect is incorrect true value calculation. Does anyone have any advice, or good reference to read-up on? ## Answer by John (score 3) https://quant.stackexchange.com/a/4792 One way to think about this is as a missing data problem. You observe the order book constantly, but trades only occur infrequently. One way to resolve this is to perform full information maximum likelihood (other techniques, such as multiple imputation, may be too slow for your needs but it might be useful to look into them), which has analytical formula for the multivariate normal distribution. This would be equivalent to regressing trade prices on the order book (or just the bid and ask or some weighted least squares that accounts for the volume at each price) and then predicting what price trades would have occurred at. Nevertheless, my guess is that performing these regressions will not help your trading strategy. Taking the mid-point of the bid/ask spread is a convenient approach to begin your analysis. The fact that several indicators produced similar results, suggests that you have other problems. You might need to re-evaluate more than just this. ## Answer by Oleg Vazhnev (score 0) https://quant.stackexchange.com/a/9568 I've tried many of these too and often it not good. It's because there are no such thing as "true price". You are trying to calculate thing that doesn't exist. Probably it makes sense to work with "original" information - bid, ask, orderbook itself. Also it's important how liquid instrument is. For liquid instruments you can just use ask + bid / 2. But if instrument has only one deel per week it would be much harder to calculate "truePrice". BTW "The mean over all prices in the order-book" is bad idea as a result can be very far from the bid+ask / 2. Sometimes "combinations" works good. For example you can use several of your approaches at the same time and just use min or max of several calculated truePrice.
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.