BL-IS-006: Adverse Selection Markout

BIJECTIVE LABS


BIJECTIVE LABS . SEP 7, 2026


BL-IS-006: Adverse Selection Markout

Status: RELEASED

Classification: PUBLIC

Revision: 1

Date: 2026-09-07


1. What it measures

How much the price moves against a passive fill, at a series of horizons after that fill.

markout(h)  =  side * ( mid_{t+h} - fill_price_t ) / fill_price_t * 1e4

side is the sign of the passive position taken, so a negative markout means the price moved against the maker. Reported in basis points across a grid of horizons.


2. Why it is not a cost term

Every other cost in this record behaves the same way regardless of how good your price is. A fee is a constant. Slippage scales with size.

Adverse selection scales with how attractive your quote is. The more competitive the price you show, the more of the informed flow you receive, and the informed flow is the flow that is about to be right.

That inverts the usual optimisation. For every other term, improving your terms improves your outcome. For this one it does not, which is why it is a separate axis of death in BL-D-005 rather than a subcategory of cost.


3. The comparison that matters

Markout on its own is not a verdict. The verdict is markout against the half-spread being earned.

maker survives when   half_spread  >  |markout(h)|   at the horizon of interest

Measured on the control instrument across 9,352,722 trades [E-0002]:

QuantityValue
Markout at 60 s-0.53 bps
Half-spread proxy0.14 bps
Ratioroughly 4 times

The adverse movement after a fill is around four times the spread being earned. The instrument returns both numbers side by side for exactly this reason; a markout figure without its half-spread comparator invites the wrong conclusion.


4. The horizon grid is the finding

The instrument reports a curve rather than a point, and on this substrate the shape of the curve is more informative than any single value.

Adverse selection exceeds the half-spread within ten seconds on five of six candidate instruments.

Ten seconds is the number a reader should carry away. It is long by execution standards and short by cancellation standards from a non-colocated position, and it is what makes the market-making verdict envelope-bound rather than universal.

An operator whose cancellation path acts comfortably inside ten seconds is looking at a different question than this programme was.


5. Decomposition by counterparty

Where the venue exposes participant identity, the instrument decomposes the markout by who took the other side.

MeasurementValue
Difference, large against retail aggressors0.906 bps
CI95[0.757, 0.983]
Permutation p0.000
Sample4.51M fills
Persistence10 to 30 s

This is the most precise measurement in the archive and it agrees with section 4 on both the mechanism and the timescale. Adverse selection is driven by who is transacting and it resolves inside tens of seconds.

It also demonstrates the difference between a real effect and a tradeable one. The differential is established beyond argument and it is 0.906 basis points against a cheapest available round trip of 3.0. Every attempt to monetise it returned gross negative.


6. Interface

markout_curve(fills, book, horizons, by_class) -> MarkoutReport
 
  fills       passive fills with timestamp, side, price
  book        recorded mid series at sufficient resolution
  horizons    grid, typically 1, 5, 10, 30, 60 seconds
  by_class    optional aggressor classification for decomposition
 
Returns per horizon: mean markout, interval, n, and the half-spread comparator.
 
Raises when:
  the book series does not cover fill_time + max(horizons)
  a fill has no recorded side
  n at any horizon falls below the declared minimum

The first check prevents the most common defect, which is a curve whose long horizons are computed on a shrinking and non-random subset of fills as the recording window runs out.


7. The concentration guard

The instrument reports the per-day and per-instrument share of its own result, and this is not optional decoration.

One candidate instrument in the market-making assessment appeared to survive the markout test. It was rejected because 72.5 percent of its result came from a single day.

A market-making result that lives in one day is not a market-making result. R-19 requires the decomposition, and this instrument computes it as part of its own output rather than leaving it to a separate pass.


8. What was not measured

Markout conditioned on regime, on time of day, or on any of the volatility signals the programme validated elsewhere. Every figure here is pooled.

That is a real gap and a plausible route. If adverse selection concentrates in identifiable conditions, a quoting strategy that stands down in those conditions is a different proposition from one that quotes continuously. The programme did not test it, and this record says so rather than implying the question is closed.


9. Cross-references

BL-EC-003 for the economics. BL-D-005 on why this is a separate axis. BL-P2-001 door 3. BL-SD-026, BL-SD-027, BL-SD-046. Evidence E-0002, E-0051.


Copyright (c) 2026 Bijective Labs. All rights reserved.