← Field guide · what went wrong

The default nobody chose

  • Every spread we captured came out $5 wide.
  • Nobody decided that. It was what the code did when the width was not specified.

What we had

  • A capture pipeline replaying credit spreads across years of options data.
  • A strategy stated as three numbers — delta, tenor, and the underlying.
  • A width the code filled in when nothing said otherwise: $5.
  • More than a hundred thousand captured trades carrying it.

Nothing in the output marked that number as inherited. It sat in the data looking exactly like a decision.

What was wrong with it

A $5 spread risks about the same money whatever the share price is. That is the whole problem in one sentence.

  • On a $30 stock, $5 is a sixth of the share price — a large, wide position.
  • On a $600 stock, the same $5 is under one per cent — a sliver.
  • The maximum loss barely moves across that range, because it is set by the width, not by the stock.
  • So one number was quietly doing something different on every name in the universe, and the results were pooled as though it were one strategy.

It also broke the thing we judge on

  • Width and credit together are the risk-to-reward.
  • Fix the width and let the credit float, and you are comparing trades that were never comparable.
  • The number that came out was not wrong arithmetic. It was the right arithmetic on the wrong set.

How it was found

  • By reading the specification back, not by a test failing.
  • Every test we run has to name four numbers — delta, tenor, width and minimum credit. Writing that rule down is what exposed the fact that only three of them had ever been chosen.
  • No alarm went off. Nothing could have: the pipeline did exactly what it was told, consistently, for a hundred thousand trades.
  • That is the shape of this class of error. It is invisible precisely because it is applied everywhere.
What we hadWhat it should have been
The width$5, inherited from the codea stated number in the specification
Trades affectedmore than 100,000
What it looked likea deliberate $5-wide strategya default nobody had weighed

That count is from our own capture data. It is not a strategy result — no test on this site has published one.

What it cost

  • Nothing published, because nothing had been published. No verdict rested on it and no reader was misled.
  • The captured data, though, is not what it appeared to be, and is being recaptured with the width stated.
  • That is the real cost: weeks of machine time, and a body of data that had to be treated as suspect rather than as evidence.

We are publishing it anyway, because the version of this site where the default was never found is the version that publishes a confident number built on it.

Common questions

Does this mean your earlier numbers were wrong?

There were no earlier numbers. Nothing has been published. What it means is that the trades captured before 6 August described a strategy nobody had specified.

Why does spread width matter so much?

It sets the maximum loss. Delta and tenor decide where the trade sits; width and credit decide what it is worth and what it risks.

How do you stop it happening again?

Every test names four numbers before it runs, and the width is one of them. A run that cannot state all four does not get a verdict.

Is a default always a bug?

No. Often the value is perfectly sensible. The bug is that nobody weighed it, and that nothing in the output said so.

What changed

The width is now part of the specification printed at the top of every test, alongside the delta, the tenor and the minimum credit.

A run that cannot name all four does not get published. That rule exists because of this.