Skip to content

View original

DogeLiquidationIgnitionMomentumLS

Hypotheses

Liquidation-Ignition Momentum, Long-Short (Single-Instrument DOGEUSDT.BINANCE USD-M — Ride the CONTINUATION When a Large Forced-Liquidation Cluster OVERWHELMS Resting Liquidity and Breaks the Local Range = a Self-Reinforcing Squeeze/Cascade, Liquidation-Feed Gated, 2-Parameter)

Hypotheses

A LONG-SHORT, SINGLE-INSTRUMENT, SINGLE-VENUE momentum-CONTINUATION strategy on DOGEUSDT.BINANCE USD-M whose trigger is the exchange LIQUIDATION feed (dense and reliable on Binance USD-M for liquid retail names — NOT the sparse COIN-M OI feed that just killed the OI-regime hypothesis with a 1,248-day hole). This is deliberately the OPPOSITE thesis to the cascade-REVERSAL / OI-deleveraging-fade strategies already in the pipeline, and therefore diversifying rather than duplicative. Microstructure premise: small forced liquidations get ABSORBED and revert, but a liquidation cluster large enough to EXHAUST resting liquidity flips into a self-reinforcing squeeze — forced buyers/sellers run stops, which trigger MORE liquidations, which extends the move for a short horizon. The discriminator is CONTEXT: we only ride the move when the large liquidation cluster COINCIDES with a break of the recent price range (confirming the forced flow overwhelmed liquidity and ignited, rather than being absorbed inside the range). So: large SHORT-liquidation cluster (forced buying) + upside range break → ride LONG the squeeze; large LONG-liquidation cluster (forced selling) + downside range break → ride SHORT the cascade. The liquidation feed is orthogonal to price (a forced-flow observation, not a re-derived trend indicator); the range break is only a confirmation gate. Single venue + single instrument → 15m bars and the liquidation feed are jointly available in the Layer-3 sandbox (no cross-venue/multi-leg or options/IV dependency). Deliberately 2-parameter to resist the overfit deaths that dominate the log. DOGE is chosen because it is retail-leverage-heavy and squeeze-prone, so ignition moves are large relative to the 0.10% RT fee.

Hypotheses

Iteration 7 makes the single smallest change that addresses the reported failure (metrics unreliable: Sharpe -0.54 vs total_return +0.91%): the ignition threshold liq_z drops from 2.0 to 1.25. Iteration 6 had already removed all per-trade exposure heterogeneity (flat notional_frac x equity), and the sign disagreement survived it, which rules sizing out as the cause. The residual cause is arithmetic: total_return is curve[-1]/curve[0]-1 while Sharpe is the mean of day-over-day changes of the same curve's daily last values, so the FIRST calendar day's intraday PnL is structurally absent from the daily series. On a book whose entire net drift over the short (forward-only from 2026-04-21) liquidation-feed window is under one percent and comes from a handful of trades, that excluded day plus the 0% grid days is large enough relative to the drift to put the daily mean on the other side of zero. The fix is a denser sample, not another sizing tweak: at 1.25 z the gate still selects genuinely large clusters (the range-break confirmation, which is the discriminator the hypothesis names, is untouched) but fires several times as often, so per-day drift dominates both series and their signs must agree. Signal, entry polarity, range break, exits, flat sizing and liquidation-feed handling are byte-identical to iteration 6, which passed Layers 1-3, so no passing check is regressed. Honest caveat: I believe the coherent result will be a flat-to-negative curve, not an edge -- see recommendation_reason.

Hypotheses

