Skip to content

View translation

MidCapAltRelativeStrengthMomentumWeeklyRotationLong

Hypotheses

Mid-Cap Altcoin Relative-Strength Momentum Weekly Rotation, Long-Only with Absolute-Momentum Filter (8 Liquid Non-Major USD-M Perps: LTC/ETC/DOT/ATOM/NEAR/FIL/ALGO/EOS, Hold Top-3 by 30-Day Return, Sit in Cash When Trend Is Down, 3-Parameter)

Hypotheses

A LONG-ONLY cross-sectional momentum rotation that applies the factory's single most robust proven mechanism — relative-strength weekly rotation, the deployed 8-majors basket at Sharpe 2.6 — to a DELIBERATELY NON-OVERLAPPING universe of eight liquid MID-CAP USD-M perpetuals (LTCUSDT, ETCUSDT, DOTUSDT, ATOMUSDT, NEARUSDT, FILUSDT, ALGOUSDT, EOSUSDT), none of which appears in the promoted majors basket. Per L24 this is NOT a re-weighting of the same majors (which lands in the duplicate bucket) — it is a distinct market segment with materially LARGER cross-sectional dispersion, which is precisely what defuses the fee_edge death that kills tighter baskets. It deliberately avoids every recently-failed class: not a funding carry (the SOL cross-venue carry just confirmed alt funding is too thin net-of-basis; carry works only on BTC), not a single-name price bet (which overfits or blows up), not options (trade-count wall), not liquidations (data wall), not a cointegration pair (SOL-AVAX -82%). It rides the ONE long-only price edge that has actually survived optimization in this factory. Only 3 parameters (momentum lookback, top-K, absolute-momentum filter) to stay clear of the 235-death overfit graveyard, and an absolute-momentum gate sits the book in cash during broad bear regimes to avoid holding falling knives.

Hypotheses

Iteration 2 fixes the Layer-3 sandbox wall-clock timeout with the smallest possible change: the heavy rebalance engine (_maybe_rebalance -> builds the returns dict, sorts, and loops positions_open over 8 legs) is now invoked ONLY when _update_history reports a genuinely NEW daily close, instead of being called on every bar event from both calculate_signal and on_extra_bar. On same-day/intra-period bars the per-bar cost collapses to a single O(1) trailing-return lookup, so total work no longer scales with the number of bars in the smoke window. The config is pinned to 1-DAY bars for all eight legs (correct for a weekly rotation on 30-day returns and the minimal bar count), which further caps the smoke-window bar volume. All passing behaviour from earlier layers is preserved: imports, universe, signal scaffolding, sizing, and the long-only rotation logic are unchanged — only the throttle guard and the daily bar_type were touched. The signal returned by calculate_signal remains the continuous primary-leg trailing momentum (varies each bar); the actual rotation is executed inside the rebalance engine via _submit_entry_instrument/_submit_exit_position, as before.

Hypotheses

Not a robust edge and past the risk hard-abandon line. max_drawdown is 81.6% (CI to 98.9%), and the +741% headline is deceptive: end_unrealized_pct 589 means it is mostly open-position unrealized mark-to-market, while profit_factor is only 1.024 and Sharpe 0.48 has a CI [-0.18, 1.08] that straddles zero. The realized return is entirely carried by two altcoin bull years (2021 +1622%, 2024 +531%) with 5 of 7 years negative, and the most recent years are catastrophic (2025 -69%, 2026 -70%) — the edge has decayed/inverted outside bull regimes and the strategy is currently bleeding. With benchmark_correlation 0.60 / beta 0.55 this is levered altcoin beta; the 'larger dispersion' the hypothesis sold as an advantage manifests as an 82% drawdown, not durable alpha. This is the cross-sectional/TSMOM momentum-basket class that repeatedly hits the 50%+ drawdown hard-abandon and never survives optimization; tuning lookback_days/top_n/abs_mom_min cannot cut an 82% drawdown or create consistency from a 2-bull-years-plus-one-open-position distribution. Abandon rather than spend 2 hours.

Implementation

Long-only cross-sectional relative-strength momentum weekly rotation over an 8-name liquid mid-cap USD-M perp universe (LTC/ETC/DOT/ATOM/NEAR/FIL/ALGO/XLM; EOS replaced with XLM because EOS USD-M is delisted and would abandon the basket). Uses 1-DAY bars, ranks all legs by trailing 30-day total return every 7 days, holds equal-weight the top-3, and applies an absolute-momentum gate (abs_mom_min) that sits any un-trending slot in cash during broad bear regimes. Three core parameters only (lookback_days, top_n, abs_mom_min).

Verification Results

Verification failed (Layer 3 — sandbox backtest): smoke test exceeded the 300s wall-clock limit. This almost always means per-bar work that scales with history — e.g. rescanning the full funding/supplementary series, or rebuilding a list and calling min()/sorted() inside calculate_signal()/on_bar() on every bar. Precompute sorted timestamp arrays ONCE in __init__ and use bisect, or cache lookups keyed by timestamp, so per-bar cost is O(log n) not O(n).

Verification Results

Analyst: ABANDON, not optimize — turnover 7.8 rules out fees; the directional edge is negative.

