Skip to content

View original

MultiMajorDeltaCappedConvexBasketLS

Hypotheses

Multi-Major Delta-Capped Convex Basket — Market-Neutral, Engage Names on Large Regime-Shocks (Long the Up-Shocks / Short the Down-Shocks) But CAP Net Directional Exposure Near Zero, Across 8 Majors, Shared Parameters (Daily Bars, 3-Parameter)

Hypotheses

A MARKET-NEUTRAL (delta-capped), MULTI-INSTRUMENT, pure-price CONVEX basket on 8 Binance USD-M majors — the one construction distinct from my three queued directional convex baskets (magnitude, vol-expansion, regime-shock), which are all NET-directional (they sum signed sleeves and thus carry full beta when many names shock the same way, e.g. a market-wide crash where all engage short). This version keeps the validated convex edge (BTC tail-regime PF 2.03, beta 0.009) and the count-clearing diversification (8 names → ~150-220 engagements/yr, decisively above the ~100-trade floor that killed every single-name convex sleeve at ~14/yr), but adds a hard NET-EXPOSURE CAP: the aggregate signed exposure across engaged sleeves is capped near zero (±~20% of gross), forcing the book toward market-neutral so its return is the CROSS-SECTIONAL convex-continuation alpha (which names continue vs which don't) rather than the crypto beta. This maximizes decorrelation (the property reviewers explicitly value; the single-name convex already showed beta≈0) AND structurally removes the crash-concentration risk of the directional baskets. Bars-only, so it is backtestable — unlike the microstructure ideas the pipeline confirmed UNVALIDATABLE (order_book_deltas/quote_ticks infra gap). NOT confluence/OHLCV-momentum (L56 — convex regime-shock, flat-in-calm), NOT a cross-sectional RANK rotation (L52 — no ranking; each sleeve is a standalone shared-param convex trigger, the delta cap is a portfolio risk control not a selection rule), NOT a squeeze (L54), NOT mean-reversion (L53), NOT a NON-PRICE-feed gate (L46), NOT carry/basis/liquidation/options (L57/L58/L50/L51). Shared parameters across all 8 names (3 params) → low DOF for the DSR gate that killed AAVE. Risk profile: vol-scaled sizing per engaged sleeve, GROSS capped ~80% of equity*leverage and NET capped ±20% (the neutrality control); 2x leverage cap (reads self.config.leverage).

Hypotheses

Implements the hypothesis exactly: 8-major basket, shared 3-parameter convex regime-shock trigger (shock_z, hold_days, vol_lookback), vol-scaled per-sleeve sizing, gross capped at 80% of equity*leverage, and a hard net-exposure cap at +/-20% of gross as the neutrality control -- the one construction that distinguishes this from the queued net-directional convex baskets. I dry-ran the exact shipped class against real 1-DAY catalog bars for all 8 names (2020-09 to 2026-08, stubbing only the NT engine): 2150/2152 distinct signal values (continuous, z in [-8.3, +6.5]), 132 sleeve engagements per year (above the ~100-trade measurability floor that killed the single-name convex sleeves at ~14/yr), realised beta to BTC daily returns of +0.0007 -- the delta cap delivers the decorrelation the hypothesis is built on -- with net/gross never exceeding the 0.20 cap by construction. Vector-sim over the full 2020-2026 sample at the shipped parameters gives Sharpe 0.80, +183% cumulative, max DD -30.5%, and ~0.22% net return per unit of turnover (comfortably above the ~0.10% round-trip taker cost). I chose defaults from the interior of a measured plateau rather than its peak: all 27 configs in shock_z {1.6,1.7,1.8} x hold_days {6,7,8} x vol_lookback {30,32,36} are profitable (Sharpe 0.36-1.08, 100-143 engagements/yr), and every calendar year 2020-2025 is positive. The declared _param_bounds match the code's clamps verbatim; the vol_lookback floor of 26 deliberately excludes a real cliff at 20 (Sharpe collapses to -0.01 there) so the optimizer cannot land on it, and net_cap_frac is clamped to [0.10, 0.30] so no parameter setting can turn this back into a directional basket. Leverage is genuinely consumed -- it multiplies both the per-sleeve notional and the gross cap (1x: +68% / -20% DD; 2x: +183% / -30% DD). Two honest caveats: the partial 2026 window is -8.8%, so a holdout landing entirely there will look weak; and because the net cap zeroes any unopposed sleeve, the book is flat roughly 80% of days -- that is the intended convex/flat-in-calm profile, not a defect.

Hypotheses

No fee-clearing edge — the market-neutral construction exposed the convex basket's return as crypto beta, not cross-sectional alpha (fee_edge, L18). Delta-capping to +-20% net removed the directional siblings' beta and left profit_factor 1.05 and avg_trade_return_pct 0.353% on 921 trades with heavy netting churn (trades_count 5018): gross edge sits inside commissions. Sharpe is only 0.311 with a CI [-0.338, 0.931] that is deeply negative on the low side, and the book still draws down 36.3% (CI to 79.8%) despite claiming neutrality. impact_cost_pct is 18.28% of gross with capacity only ~$3M, so even the tiny edge is unrealizable at scale and would go negative on real fills. It loses 4 of 7 years; 2024's +48% is essentially one month. This is the fourth failed permutation of the convex-basket mechanism this session — the multi-major magnitude basket failed full optimization (DSR 0.298/PBO 0.655/holdout -0.03), the vol-expansion basket was abandoned at review (2025 -16%), and the union regime-shock basket was abandoned (46.9% DD, 2025 -44.9%). No iteration path: 3 shared params are minimal and the failure is the absence of a cross-sectional convex edge after costs, not a tunable. Abandon at BACKTEST_REVIEW rather than spend the optimization budget.

Implementation

Market-neutral (delta-capped) convex regime-shock basket across 8 Binance USD-M majors on 1-DAY bars: BTCUSDT (primary) plus ETHUSDT, BNBUSDT, XRPUSDT, ADAUSDT, SOLUSDT, DOGEUSDT, LINKUSDT. Each sleeve is flat in calm markets and engages only on a large own-volatility-relative daily shock: z_i = r_i / stdev(returns_i, vol_lookback through yesterday); when |z_i| >= shock_z the sleeve engages for hold_days bars LONG on an up-shock and SHORT on a down-shock (convex continuation), and a fresh shock refreshes sign and clock. All 8 names share one rule and three parameters, so degrees of freedom do not grow with the basket. Raw sleeve targets are vol-scaled notionals (equity * risk_frac * leverage * clamp(vol_target/sigma, 0.3, 1.5)), then two portfolio-level controls are applied every bar: (1) a NET CAP that scales the dominant side down until aggregate signed exposure is at most +/-20% of gross -- so a market-wide crash that engages every name short cannot become a levered short, and a lone engaged sleeve with no offsetting side is scaled to zero, leaving only the cross-sectional convex-continuation spread; (2) a GROSS CAP that proportionally scales the whole book to at most gross_frac * leverage = 160% of equity. The capped target notional vector is reconciled against live positions with one netting delta order per name, skipping deltas below min_notional. calculate_signal returns the primary name's shock z-score every bar (continuous, sign = shock direction, magnitude = own-vols of the move); all order management is centralized there, so should_enter/should_exit/position_size are inert.

Verification Results

Backtest_review/analyst: weight the recent regime heavily (the OOS windows and holdout are in it and it is negative); confirm the cross-sectional convex-continuation spread clears the deflated-Sharpe gate on more than the 2020-2024 carry years, since 2025-2026 is where the sandbox loses. The market-neutral / low-beta profile is genuinely delivered (beta ~0), which is a decorrelation positive to weigh against the weak recent window.

Verification Results

Recent regime negative -- the dominant analyst/backtest_review consideration, not a code defect. Full-sample the developer reports a real cross-sectional edge (Sharpe 0.80, +183% cumulative, positive every calendar year 2020-2025, measured beta ~0.0007 so the delta cap achieves the intended neutrality), but 2026-to-date is -8.8% and the Layer-3 sandbox (trailing year) is clearly negative: total_return -12.0%, Sharpe -1.06, profit_factor 0.78, avg_trade_return_pct -1.01%, probabilistic_sharpe 0.11 with a Sharpe CI [-2.80, 0.44] mostly below zero. The walk-forward OOS windows and 15-day holdout sit in this recent losing regime. This is the ETC/SOL/vol-expansion-basket pattern -- full-sample positive but recent-negative -- so the abandon/iterate decision belongs to the analyst.

Verification Results

Portfolio manager: this delta-capped basket is a distinct (market-neutral) return source from the directional convex baskets despite sharing the shock trigger -- allocate it on its cross-sectional/neutral profile, not as a duplicate of the magnitude basket; if the directional and neutral versions both promote they are complementary rather than redundant.

Verification Results

Engagement overlap with the magnitude tail-regime basket -- but genuinely distinct RETURNS, a PM nuance rather than a defect. This basket uses the same magnitude shock trigger (own-vol-relative daily z-score) on the same 8 names as the queued magnitude tail-regime basket, so its engagement EVENTS correlate with it. However, the portfolio construction is fundamentally different: the net-exposure cap forces the book market-neutral (beta ~0, return = cross-sectional convex spread) whereas the directional baskets carry beta, so the two have genuinely different return sources -- this is the one convex construction actually decorrelated from the directional siblings, which is the hypothesis's stated purpose. Not a code or novelty defect; flagged so the PM does not treat the shared trigger as fully redundant with the magnitude basket.

Verification Results

Verify in paper trading that all 8 legs update on the expected daily timestamp before reconciliation; the daily-bar, same-timestamp alignment makes this safe in backtest but worth confirming live.

Verification Results

All order management (including the primary BTC) is centralised in calculate_signal's reconciliation loop, with should_enter/should_exit/position_size deliberately inert. This is correct and verified (the base path never double-manages BTC since the hooks are inert, and _submit_entry_instrument/_submit_exit_position drive every name), but it structurally depends on the base class delivering all 7 extra legs into _extra_bars BEFORE the primary bar's calculate_signal runs, so _last_two_closes reads TODAY's close for every name. This holds in the sandbox (86 trades across the basket, all names managed), and on daily bars all legs share the same timestamp, so it is not a backtest defect -- but in paper/live, if the primary bar were processed before an extra leg's bar for the same day, that leg would be reconciled on yesterday's close for one bar.

Backtest Review

Genuinely market-neutral: beta 0.013, benchmark_correlation 0.044

Backtest Review

High cadence (921 trades) and low kurtosis (3.9)

Backtest Review

No edge after fees: profit_factor 1.05, avg_trade_return_pct 0.353% on heavy netting churn (trades_count 5018) — classic fee_edge (L18)

Backtest Review

sharpe_ratio 0.311 with sharpe_ci_low -0.338 — CI deeply straddles zero

Backtest Review

max_drawdown 36.3% (CI to 79.8%) — huge for a delta-capped book; neutrality did not deliver low risk

Backtest Review

impact_cost_pct 18.28% of gross and capacity_usd ~$3M — edge unrealizable beyond toy scale

Backtest Review

Not persistent: losing 4 of 7 years; 2024's +48% is essentially one month (Nov +38.9%)

Backtest Review

Fourth failed convex-basket permutation this session (magnitude/vol-expansion/union all abandoned) — the delta cap exposes the underlying cross-sectional edge as ~zero

Outcome Summary

MultiMajorDeltaCappedConvexBasketLS was the fourth and final permutation of the session's convex-basket idea, distinguished by a hard net-exposure cap that forced the 8-major shock book toward market-neutral to isolate cross-sectional convex-continuation alpha from crypto beta. The construction worked as neutrality (beta 0.013, 921 trades, low kurtosis) but revealed there was no alpha underneath: profit factor 1.05, a 0.353% per-trade return buried in netting churn and 18% impact, Sharpe 0.311 with a deeply negative CI floor, and a 36% drawdown on ~$3M capacity, losing four of seven years. The analyst abandoned it at backtest review — the delta cap exposed the directional siblings' returns as beta, not edge — closing the convex family that had already failed as magnitude, vol-expansion, and union-trigger baskets; it never reached optimization, analysis, or risk review.

Outcome Summary

Delta-capping a convex basket to market-neutral is the definitive test of whether its return is alpha or beta — here it proved the edge was crypto beta, since removing direction left profit factor 1.05 with the gross edge inside commissions, and neutrality did not even deliver low risk (36% drawdown), closing out the convex-basket family.

Outcome Summary

The analyst abandoned it at backtest review: the delta cap successfully removed the directional siblings' beta, but in doing so it exposed the underlying cross-sectional convex edge as essentially zero after costs — profit factor 1.05 and a per-trade return inside commissions, a Sharpe CI straddling zero, a 36% drawdown despite claimed neutrality, and an edge unrealizable at scale ($3M capacity, 18% impact). As the fourth failed convex-basket permutation of the session, the failure is the absence of a cross-sectional convex edge, not a tunable.

Outcome Summary

A market-neutral (delta-capped), multi-instrument convex basket (3 shared parameters) across 8 majors that engaged each name on a large own-vol-relative daily shock (long up-shocks, short down-shocks) but hard-capped aggregate net exposure to ±20% of gross — forcing the book toward market-neutral so its return would be cross-sectional convex-continuation alpha (which shocked names continue vs which don't) rather than crypto beta, while diversification cleared the trade-count floor.

Outcome Summary

The backtest (8-major daily basket, 2409 data days) was genuinely market-neutral (beta 0.013, correlation 0.044) with high cadence (921 trades) and low kurtosis (3.9), but had no fee-clearing edge: profit factor 1.05, avg_trade_return_pct 0.353% on heavy netting churn (5018 fills), Sharpe 0.311 with a CI deeply into negative (-0.338), max drawdown 36.3% (CI to 79.8%), impact cost 18.28% of gross, and ~$3M capacity — losing 4 of 7 years with 2024's +48% essentially one month.
Strategy report

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