Rounding base setup event
Flags the end of a run of narrowing Bollinger bands while the average turns up: a setup, not a breakout.
Rounding base setup measures Bollinger Band width as the gap between the upper and lower band divided by close, using a 20-bar band by default. It counts consecutive bars on which that width shrank, and fires when the count reaches width_drop_n (default 10) on a bar where the exponential average (50 bars by default) is rising. The high and low inputs are accepted but never read, so only close drives the result.
How to read it
- Markers sit on single candles where a setup completes; the bars between them are unmarked.
- A marker means the bands have been narrowing for the full run and the average is rising on that bar. It does not confirm a breakout.
- The count must land exactly: if the average is falling on the bar the run reaches its length, no marker appears, even if the average turns up a bar later.
- At defaults the markers are frequent, about 8 per trading day on SPY one-minute bars, so read each one against the price structure around it.
What it outputs
- Rounding base setup
- True on the bar that completes a rounding-base setup: band width has shrunk for width_drop_n bars in a row and the average is rising on that bar. Drawn only on those bars.
When it fires
Fires on the bar where band width has shrunk for exactly width_drop_n bars in a row and the average rose on that same bar. A run fires at most once. It marks the end of a squeeze as the average turns up, not a breakout above the base.
Settings
- ma_window
- Length of the exponential average whose one-bar rise is required on the marker bar. Raising it makes the check a slower trend filter that reacts later to turns. Lowering it lets the average follow short bounces, so the check flips on noise.
- width_window
- Window of the Bollinger band that sets the width. Shorter windows make width jump bar to bar, which breaks falling runs and leaves fewer markers. Longer windows smooth width, so falling runs last longer and reach the count more often.
- width_drop_n
- Straight bars the band width must shrink before a marker can fire. Raising it makes markers rarer and each one a longer squeeze. Lowering it to a few bars makes markers frequent and less specific.
Pitfalls
- The name says curvature, but curv_up only checks that the average's one-bar change is positive, which is a slope test.
- highs and lows are wired in and never read, so the base's high and low play no part in the marker.
- Frequent at defaults: about 8 markers per trading day on SPY one-minute bars in September 2026, so a single marker is weak evidence.