The Bollinger Band Strategy I Applied to My Habits (And What It Revealed)
How volatility bands exposed three hidden patterns in my daily consistency.
In trading, Bollinger Bands are a volatility indicator -- you plot a moving average with bands two standard deviations above and below. When price breaks out of the band, it's a signal. When it contracts into a squeeze, volatility is about to explode.
I applied the same math to my habits. The results were more revealing than any streak counter ever gave me.
What the Bands Show
Here's the core idea:
- Upper band = your peak performance days. 80%+ effort, everything clicked.
- Lower band = your floor. The minimum you'll accept before calling the day a miss.
- The squeeze = when your habit scores cluster tightly. Low volatility. Either you've found your groove, or you're about to blow up.
function bollingerBands(prices, period = 7) {
const slice = prices.slice(-period);
const avg = slice.reduce((s, v) => s + v, 0) / period;
const variance = slice.reduce((s, v) => s + Math.pow(v - avg, 2), 0) / period;
const stdDev = Math.sqrt(variance);
return {
middle: avg,
upper: avg + 2 * stdDev,
lower: avg - 2 * stdDev,
squeeze: stdDev < 5 // tight band = low volatility
};
}
When I plotted this for my morning run habit, three patterns jumped out immediately.
Pattern 1: The Pre-Quit Squeeze
Every time I eventually quit a habit, the Bollinger Bands told me 2 weeks before I did.
The bands would tighten. My scores clustered around a low average -- not crashing, just... flatlining. I'd think I was being "consistent." The data said I was losing conviction, slowly.
If I'd caught the squeeze earlier, I could have acted on it -- added novelty, changed time of day, increased stakes. Instead I kept thinking consistency was the goal.
Lesson: a tight band at low score is worse than volatility.
Pattern 2: The False Breakout
Some days I'd hit 100% -- perfect execution, fully in flow. The bands would expand upward. I'd feel like I'd turned a corner.
Then I'd miss the next two days.
In trading, a false breakout is when price briefly pierces resistance, then snaps back. Same thing in habits. The peak day creates pressure. It sets an implicit standard I then fail to meet.
The 1.8x loss aversion coefficient in HabitStock actually accounts for this -- a fake peak followed by a miss costs more than the gain from the peak. The algorithm knows what my brain doesn't.
Pattern 3: The Band Walk
This is what sustained progress actually looks like: price rides the upper band for 10-14 days. Not explosive, not volatile -- just consistently touching the ceiling.
I used to want every day to be a 100. The band walk looks more like 65-75 every day for two weeks. Boring. But look at the chart after 60 days: it's unmistakably upward.
Traders call this "walking the band." It's the bull market of habits.
What I Changed After This
I set a lower band threshold explicitly. If my 7-day average drops below 40, that's my action signal -- not a streak counter reset.
I stopped celebrating peak days. They predict comebacks, not progress.
I watch for squeezes at low averages. That's when I know I need to change something, not push harder.
The streak counter told me I was doing great until I wasn't. The Bollinger Band told me I was drifting three weeks before I noticed.
If you want to see your own habit volatility, HabitStock tracks this automatically. No login, no subscription -- just your habits visualized as a stock chart.
What patterns have you noticed in your own habit data? Drop them in the comments.
Top comments (0)