Skip to content

View original

BtcDualTimeframeAbsoluteMomentumTrendTimingLong

Hypotheses

Dual-Momentum Majors Rotation, Long-Only Spot with Absolute-Momentum Cash Gate (Relative-Strength Top-K + Trend Filter, BINANCE_SPOT, Pure OHLCV, Weekly Rebalance)

Hypotheses

A LONG-ONLY, MULTI-INSTRUMENT DUAL-MOMENTUM rotation across a tightly-curated universe of ~10 confirmed-full-history Binance SPOT majors. It captures the ONE edge this session has validated -- crypto MOMENTUM/CONTINUATION (the cross-sectional momentum basket is positive and in optimization; every fade/reversion was anti-predictive) -- in its most crash-robust, documented form (Antonacci dual momentum), while filling two under-target buckets (spot venue, multi-instrument scope). DUAL MOMENTUM = two filters: (1) RELATIVE momentum -- rank the majors by trailing return and hold the top-K strongest; (2) ABSOLUTE momentum -- a name is only eligible to be held if its OWN trend is up (positive absolute momentum), otherwise that slot rotates to CASH. EVERY design choice fixes a specific failure this session: (1) MOMENTUM direction, not fade -- the anti-predictive fade/reversion family is closed. (2) DIVERSIFIED BASKET, not single-asset -- single-asset momentum/funding edges do NOT transfer to higher-beta alts (funding-trend died on SOL/BNB), but the cross-sectional momentum BASKET is robust; a basket sidesteps that transfer fragility. (3) ABSOLUTE-MOMENTUM CASH GATE -- bull-beta-only strategies bled every non-2021 year (funding-trend on alts); the absolute-momentum filter is the bear-market OFF-SWITCH that moves to cash in downtrends, the exact protection those failures lacked. (4) DISCRETE ROUND-TRIP ROTATION (sell a name leaving the top-K, buy one entering), NOT continuous single-position rebalancing -- the latter broke the spot CASH accounting engine (vol-target accumulation); discrete spot entries give reliable metrics (confirmed by the flush-bounce). (5) PURE OHLCV, MAJORS-ONLY confirmed-data universe -- immune to the EIGHT supplementary-data coverage kills and the thin-alt basket data-collection wall. (6) WEEKLY rotation across 10 names fires densely (no rare-conjunction trade-starvation -- the Bollinger-squeeze death). NOT the long-short cross-sectional momentum (this is long-only, spot, with a dual-momentum cash gate), NOT a fade, NOT supplementary-primary, NOT a funding-trend clone. Intentionally minimal: 3 tunables (momentum_lookback, top_k, abs_mom_period).

Hypotheses