Negative expectancy on a reliable 152-trade / 137-day sample: profit_factor 0.60, total_return -9.80%, Sharpe -2.31, avg_trade_return_pct 0.011% (below the 0.15% USD-M fee floor and essentially zero), expectancy -$64.58/trade. The trades correctly implement the hypothesized CONTINUATION mechanism (large liquidation cluster + range break, ride the squeeze), so this is a fair test — and the premise is falsified: it loses in every vol regime (calm/normal/stressed all negative). This matches the developer's own 5-year DOGE OI-proxy study (the continuation direction is signed WRONG at t=-2 to -3, and stronger clusters continue worse — the gate carries information in the FADE direction only) and QA's edge concern, now confirmed on the full backtest. Commission is only 30.6% of gross, so this is gross-negative, not fee-fragility, and a 2-parameter surface cannot invert a signed-wrong signal. A polarity flip to a fade would be a different hypothesis (Research Lead's call), not an iteration. Not worth 2 hours of optimization. abandon_class=negative_expectancy (premise_falsified).

Implementation

Long-short liquidation-ignition CONTINUATION on DOGEUSDT.BINANCE USD-M 15m bars. Each bar it consumes the exchange forced-liquidation feed with a forward-only pointer, buckets the notional force-closed over the last `cascade_bars` bars by victim side, and scores the cluster as intensity (z-score of log1p(cluster notional) vs its own 480-bar rolling baseline) times the directional share (short_liq - long_liq)/total. A large SHORT-liquidation cluster (forced buying) that coincides with a close above the prior 16-bar range is ridden LONG; a large LONG-liquidation cluster (forced selling) with a close below the prior range is ridden SHORT. Exit on a 2-ATR target, a 1.5-ATR stop, or a 16-bar time stop. Exposure is a flat 30% of current equity per trade, unleveraged.

Verification Results

If the override is intentional (it appears to be), leave as-is; otherwise rename to a strategy-private helper.

Verification Results

min_bars_required(self) overrides the framework method (static Layer-1 base_shadow warning). It returns max(20, range_bars+2)=20, which is a sane deliberate warmup and does not appear to break base dispatch, but confirm the base template honors the override for the liquidation/baseline warmup rather than its own default.

Verification Results

Analyst: treat holdout/WF window statistics with caution given the short feed history; the trade count is adequate for a point estimate but marginal for robust IS/OOS partitioning.

Verification Results

The native liquidations feed is forward-only from 2026-04-21, capping any full-history backtest at ~138 days. The sandbox already produced 152 trades over 137 days (metrics_reliable=true), so the strategy IS measurable, but the walk-forward/holdout split will be thin (~28-day holdout). Not a code defect and not not_measurable given the sandbox trade count, but the analyst should weigh sample adequacy when sizing confidence in any full-backtest result.

Verification Results

Sandbox is coherently negative (total_return -9.8%, Sharpe -2.31, PF 0.60, avg_trade_return_pct 0.011% << 0.15% fee floor) and negative in every vol regime (calm -3.5%, normal -0.8%, stressed -11.1%). The developer's own five-year DOGE OI-proxy study of the identical mechanism (large forced-deleveraging cluster + same range-break gate + same direction) shows the continuation direction is signed WRONG at t=-2 to -3 across horizons, and stronger clusters continue WORSE (the gate carries incremental info in the FADE direction only), while the up-break/short-squeeze half is untestably thin (n=66 over 5yr). This is a strong prior that the CONTINUATION premise is falsified and that only a polarity flip (a different hypothesis) or a fade reframe could have edge. Advisory only — the full backtest/analyst decides; flipping polarity is the Research Lead's call. First thing to check at backtest review: per-horizon signed return of the gated subset vs the fade.

Backtest Review

Well-formed, deliberately 2-parameter design; trades correctly implement the stated CONTINUATION mechanism (152 trades, balanced 64 long / 88 short, entries gated on large liquidation cluster + range break) — this is a fair test of the premise, not a code bug.

Backtest Review

Reliable sample (metrics_reliable=true, 152 trades over 137 days, 13,119 bars) — enough to decide.

Backtest Review

Negative expectancy on a reliable sample: total_return -9.80%, Sharpe -2.31 (CI [-5.57, 0.74]), profit_factor 0.60, expectancy -$64.58/trade, avg_loss $294 > avg_win $219.

Backtest Review

avg_trade_return_pct 0.011% — essentially ZERO and far below the 0.15% Binance USD-M fee floor; commission is only 30.6% of gross, so this is gross-negative, not merely fee-fragility.

Backtest Review

Premise measurably falsified: loses in EVERY vol regime (calm -3.47%, normal -0.84%, stressed -11.11%). The continuation direction is signed wrong — exactly what the developer's own 5-year DOGE OI-proxy study predicted (stronger forced-flow clusters continue WORSE, t=-2 to -3), and what QA's edge concern flagged.

Backtest Review

No parameter of a 2-parameter surface can invert a signed-wrong mechanism; flipping polarity to a fade would be a DIFFERENT hypothesis (Research Lead's call), not an iterate.

Analysis

Backtest gate: - metrics unreliable: Incoherent: Sharpe -0.54 disagrees in sign with total_return 0.91% — the Sharpe is computed from the mtm_equity_curve series while the return comes from the equity curve. Judge on the equity curve.

Iteration History

Verification failed (Layer 4 — QA review): - STRUCTURALLY UNMEASURABLE — the entry gate depends entirely on the liquidation feed (supplementary_data['liquidations']), but that feed is a forward-only live capture beginning 2026-04-21 (~102 usable days), while the sandbox window spans data_days=363. Bars before the feed's first print score signal=0 and can never trigger, so the strategy can only trade inside a single ~3.5-month regime. The sandbox confirms this: 19 total trades over 363 days (5 long / 14 short). Nineteen trades cannot populate a 3-window walk-forward (Phase 2) or the 15-day one-shot holdout (Phase 3), and cannot distinguish edge from noise. This is exactly the liquidation-history-ceiling / sub-100-trade measurability failure my prior learnings say to reject at Layer 4 rather than burn a full backtest + 3-phase optimization. No code change fixes it — there is no obtainable historical liquidation source (Binance discontinued daily liquidationSnapshot files; CDN returns 404), so OOS/holdout windows are unpopulatable by construction until the live capture accumulates years. - The LONG-SHORT hypothesis is not symmetrically testable: the gate fires ~33 SHORT vs ~10 LONG events over the full feed (sandbox 5 long / 14 short). The 'ride the squeeze LONG' half — the distinctive half of the continuation thesis — has too few observations to evaluate, making the strategy effectively short-biased on available data despite symmetric code. - Metrics are outlier-driven, consistent with n=19: Sharpe -0.233 and Sortino -0.085 are NEGATIVE despite total_return +5.15% and profit_factor 1.94, with kurtosis 78.8, skew -2.13, and Sharpe CI [-1.654, 1.571] straddling zero. avg_trade_return_pct 0.54% clears the fee floor but is not distinguishable from noise at this sample size.

Iteration History

Verification failed (Layer 4 — QA review): - STRUCTURALLY UNMEASURABLE — confirmed at iteration 2. No executable line changed since iteration 1 (only docstring/rationale updated). The sandbox corroborated the prior review: the entry gate depends entirely on the liquidation feed, a forward-only live capture beginning 2026-04-21 (~102 usable days; the whole liquidations table is post-2026-04-21, and data/supplementary/liquidationSnapshot/ holds ZERO parquet files). Sandbox = 19 trades over 363 days (5 long / 14 short), which cannot populate a 3-window walk-forward or the 15-day holdout. Metrics show the n=19 outlier signature (Sharpe -0.233 and Sortino -0.085 negative despite +5.15% return and PF 1.94; kurtosis 78.8; Sharpe CI [-1.654, +1.571] straddling zero). No code change fixes it — Binance discontinued daily liquidationSnapshot files and no backfill is obtainable, re-verified by the developer this cycle. - LONG-SHORT premise not testable on this data: 33 SHORT vs 10 LONG triggers over the full feed (5 long / 14 short in sandbox). The distinctive 'ride the squeeze LONG' half has too few observations, so the strategy is effectively short-only despite symmetric, correct code.

Iteration History

Verification failed (Layer 4 — QA review): - STRUCTURALLY UNMEASURABLE + NOW DECISIVELY FALSIFIED (iteration 3). No executable line changed since iteration 1. (1) MEASURABILITY — the gate depends entirely on the liquidation feed, a forward-only capture beginning 2026-04-21 (~102 usable days; liquidationSnapshot parquet tree empty; no obtainable backfill, Binance discontinued the daily files, CDN 404s re-verified). Sandbox = 19 trades over 363 days, which cannot populate walk-forward OOS or the 15-day holdout. (2) FALSIFICATION — the developer re-tested the exact ignition mechanism on a 5-year measurable proxy (DOGE OI-drop, 473,949 metrics readings 2021-2026, range-break and continuation direction unchanged). Continuation LOSES with significance at every threshold/horizon (deleverZ>=1.0+break n=981: -0.070% @15m t=-2.2, -0.595% @1440m t=-3.3; deleverZ>=2.5 n=95: -0.540% @60m t=-3.2) and the stronger the deleveraging the worse the continuation — the exact INVERSE of the premise. The gate carries information but in the FADE direction, not the continuation direction specified. - LONG-SHORT premise not viable on DOGE at any sample size: over 5 years of the OI-drop proxy the up-break/squeeze half is n=66 with nothing significant while the down-break half (n=114) is clearly negative — a structural market property. Symmetric, correct code; the data cannot exercise the LONG half.
Strategy report

Backtest and paper results are hypothetical. Trading involves risk of loss.