AdaInsideBarClusterBreakoutLong4H
Hypotheses
ADA 4H N-Bar Inside-Bar Cluster Breakout Long (Volatility-Contraction Coiled-Spring Pattern)
Hypotheses
A long-only, single-instrument, single-timeframe strategy on ADAUSDT.BINANCE 4H bars implementing the analyst's EXPLICITLY RECOMMENDED structural mechanism: N-BAR INSIDE-BAR CLUSTER BREAKOUT. From the most-recent ADADoubleLowSupportReclaim abandon feedback: 'try a different structural mechanism (e.g., volatility-contraction-then-expansion, range-compression-breakout, or N-bar inside-bar-cluster)'. The mechanism: detect a sequence of 3+ consecutive INSIDE BARS (each bar's high <= prior bar's high AND each bar's low >= prior bar's low — i.e., each bar's range is CONTAINED within the prior bar's range). This signals progressive volatility contraction — a 'coiled spring' as ranges narrow toward equilibrium. When the contraction resolves with a breakout above the highest high of the inside-bar cluster, and the broader trend filter holds, enter long. Range-compression-breakout is a documented structural pattern (Crabel 1990 'Day Trading with Short-Term Price Patterns' formalized inside-bar concepts) — when ranges contract toward a point, the subsequent expansion is statistically biased toward the broader trend direction. Critically distinct from every existing ADA 4H mechanism: (a) NOT Donchian breach (uses bar-RANGE containment, not channel extremes); (b) NOT channel-width expansion (uses INSIDE bar sequence, not channel width metric); (c) NOT support-level patterns (uses range geometry not price levels); (d) NOT statistical signals (z-scores, autocorrelations failed); (e) NOT single-bar geometry (multi-bar sequence). SEQUENCE-BASED + RANGE-STATISTICS per analyst's explicit successful-pattern profile.
Hypotheses
Iteration 2 addresses the Layer-3 feedback that the mechanism was coded correctly but fired only ~1 signal/year (5 trades in 6 years) — too sparse for walk-forward. Three prescribed loosenings raise the signal rate toward the 30-60 trade target without changing the coiled-spring thesis or the passing Layer-1/Layer-2 scaffolding: (1) min_inside default 3->2 (a mother bar plus 2 contracting bars is already a valid coil, and strict 3-in-a-row runs are exponentially rarer); (2) the strict OHLC inside-bar containment is replaced by a RANGE-CONTRACTION criterion (bar range <= prior range * contract_tol, default 1.05), which is exactly the volatility contraction the hypothesis targets and fires far more often than requiring both high<=prior_high AND low>=prior_low; (3) a tunable trend_band (default 2%) lets in-trend breakouts near the SMA through instead of only strictly-above ones. All new knobs are exposed as parameters for a later WF pass. Imports, signal-continuity logic, exit logic, and sizing are unchanged from the iteration-1 code that already passed static + synthetic verification.
Hypotheses
No exploitable edge in the base backtest: a genuinely negative-expectancy long-only breakout (Sharpe -0.39, profit_factor 0.91, CAGR -5.39%, negative expectancy) over a LARGE 350-trade / 6-year sample with losses in 4 of 7 years. The mechanism is implemented faithfully (350 longs, 0 shorts, matches hypothesis), so this is not an iterate-able code bug — it is a signal with no edge. A ~225-trial best-of-N optimization sweep on a negative base would only select a luck region on noise (the exact deflation failure the ADA 4H breakout family repeatedly hits), so spending 2 hours optimizing is not justified. The overly-loose contract_tol=1.05 (ranges may GROW 5% yet count as 'contracting') further shows the coiled-spring premise is not actually being captured. Abandon rather than optimize.
Implementation
Long-only ADAUSDT.BINANCE 4H range-contraction cluster breakout. Detects a run of >=2 consecutive CONTRACTING bars (each bar's high-low range <= the prior bar's range within a 1.05x tolerance) — a volatility-contraction 'coiled spring'. When the current bar's high expands above the cluster high (mother bar plus the contracting run) and the trend filter holds (close > SMA(50) within a 2% band), it enters long. Exits on a 5% stop, 10% take-profit, a trend-break (close < SMA(20)), or a 30-bar (~5 day) time stop. Sized at 50% notional capped so stop-loss risk stays within 2% of equity.
Backtest Review
Mechanism is correctly implemented and distinct from prior ADA 4H attempts: 350 long entries, 0 shorts, 19.35% exposure — trades match the long-only contraction-breakout hypothesis
Backtest Review
Large, meaningful sample (350 trades over 723 days / 6 years) — conclusions are statistically supported, not noise
Backtest Review
Negative base edge: Sharpe -0.39, profit_factor 0.91 (<1.0), CAGR -5.39%, total_return -7.63%, negative expectancy per trade
Backtest Review
Losing across most of the sample: annual returns negative in 4 of 7 years (2022 -10.7%, 2024 -17.1%, 2026 -18.9%); this is a persistent no-edge signal, not a regime blip
Backtest Review
Win rate 30.6% with ~2.08 win/loss ratio still yields negative expectancy — the payoff structure cannot overcome the low hit rate
Backtest Review
contract_tol=1.05 permits ranges to GROW 5% and still count as 'contracting', diluting the coiled-spring premise so the signal fires indiscriminately (350 fires) with no real compression edge
Backtest Review
31.8% max drawdown with recovery_factor -0.75 — risk metrics are poor on top of the negative return
Analysis
Do NOT optimize — 5 trades in 6 years cannot support walk-forward (the optimizer would fit noise). The mechanism is coded correctly; the problem is that the entry gates are far too strict, producing ~1 signal/year. Raise the signal rate to a testable frequency (target >= ~30-60 trades over the full history) by loosening the trigger, then re-backtest:
1) Reduce the cluster requirement: set min_inside default to 2 (a mother bar + 2 inside bars is already a valid coil) instead of 3. Three STRICTLY-consecutive OHLC-contained bars are rare on ADA 4H.
2) Relax the containment definition from strict OHLC containment to a RANGE-CONTRACTION criterion: count a bar as 'contracting' if its range (high-low) is <= the prior bar's range (optionally within a tolerance, e.g. <= 1.0-1.1x), rather than requiring both high<=prior_high AND low>=prior_low. This captures the 'coiled spring' volatility contraction the hypothesis targets while firing far more often.
3) Consider softening the trend gate for the breakout test (e.g. allow close within a small band of SMA(trend_period), or use a longer/again-tunable SMA) so in-trend breakouts are not additionally throttled.
HARD GATE: after these changes, if the strategy still cannot produce a statistically meaningful trade count (>= ~30) with profit_factor > 1.2 and a positive Sharpe on ADA 4H, abandon — the ADA 4H family has repeatedly failed and we should not keep tuning a mechanism that either never fires or shows no edge.
Outcome Summary
AdaInsideBarClusterBreakoutLong4H implemented the analyst's explicitly recommended volatility-contraction / inside-bar-cluster breakout on ADA 4H, entering long when a run of range-contracting bars resolved upward in an uptrend, and was deliberately distinct from the family's prior Donchian, support-level and statistical mechanisms. The implementation was clean and faithful — 350 long-only trades over six years — but the edge was genuinely negative: Sharpe -0.389, profit factor 0.91, CAGR -5.39%, losing in 4 of 7 years, with a 30.6% win rate whose 2:1 payoff still could not overcome the low hit rate. The backtest-review gate abandoned it before optimization, noting the loose contract_tol=1.05 diluted the coiled-spring premise into indiscriminate firing and that a best-of-225 sweep on a negative base would only curve-fit noise, matching the recurring ADA 4H breakout deflation failure pattern. It was abandoned rather than iterated, as the binding issue was an edgeless signal, not a fixable bug.
Outcome Summary
Faithfully implementing an analyst-recommended structural pattern does not confer an edge — the coiled-spring premise was further undermined by an overly-loose contract_tol of 1.05 (ranges could grow 5% and still count as 'contracting'), so the signal fired 350 times indiscriminately without capturing real compression, and a negative-expectancy base on a large sample is not an optimization candidate.
Outcome Summary
The backtest-review gate abandoned it before optimization: it failed CAGR, Sharpe, total return and profit factor, and with a faithful implementation (350 longs, 0 shorts, matching the hypothesis) the problem was a genuinely no-edge signal rather than a code bug — a best-of-225 sweep on a negative base would only select a luck region on noise, the exact deflation failure the ADA 4H breakout family repeatedly hits.
Outcome Summary
A long-only, single-instrument, pure-OHLCV structural breakout on ADAUSDT.BINANCE 4H bars implementing the analyst-recommended N-bar inside-bar-cluster / volatility-contraction 'coiled spring' mechanism — detecting a run of 2+ range-contracting bars and entering long when the current bar's high expanded above the cluster high while a trend filter held, exiting on stop, take-profit, trend break, or time stop.
Outcome Summary
Over a large 350-trade, ~6-year sample it had a negative base edge: total return -7.63%, CAGR -5.39%, Sharpe -0.389, profit factor 0.91, negative expectancy (-$83.78/trade), a 30.6% win rate, 31.8% max drawdown, and negative annual returns in 4 of 7 years (2022 -10.7%, 2024 -17.1%, 2026 -18.9%).
Backtest and paper results are hypothetical. Trading involves risk of loss.