Advertisement IC Markets

Bid-ask bounce and the fake mean reversion

Discuss 1-minute to 15-minute price action setups, fading intraday momentum, key support/resistance zones, and proven short-term trading methodologies.
Post Reply
Shadow Trader
Posts: 5438
Joined: Wed Sep 09, 2026 5:19 pm

Bid-ask bounce and the fake mean reversion

Post by Shadow Trader »

Tick data jumps between the bid and the ask as trades alternate between buyers and sellers. If the price series is built from trade prices, a buy executes at the ask and a sell at the bid, even when the true value hasn't changed.

That creates negative autocorrelation: an up tick is often followed by a down tick, simply because of the bounce. A naive test on tick data finds strong mean reversion at the one-tick horizon.

The mean reversion isn't tradable. To capture it, the trader would need to buy at the bid and sell at the ask, which is the opposite of what a market order does. A strategy that appears to profit from the bounce loses once real execution is modeled.

This artifact fools many people who test tick-level systems. A system that buys after a down tick and sells after an up tick shows beautiful results on mid prices or last trade prices, and fails on bid and ask.

The remedy is to test with the correct side for each action: buys at the ask, sells at the bid. If the edge disappears, it was the bounce.

Some data vendors provide only the mid or the last price, which hides the issue. Checking that the dataset has separate bid and ask is an important step.

A small numeric illustration: the true mid price stays at 1.08500, with a spread of 0.4 pips. Trades alternate between buyers and sellers. The trade prices read 1.08502, 1.08498, 1.08502, 1.08498. Every tick is a reversal of the last, so the series shows strong negative autocorrelation.

A system that sells after an up tick and buys after a down tick would appear to win 0.4 pips each time on this series. In reality, selling after the up tick means selling at the bid, 1.08498, and buying after the down tick means buying at the ask, 1.08502. Each round trip loses 0.4 pips, the opposite of the apparent result.

That is why tick-level tests must be built on bid and ask quotes. Any dataset that offers only one price per tick is hiding the very quantity that decides the outcome.

Has a tick-level system ever turned out to be nothing more than the bid-ask bounce?
Recommended broker for automated trading & scalping IC Markets
Amanhasnoname
Posts: 1506
Joined: Fri Oct 30, 2026 9:45 am

Re: Bid-ask bounce and the fake mean reversion

Post by Amanhasnoname »

I fell for exactly this with a free tick dataset that only had last prices. My little test bought after a down tick and sold after an up tick, and the result looked like a money machine, with a win rate above eighty percent and a curve going straight up. I remember thinking I had found something the big firms had missed, which should have been the first warning.

When I paid for a dataset with separate bid and ask and reran the same logic, every trade had to cross the spread twice, and the whole edge flipped into a steady loss of almost exactly the spread per round trip. Nothing about the idea survived, it had simply been measuring the alternation between buyers and sellers.

Now I refuse to look at any tick level result until I have checked which price the entries and exits use. Buys on the ask, sells on the bid, every time. If a system can't make money after that, it was never a system.
Post Reply