On May 24, 2021, Bitcoin's 30-day annualized volatility hit 116.62%. That was the highest reading since April 2020, and if you were building a strategy anywhere near that period, it shaped every number you wrote down.

Say you added a volatility filter, the way most people do. Only take the signal when 30-day vol is above 60%. Sensible at the time — 60% sat roughly in the middle of the range, and the filter did its job. It kept the bot out of the dead sideways stretches where the strategy just bled fees.

Now go check what that filter has done lately.

2025 was Bitcoin's least volatile year on record. Across 2025 and into 2026, the 30-day annualized reading has mostly sat between 23% and 45%. Annual realized volatility ran about 52% in 2024, 48% in 2025, and roughly 42% so far this year. ARK found one-year rolling volatility below 50% for the first time since they started tracking it in 2011, and Fidelity counted 17 new all-time lows in one-year realized vol during January 2026 alone.

So your 60% filter hasn't fired in a long time. Not because it broke. Because it's still measuring a market that no longer exists.

A threshold is not a fact about the market

A threshold is a claim about a distribution, and you froze that distribution on the day you fit it.

That's the part people miss. When you wrote "vol above 60%," what you meant was something closer to "only trade when conditions are unusually energetic." Sixty was your translation of "unusually" into a number, using the sample you happened to have. The intent survives a regime change. The number doesn't.

There are two ways this hurts you, and the quiet one is worse.

The loud version is your filter no longer filtering. Volatility doesn't drift upward politely — it clusters, and it expands in bursts. A threshold calibrated during a calm stretch, one that used to reject seven signals out of ten, can suddenly reject almost none. Every marginal setup gets through at exactly the moment your position sizes should be shrinking.

The quiet version is what most systematic traders are living with right now. The filter tightens instead. It rejects nearly everything, the bot sits flat for months, and you conclude there simply haven't been any setups.

There were setups. You screened them out with a number from four years ago.

Why this goes unnoticed for so long

Most traders monitor P&L and monitor nothing else. That's the whole failure.

A flat equity curve is ambiguous. It looks identical whether your edge decayed, the market went quiet, or your filter quietly stopped passing trades. By the time the P&L is unambiguous enough to act on, you've burned a year of information, and the usual reaction is to blame the strategy and rebuild it from scratch — when the strategy was fine.

Regime drift also doesn't announce itself. A bug throws an error. A dead API key sends you a Telegram alert at 3am. Volatility compression sends nothing at all.

It happens one quiet week at a time until the market you backtested and the market you're trading are two different animals wearing the same ticker.

I rebuilt a filter twice in 2024 before it occurred to me to check how often the old one had actually been firing. It hadn't been. That was the entire problem, and I'd spent weeks looking everywhere else.

What to do instead

Write your thresholds as percentiles, not levels.

Instead of "30-day vol above 60%," use "30-day vol in the top third of the last twelve months." The intent is identical and the number now moves with the market instead of anchoring itself to whatever happened the year you built the thing. Same logic applies to ATR bands, range filters, volume floors, anything you originally set by eyeballing a chart and picking a round number.

Then track your firing rate as a metric in its own right. How many signals per month did the filter pass in the backtest? How many is it passing now? If those two numbers have drifted apart by more than a factor of two, you've learned something real about your system months before the P&L would have told you — and an early warning is the only kind that's useful.

Firing rate sits on the same dashboard as returns for every strategy we run, and it has caught more problems than drawdown ever has. If you want to see how our rules and our live results line up, the backtest data and methodology are published at v33systematic.com.