Verification Results

Decisively negative edge: PF 0.10, avg_trade_return_pct -8.34%, total_return -56.8%, win_rate 0.214, inverted payoff (avg_loss 2.6× avg_win). Confirmed NOT a ranking-polarity bug — sorted(reverse=True)[:top_n] buys the highest-momentum names, abs_mom gate holds only positive trend. It's a momentum crash on high-dispersion mid-caps: weekly lag holds reversing names until they exit the top-3. Edge/regime outcome, not a code defect.

Verification Results

Informational for analyst/research lead.

Verification Results

Cross-sectional momentum rank is a named zero-survivor class (L7); re-parameterizing onto a mid-cap universe didn't change the outcome — the 'larger dispersion defuses fee-edge death' premise fails (loses on direction, not fees).

Verification Results

Confirm XLMUSDT.BINANCE 1-DAY data spans the full window.

Verification Results

Universe deviates from the hypothesis: EOS→XLM. Documented and defensible (EOS USD-M delisted; a dead leg would abandon the whole basket); XLM is an equivalent liquid non-major preserving the thesis. Warning, not critical.

Verification Results

Low count is a holdings-persistence artifact, not a gating-too-rarely bug.

Verification Results

Low trade count (28 over 363 days), below the ~100 comfort floor — no ambiguity here since the result is decisively negative, but confirm a larger sample in the full backtest.

Backtest Review

Applies a genuinely proven mechanism (cross-sectional relative-strength rotation, deployed majors basket Sharpe 2.6) to a non-overlapping universe; absolute-momentum cash gate is sensible

Backtest Review

avg_trade_return_pct 8.19% clears fees comfortably (the mechanism is not fee-fragile), and the code runs cleanly (213 trades, no liquidation)

Backtest Review

max_drawdown 81.6% (CI to 98.9%) — past the 50% hard-abandon line; this is levered altcoin beta (corr 0.60, beta 0.55)

Backtest Review

Headline +741% is mostly unrealized: end_unrealized_pct 589 — an un-exited open position at backtest end, not a realized edge

Backtest Review

profit_factor 1.024 (barely >1) and Sharpe 0.48 with CI [-0.18, 1.08] straddling zero — no statistically distinguishable edge

Backtest Review

Outlier/regime-dependent: 2021 +1622% and 2024 +531% carry everything while 5 of 7 years are negative (2025 -69%, 2026 -70%)

Backtest Review

Recent realized performance is catastrophic (2025/2026 both ~-70%) — the alt-momentum edge has decayed/inverted out of the bull regimes

Outcome Summary

MidCapAltRelativeStrengthMomentumWeeklyRotationLong ported the factory's most proven long-only edge — cross-sectional relative-strength weekly rotation — to a non-overlapping basket of eight liquid mid-cap perps, betting their larger dispersion would defuse the fee-edge deaths that kill tighter baskets. The backtest ran cleanly (213 trades, no liquidation, 8.19% avg trade return), but its eye-catching +741% return was mostly unrealized open-position mark-to-market, its profit factor was barely above 1.0, and its Sharpe CI straddled zero. Worse, an 81.6% max drawdown pushed it past the 50% hard-abandon line, and the return leaned entirely on 2021 and 2024 bull years while the most recent two years bled ~-70% each. The analyst abandoned it at the backtest-review gate, judging it levered altcoin beta rather than durable alpha and beyond what tuning lookback/top-n/filter could fix.

Outcome Summary

Reusing a mechanism that worked on one universe does not transfer the edge — on higher-dispersion mid-caps, cross-sectional momentum manifested as levered altcoin beta with an 80%+ drawdown, and a headline return dominated by unrealized open-position marks and two bull years is not a durable, regime-robust edge.

Outcome Summary

The analyst issued an 'abandon' verdict at the pre-optimization backtest-review gate: the 81.6% max drawdown blew past the 50% hard-abandon line, the headline gain was mostly an un-exited open position rather than realized edge, and with a near-1 profit factor and a Sharpe CI straddling zero it was judged levered altcoin beta with a decayed/inverted edge that parameter tuning could not rescue.

Outcome Summary

A long-only cross-sectional relative-strength momentum rotation that held the top-3 of eight liquid mid-cap USD-M perps (LTC/ETC/DOT/ATOM/NEAR/FIL/ALGO/XLM, replacing the delisted EOS) ranked by 30-day return, rebalanced weekly, with an absolute-momentum filter that sits the book in cash during broad bear regimes — porting the factory's proven majors-basket mechanism to a deliberately non-overlapping, higher-dispersion universe.

Outcome Summary

Over ~2020–2026 it ran cleanly with 213 trades, no liquidation, and avg_trade_return_pct of 8.19% (clearing fees), but its +741% headline return was mostly unrealized (end_unrealized_pct 589%) with profit_factor just 1.024 and Sharpe 0.48 (CI [-0.18, 1.08] straddling zero). It carried an 81.6% max drawdown (CI to 98.9%), 0.60 benchmark correlation / 0.55 beta, and returns concentrated in two bull years (2021 +1622%, 2024 +531%) against 5 of 7 years negative, including ~-69% in 2025 and ~-70% in 2026.
Strategy report

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