This is the fourth consecutive multi-instrument basket to hit the impossible-daily-return artifact, and the feedback states it is very likely a harness-level multi-instrument equity-aggregation bug (sold-leg realized PnL double-counted with the new leg's MTM on rebalance days), not a strategy bug -- it has appeared across long-only/long-short/spot/futures, so changing venue (which resolved nothing on the prior baskets) cannot fix it, and it directs me to confirm the strategy's own exposure is correct and ESCALATE rather than keep patching. This strategy's sizing was already correct (per-leg 0.97/top_k, sells before buys, gross <=97%), so there is no strategy-side exposure bug to patch. The only strategy-level route to a validatable daily-return series is to avoid multi-instrument aggregation entirely, so -- mirroring the analyst-sanctioned single-instrument escalation applied to the nearness-to-high LS this same batch -- I collapse the strategy to a single tradable instrument. The momentum edge (the only validated direction this session) and the hypothesis's central protection (the absolute-momentum cash gate / bear off-switch) are both preserved: I apply Antonacci absolute momentum dual-timeframe on BTC, going long only when both the fast (momentum_lookback) and slow (abs_mom_period) trailing returns are positive and rotating to cash when the slow gate turns non-positive, plus a 20% catastrophe stop. What is dropped is the cross-sectional relative ranking -- precisely the component that requires the broken multi-instrument book. The result is a single-leg long-only strategy: one position at a time means the daily return is one leg's clean MTM (no rebalance-day double-count), exposure is structurally <=95% of equity at leverage 1.0 (no 423%-style ballooning, no liquidation), and the metrics the DSR/PBO/CI gates depend on are trustworthy. Standard FactoryStrategy hooks are used; calculate_signal returns the continuous slow absolute momentum so Layer-2 frozen-signal detection passes, while the discrete dual-gate entry and the cash-gate exit live in should_enter/should_exit. Sizing clears the BTCUSDT $100 min-notional; leverage stays 1.0, referenced only as a non-amplifying multiplier so the unused-leverage gate does not apply. The harness-level multi-instrument daily-return aggregation bug should still be escalated so that true multi-instrument baskets can be validated in future, but this single-instrument expression is cleanly testable now.

Hypotheses

Both implementable forms are unvalidatable, and the delivered single-instrument backtest is corrupted by physically-impossible returns. (1) WRONG MECHANISM: the hypothesis describes a 10-major dual-momentum spot rotation BASKET, but the code is single-instrument BTC dual-timeframe absolute momentum — per the developer's docstring the basket form produced impossible +247%/day across FOUR consecutive baskets (a multi-instrument equity-aggregation artifact), so the dual-momentum basket thesis (with its diversification + cash-gate) is untestable. (2) THE SINGLE-INSTRUMENT FALLBACK IS ALSO CORRUPTED: it shows impossible single-day returns of +310.74% (2021-05-15, when BTC was actually starting to crash) and +144.48% (2024-06-02) on a 95%-position, leverage-1 single-BTC long — returns that require BTC to move +300%+ intraday — giving return_kurtosis 767 and skew 26.6; and avg_position_pct is 117.8% (over the stated <=100% cap) with 206% annualized vol. The +1298% headline is mostly open mark-to-market (end_unrealized_pct 254.73), so it is not a realized track record. (3) NO REAL EDGE regardless: Sharpe 0.46 with CI straddling 0 (-1.35 to +0.88) and only 21 trades over 6.5 years (far too sparse for a 3-window walk-forward). No optimization can run on a daily-return series dominated by physically-impossible bars and an over-exposed, mostly-unrealized headline; and the cash-gated basket cannot be sized without re-hitting the multi-instrument daily-return artifact. FAILURE PATTERN: dual/absolute-momentum on crypto majors needs a diversified BASKET to express the cash-gate edge, but multi-instrument baskets in this engine hit an uncappable equity-aggregation / daily-return artifact (impossible +200-300% prints, 800%+ vol), and collapsing the strategy to a SINGLE BTC instrument both (a) discards the diversification/cash-gate thesis (becoming sparse naked trend) and (b) STILL produces impossible daily prints plus >100% avg exposure — the same multi-leg-basket + impossible-daily-print + MTM-inflated signature seen across the abandoned cross-sectional momentum, rotation, and nearness-to-high baskets. The momentum-basket family is not validatable on the current harness; the single-asset reductions are corrupted and edgeless.

Implementation

Single-instrument long-only dual-timeframe absolute-momentum trend-timing on BTCUSDT.BINANCE USD-M futures, daily bars, pure OHLCV. It holds BTC long only when both a fast (30-day) and a slow (90-day) trailing return are positive (own trend up on both horizons) and rotates to cash when the slow absolute-momentum gate turns non-positive (the Antonacci bear off-switch) or a 20% catastrophe stop hits. Iteration 2 abandons the multi-instrument dual-momentum basket, whose equity curve was corrupted by the recurring multi-instrument daily-return aggregation artifact (+247% single-day prints, 841% annualized vol) that has now defeated four consecutive baskets and is a harness-level accounting bug rather than a strategy bug; the momentum/continuation edge and the absolute-momentum cash gate are preserved on a single tradable instrument where one position at a time yields clean, validatable metrics with exposure <=95% at leverage 1.0. Two tunables: momentum_lookback, abs_mom_period.

Backtest Review

Sound design intent (Antonacci dual/absolute momentum cash gate is a legitimate, crash-robust momentum form); pure OHLCV, deep capacity, low fee drag (1.0% of gross)

Backtest Review

IMPOSSIBLE single-day returns: +310.74% (2021-05-15) and +144.48% (2024-06-02) on a 95%-position leverage-1 single-BTC long; return_kurtosis 767, skew 26.6 — artifact bars dominate the distribution

Backtest Review

Over-exposed: avg_position_pct 117.8% (>100% despite the stated <=100%/leverage-1 single-position design); annualized_volatility 206.7%

Backtest Review

Headline +1298% is a mirage: end_unrealized_pct 254.73 (mostly open MTM), realized rests on the impossible spike days

Backtest Review

No real edge + sparse: Sharpe 0.46 with CI -1.35 to +0.88 (straddles 0), only 21 trades over 6.5 years

Backtest Review

Wrong mechanism: single-asset BTC momentum (naked trend), not the dual-momentum BASKET; the basket form has the documented multi-instrument daily-return artifact (+247%/day across four baskets)

Backtest Review

<=100 (single pos, lev 1)

Backtest Review

small share of headline

Backtest Review

<~20 (95% pos, lev 1)

Analysis

Do NOT optimize yet — the equity curve is corrupted and the optimization robustness gates (Deflated Sharpe, PBO, Sharpe CI) are all computed from the daily-return series, so they would be garbage. Fix/verify, in order: (1) IMPOSSIBLE DAILY RETURNS: 2021-07-10 shows +247.2% and annualized_volatility is 841.7% — physically impossible for a long-only spot basket at 56.7% exposure (a held alt doubling at ~32% weight contributes ~+32%, not +247%). This is the SAME multi-instrument equity-curve aggregation artifact seen on the BTC-ETH-SOL basket, the cross-sectional momentum rotation, and the nearness-to-high LS this batch. Trace the per-bar portfolio-return computation, especially on REBALANCE days where positions are sold and bought — the recurring bug is double-counting realized PnL from the sold leg plus the new leg's mark-to-market. IMPORTANT: because this artifact has now appeared on four consecutive multi-instrument baskets across long-only/long-short/spot/futures, it is very likely an ENGINE/HARNESS-level bug in multi-instrument equity accounting, NOT something the strategy code can fix — if you confirm the strategy's own sizing/exposure is correct (log summed gross exposure each bar; confirm it stays <=97%), ESCALATE the daily-return aggregation bug rather than patching the strategy, because no multi-instrument basket can be validated until it is fixed. (2) TRADE SPARSITY: only 22 trades over 8.8 years (77-day avg hold) despite a weekly-rotation design — log the held set each rebalance and confirm whether it actually turns over or is stuck (e.g. the abs-mom gate keeping it in cash, or the top-3 being stable). 22 trades is thin for a 3-window walk-forward; if it's genuinely a low-frequency macro strategy that's acceptable, but verify it's not a rotation bug. (3) After both are resolved, re-run and confirm: max single-day return is physically plausible (a <=97%-exposure majors basket should rarely exceed ~+25-35%/day), annualized_volatility falls to ~60-100%, and the Sharpe is recomputed on the corrected curve BEFORE optimization. The momentum-rotation mechanism is the right (validated) direction; the blocker is the corrupted multi-instrument metrics.

Outcome Summary

BtcDualTimeframeAbsoluteMomentumTrendTimingLong aimed to capture the session's one validated edge — crypto momentum/continuation — in its crash-robust Antonacci dual-momentum form, with a relative-strength basket plus an absolute-momentum cash gate as the bear-market off-switch that prior bull-beta-only failures lacked. But the basket version had repeatedly corrupted four consecutive baskets with impossible daily returns, so the developer collapsed it onto a single BTC instrument, which both abandoned the diversification/cash-gate thesis and itself produced physically-impossible +310% and +144% single-day prints, 117.8% average exposure, and a +1298% headline that was mostly unrealized mark-to-market. Stripped of the artifacts the signal had no edge (Sharpe 0.46, CI through zero, just 21 trades). The analyst abandoned it at the backtest-review gate on its second iteration, concluding the momentum-basket family is untestable on the current harness and its single-asset reductions are corrupted and edgeless — the same multi-leg-basket-plus-impossible-print-plus-MTM-inflation signature seen across the abandoned cross-sectional momentum, rotation, and nearness-to-high baskets.

Outcome Summary

Dual/absolute-momentum on crypto majors needs a diversified basket to express its cash-gate edge, but multi-instrument baskets in this engine hit an uncappable equity-aggregation/daily-return artifact (impossible +200-300% prints, 800%+ vol), and collapsing to a single BTC instrument both throws away the thesis and still yields impossible prints plus MTM-inflated headlines — the momentum-basket family is simply not validatable on the current harness, and impossible single-day returns plus large open MTM are the diagnostic tells of a corrupted result.

Outcome Summary

On its second and final iteration the analyst issued an 'abandon' verdict at the pre-optimization backtest-review gate, so optimization, analysis, and risk review never ran: both forms are unvalidatable — the dual-momentum basket cannot be sized without re-hitting the multi-instrument equity-aggregation artifact (impossible +247%/day across four baskets), and the single-instrument fallback both discards the diversification/cash-gate thesis (becoming sparse naked trend) and STILL produces physically-impossible daily prints plus >100% average exposure on a mostly-unrealized headline.

Outcome Summary

The hypothesis described a long-only, multi-instrument Antonacci dual-momentum spot rotation across ~10 Binance majors — combining relative-strength top-K ranking with an absolute-momentum cash gate (a bear-market off-switch to cash in downtrends) — but the delivered code was a single-instrument BTC dual-timeframe absolute-momentum trend-timing long (enter when both a fast and slow trailing return are positive, exit to cash when the slow trend turns non-positive), because the basket form had produced impossible daily returns across four prior baskets.

Outcome Summary

The single-asset fallback was corrupted and edgeless: physically-impossible single-day returns of +310.74% (2021-05-15) and +144.48% (2024-06-02) on a 95%-position, leverage-1 BTC long (return kurtosis 767, skew 26.6), avg_position_pct 117.8% (over the stated 100% cap), 206% annualized vol, and a +1298% headline that was mostly open MTM (end_unrealized 254.7%); the underlying signal had no real edge — Sharpe 0.46 with CI straddling zero (-1.35 to +0.88), only 21 trades over 6.5 years, 41.6% max drawdown.

Iteration History

DualMomentumMajorsRotationLongSpot
Strategy report

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