When a trader places a market order, it is filled from the top of the order book. A limit order is filled when an order book entry matches the limit. In both cases the trades are filled at an ask or bid price from the book. In my opinion, ask and bid are sufficient for limit order simulation.