A crypto market regime filter to put in front of any entry. Most crypto strategies work in one
regime and quietly fail in the other. Rather than tuning the entry until it survives both, refuse
to trade in the one it was not built for.
1. The rule
# BUY — regime first, your conditions second
if Volatility(1800) > 0.4 and Volatility(1800) < 3.0:
if DayAmount > 30000000:
if Price > 0: # replace this line with your entry condition
Buy()# SELL
if ProfitPct >= 2.0 or ProfitPct <= -1.5 or HoldTime >= 2400:
Sell()
2. A floor and a ceiling, for different reasons
Volatility(n) is the coefficient of variation of price over the window, in percent.
Bound
What is happening below or above it
Why you should not trade
> 0.4 floor
price is barely moving
there is nothing to capture and the spread is the whole trade
< 3.0 ceiling
price is moving violently
your assumptions about how far price travels in a minute stop holding
Both extremes produce results that look like strategy failure and are actually weather. That
distinction matters, because the response to a broken strategy is to fix it and the response to bad
weather is to wait.
3. Why a filter beats a fix
Adding conditions until an entry survives every regime is the most reliable way to overfit. Each
condition you add to make the calm days work costs you something on the volatile days, and after
enough of them you have a rule that describes your sample rather than the market — see
eleven conditions, four trades a month.
Refusing to trade is cheaper and honest. It also leaves the entry legible, which matters when you
come back to it in three months.
4. What the round trip asks of it
Crypto regime filter: the exit block drawn to scale, and the break-even win rate before and after measured trading costs
The 2.0% / 1.5% structure moves from a 43% break-even to 46% at a measured round trip of about
0.10% (the real cost of crypto trading).
The filter's real contribution is not visible in that number, though, and it is worth saying
plainly: a regime gate does not raise your win rate on the trades you take. It removes the trades
where you would have paid the round trip for nothing. On a strategy that clears its cost by three
points, avoided trades are worth more than won ones.
5. What to change first
Measure your own bounds rather than adopting these. Run your entry with no regime filter, record
Volatility(1800) at each entry, then split the results by that value. The floor and ceiling will
be obvious from the split, and they will be specific to your entry rather than to ours.
How to backtest a crypto trading strategy covers the recording side.
Educational template for research and backtesting. Not investment advice and not a signal service.
Originally published by TraderWe on August 13, 2026. You may quote and link to this page. Republishing the full text without a link back to the original is not permitted.
I learned the ceiling part the expensive way. Had a mean revert thing that was fine for weeks, then one of those days where everything moves and I kept adding because "it always comes back". It did come back. Three hours after my stop would have been. Calling it weather is generous, mine felt more like standing outside in it.
ok dumb question but is Volatility(1800) 1800 bars or 1800 seconds? on a 1m chart that's like a day and a bit which feels slow for a gate you're checking every minute. also how did you land on 0.4 and 3.0 — did you actually look at the distribution of the CV values first or is that trial and error? i keep wanting to fit these numbers and i'm pretty sure that's how i overfit everything last time lol