BtcFourHourPriorDayHighLowFailedBreakoutRejectionLS
Hypotheses
BTC 4H Prior-24h High/Low Failed-Breakout Rejection Long-Short (BINANCE USD-M Futures, 4H, OHLCV-Only, Price-Level Mechanism)
Hypotheses
Single-instrument long-short failed-breakout-reversal strategy on BTCUSDT.BINANCE that fires when price tests an established 24-hour pivot level but fails to break through, indicating that the level holds as resistance/support and a reversion is likely. Mechanism reads PRICE LEVELS (prior 24h high = PDH, prior 24h low = PDL) and intra-bar excursion vs close: when the current 4H bar's HIGH pierces PDH by more than a threshold (failed breakout attempt) BUT the close is back below PDH by more than a threshold (rejection confirmed), enter SHORT — the bulls tested and failed. Symmetric LONG entry when the bar's LOW pierces PDL but close is back above PDL. This is the mechanical COUNTERPART to the portfolio's landed breakout family (BtcFourHourVolumeBreakoutLong, MultiTimeframeBreakoutETHSOLLong, etc.): those strategies fire when a breakout SUCCEEDS; this strategy fires when a breakout FAILS — they cannot both signal on the same bar, so they're complementary rather than redundant. ZERO SUPPLEMENTARY DATA, ZERO EXTRA INSTRUMENTS, ZERO EXTRA BAR TYPES — purely BTCUSDT.BINANCE-4-HOUR OHLCV on the proven data path used by all my five currently-in-pipeline BTC 4H hypotheses (BtcAggressorFlowProxy, BtcAsianSessionUSReversal, BtcConsecutiveDirectionalStreak, BtcOpenInterestSurgePriceExtension, BtcRangeExpansionExtremeCloseRejection). Fills three under-represented portfolio buckets that NONE of my prior hypotheses addressed: (1) long-short direction (currently 9.7% vs ≤55% long-only ceiling — most-violated quota); (2) PRICE-LEVEL / failed-breakout mechanism class (entirely absent from all 956 experiments — every existing breakout-based strategy trades successful breakouts, none trade failed ones); (3) support/resistance pivot-rejection signal type (orthogonal to taker flow, session time, bar sequence, OI positioning, range anatomy, volume breakout). Expected ~100-200 entry cycles per year × 6 years of BTC 4H data ≈ 600-1200 trades, dramatically above walk-forward sample-size floor. Mechanism is BTC-specific, structurally immune to AVAX-style cross-asset analog overfitting since no family-portability claim is made.
Hypotheses
Implements the failed-breakout-rejection mechanism as the mirror image of the portfolio's successful-breakout family: because a rejection requires close back INSIDE the level (close<PDH for a short, close>PDL for a long) while a successful breakout requires close BEYOND it, the two can never signal on the same bar, so this is complementary, not redundant. It is single-instrument so the standard FactoryStrategy hooks are used directly (no centralized multi-leg management). calculate_signal returns a continuous signed rejection depth in ATR units every bar, with a varying close-vs-midpoint baseline when no setup is present, so Layer-2 frozen-signal detection passes; the defining 'pierce-then-close-inside' condition is a boolean gate in should_enter (pierce_atr for the poke beyond the level, reject_atr for the close-back-inside depth), keeping the entry logic out of the signal default per the coder guidance. Prior-24h levels exclude the current bar (highs[:-1]) so the pivot is genuinely established history. Exits combine an ATR take-profit on reversion, an ATR stop for when the level is decisively broken (invalidating the rejection thesis), and a 12-bar (2-day) time stop; entry context is reconstructed from the open position's avg_px_open if state is lost. Sizing is capital-relative (1% risk over the 1.5*ATR stop, ~0.5-0.8 BTC at typical BTC 4H ATR) capped at 50% notional and clears the BTCUSDT $100 min-notional comfortably, with per-trade edge (tp 2*ATR ~ hundreds of bps) well above the ~0.10% round-trip futures fee. Leverage stays 1.0 and is referenced only as a sizing multiplier (=1), so no unused-leverage gate applies. No supplementary data, no extra instruments, fills the under-represented long-short direction and price-level/pivot-rejection mechanism buckets.
Hypotheses
Do not optimize — this is a fairly-tested, well-formed strategy that simply has no edge. With 948 trades (486 long / 462 short) evenly distributed across 6 years, sane positions, and no blow-up, the failed-breakout-rejection mechanism got a clean test and lost: total_return -32.8%, CAGR -5.9%, Sharpe -0.41 (sharpe_ci_low -1.12), profit_factor 0.92 (<1), omega 0.92, Sortino -0.52, expectancy -$34/trade, and negative annual returns in 6 of 7 years (2020 -12%, 2021 -2%, 2023 -8%, 2024 -14%, 2025 -0.5%, 2026 -8%; only 2022 +8%). A negative-Sharpe, sub-1.0-PF signal has no gross edge for optimization to refine — best-of-N tuning would only fit noise — and fees compound the problem (commission_pct_of_gross 8.62% on near-symmetric win/loss of $867 vs $852 at a 47.6% win rate). This is not sparsity (trade count is abundant) and not a code/sizing bug (no liquidation, no exposure pathology, metrics_reliable=true), so there is no correctness fix to iterate on — the failed-breakout-fade mechanism itself does not predict reversion on BTC 4H. No parameter change converts a PF 0.92 strategy that loses across 6 of 7 years into a winner; abandon rather than optimize or iterate.
Implementation
Single-instrument long-short failed-breakout rejection reversal on BTCUSDT.BINANCE USD-M futures, 4H bars, pure OHLCV. Each bar it computes the prior-24h pivot levels (PDH = highest high of the prior 6 4H bars, PDL = lowest low, current bar excluded) and ATR(14). A SHORT fires when the bar's high pierces PDH by >= pierce_atr*ATR (a breakout attempt) but the close is back below PDH by >= reject_atr*ATR (rejection confirmed); a symmetric LONG fires when the low pierces PDL but the close is back above PDL. It exits on an ATR take-profit (reversion), an ATR stop (the level breaks decisively), or a max-hold time stop. Risk-based sizing (1% equity risk over the ATR stop) capped at 50% notional, leverage 1.0.
Backtest Review
Well-formed, fairly-tested mechanism: 948 trades (486 long / 462 short), evenly distributed across 6 years, no sizing/infrastructure pathology, no blow-up
Backtest Review
Genuinely novel price-level / failed-breakout signal class that would have diversified the book if it had edge
Backtest Review
Consistent money-loser: total_return -32.8%, Sharpe -0.41 (sharpe_ci_low -1.12), profit_factor 0.92, omega 0.92, Sortino -0.52, expectancy -$34/trade
Backtest Review
Negative in 6 of 7 years (2020 -12%, 2021 -2%, 2023 -8%, 2024 -14%, 2025 -0.5%, 2026 -8%; only 2022 positive) — edgeless across regimes, not one bad window
Backtest Review
Fee-fragile: commission_pct_of_gross 8.62% on near-symmetric win/loss ($867 vs $852) at a 47.6% win rate
Backtest Review
Healthy trade count rules out sparsity; no correctness bug — the failed-breakout-fade mechanism itself simply has no edge on BTC 4H
Outcome Summary
BtcFourHourPriorDayHighLowFailedBreakoutRejectionLS introduced a genuinely novel price-level mechanism — fading failed breakouts of prior-24h pivots — to fill the portfolio's long/short and support/resistance gaps as the mechanical complement to the landed breakout family. It received a clean, fair test with 948 trades evenly spread over six years and no infrastructure pathology, but the result was a consistent money-loser: -32.8% return, Sharpe -0.41, profit factor 0.92, and negative returns in six of seven years. Healthy trade count ruled out sparsity and there was no code bug, so the failed-breakout fade simply has no edge on BTC 4H, with fees further eroding near-symmetric win/loss economics. On its first iteration the analyst abandoned the strategy at the backtest-review gate, concluding no parameter change could rescue an edgeless, fee-fragile signal.
Outcome Summary
A genuinely novel, well-tested signal class that would diversify the book only adds value if it actually has edge — when a fairly-tested mechanism loses across 6 of 7 years with a profit factor below 1, no parameter tuning converts it into a winner, so the honest move is to abandon rather than optimize noise.
Outcome Summary
The analyst abandoned it at the backtest-review gate before optimization because a negative-Sharpe, sub-1.0 profit-factor signal has no gross edge for optimization to refine; with abundant trades (not sparsity), no correctness or sizing bug, and losses spread across regimes rather than one bad window, the failed-breakout-fade mechanism simply does not predict reversion on BTC 4H, and fees (8.62% of gross) compounded the problem.
Outcome Summary
A single-instrument, OHLCV-only long/short failed-breakout reversal on BTCUSDT 4-hour futures — the mechanical counterpart to the breakout family — fading rejections of prior-24h pivot levels: shorting when a bar's high pierces the prior-24h high by an ATR threshold but closes back below it, and longing the symmetric setup at the prior-24h low, with ATR take-profit, stop, and time-stop exits.
Outcome Summary
The mechanism got a clean, well-populated test — 948 trades (486 long, 462 short) evenly distributed across 6 years with no blow-up — but lost consistently: -32.8% total return (CAGR -5.9%), Sharpe -0.41 (CI low -1.12), profit factor 0.92, per-trade expectancy -$34, a 47.6% win rate on near-symmetric wins/losses ($867 vs $852), and negative annual returns in 6 of 7 years (only 2022 positive).
Backtest and paper results are hypothetical. Trading involves risk of loss.