← All posts

Six Swings in Five Days: The Week We Could Not Decide How Many Markets to Trade

In April 2020 we spent five days unable to answer one question: how many markets should an automated trader actually trade?

The archive does not record a debate, because there was nobody to debate with. It records the answer being changed six times, in public, in the commit log of a live trading system.

What the week looked like

turn on all symbols turn off all symbols, leave btc

Those two are the same day.

TURN ON ALL SYMBOLS turn off XTZ turn off EOS leaving only stable coins turn symbols back on TURN OFF … DANGEROUS PENNY STOCKS only BTC

On, off, on, whittled down, stripped to the stable ones, on again, purged, and finally back to a single instrument. Five days.

The good

This is what learning actually looks like, and it is faster than deliberation.

Nobody could have told us in advance which of those symbols were tradeable by our system. There was no dataset, no prior art, and no consultant with an opinion worth paying for — crypto markets in 2020 were four years old and the assets were younger than that. The only instrument available for finding out was the market itself, and we used it.

And notice the shape of the retreat: it is not random. It goes from everything, to drop the two worst, to only the stable ones, to one. That is a quality gradient being discovered in real time — the recognition that a symbol universe is not a flat list, it is a ladder, and most of the rungs will not hold your weight.

The verdict he reached in the middle of it, written in capitals at the time, was blunt and it was correct: some of these were not investable instruments in any serious sense. We had been treating a directory listing as a market.

The bad

We turned them all on first. Every one of those reversals is a correction to a decision that should have started at the other end. The default was breadth, and breadth had to be argued down one symbol at a time by losing on them.

There is a commit from the last day of that week that explains the economics better than any analysis we wrote later:

don't add to bid, margin and spread is too thin

That is the whole problem with the long tail, stated in nine words. A thinly-traded asset has a wide spread. Every entry pays that spread and every exit pays it again. You do not need the trade to be wrong to lose — you need only to be trading something nobody else wants to trade. Breadth across illiquid instruments is not diversification. It is a tax you volunteer for.

And we volunteered for it, and then spent five days un-volunteering.

The ugly

We learned this in 2020 and had to learn it again in 2024.

Four years later the same system was fighting the same class of problem from the other direction — not symbols that were too thin to trade, but symbols that had ceased to exist. The commits from that night read handle delisted, patch delisted, hack fix delisted. Same lesson, different failure mode, and no institutional memory connecting them — because the 2020 week was never written up either.

Two separate weeks, four years apart, both teaching that the crypto symbol universe is unstable in ways that cannot be engineered around. It took both of them before we changed markets.

What we do now

We trade a deliberately small number of instruments. Not because breadth is bad in principle, but because every instrument you add has to earn its place against spread, liquidity, and the risk that it stops existing. Most cannot.

The default is now "off". New instruments are added on evidence, one at a time, and have to survive a validation pass before they see live capital. The 2020 default — turn everything on and see what happens — is exactly backwards, and it took five days of reversals to find that out and four more years to make it a rule.

And we write the reasoning down. This post exists because someone read a week of commit messages and reconstructed a decision nobody had recorded. That is a bad way to run a company's memory, and it is the specific failure this series is meant to stop.


RoboTrader trades CME micro futures. Trading involves substantial risk of loss and is not suitable for every investor. Past performance is not indicative of future results.