SpotMajorsMinimumVarianceLongOnlyBasket
Hypotheses
Minimum-Variance Long-Only Basket, Spot Majors (8 BINANCE_SPOT Names — Each Month Solve for the LONG-ONLY Weight Vector That MINIMIZES Portfolio Variance Given the Recent Covariance Matrix, Capped per Name to Avoid Degenerate Concentration; Harvest the Low-Volatility Structural Premium via Portfolio CONSTRUCTION, Not Signal Prediction, 2-Parameter)
Hypotheses
A LONG-ONLY, NO-LEVERAGE, MULTI-INSTRUMENT minimum-variance portfolio on 8 liquid BINANCE_SPOT majors (BTC, ETH, SOL, BNB, XRP, ADA, DOGE, LINK) — placed on the under-represented SPOT venue (12.0% vs the >=15% target), OHLCV-only (no supplementary-feed risk), same-venue (no L44 problem). It continues the ONE productive vein this factory currently has — STRUCTURAL, NON-PREDICTIVE edges that cannot be 'premise-falsified' the way the collapsing signal families (cross-sectional momentum, positioning fades, funding/OI/premium) keep being. Its edge is the low-volatility anomaly captured at the PORTFOLIO-CONSTRUCTION level: minimum-variance portfolios have historically delivered higher risk-adjusted returns (Sharpe) than equal- or cap-weighted portfolios of the same assets, because low-variance / low-correlation combinations are systematically under-priced relative to their risk. Each month it solves for the long-only weight vector minimizing forecast portfolio variance from the recent covariance matrix (capped per name to prevent an all-BTC degenerate solution). It is deliberately DISTINCT from my in-flight structural books: the rebalancing-premium basket holds FIXED risk-parity weights and harvests DRIFT, and the BTC vol-target scales a SINGLE asset by its own vol — this one DYNAMICALLY OPTIMIZES the cross-asset weight vector using the full covariance (correlations, not just individual vols) to sit at the minimum-variance point, a portfolio-construction edge neither of those expresses. It is also distinct from the dead betting-against-beta book (that was a dollar-neutral LONG-SHORT single-factor beta sort that found no_edge; this is a long-only minimum-variance PORTFOLIO, a different object). Monthly rebalance keeps the ~0.20% spot round-trip small. Just 2 parameters.
Hypotheses
Implements the hypothesis exactly as a portfolio-construction edge with no return forecast anywhere in the code. SOLVER: I validated the projected-gradient/capped-simplex solver on the real aligned 8-major BINANCE_SPOT daily panel (2,181 aligned days, 2020-08-11 to 2026-07-31): weights sum to 1.000000, the solution is genuinely diversified rather than a corner (mean weights BTC 0.297, BNB 0.269, ETH 0.156, XRP 0.146, ADA 0.050, DOGE 0.041, SOL 0.025, LINK 0.014, with ~2.4 names at the 0.30 cap on average), and 300 gradient iterations with a 50-step projection bisection reproduce the 400/80 solution to within 0.02% of the variance objective. COST CONTROL: the optimizer runs ONLY on rebalance days (~12 solves/year, ~0.1s each) - re-solving every bar would add ~18s+ of pure solver time to every backtest and hundreds of trials of optimization for a vector nothing acts on until the next month; between rebalances the signal is evaluated on the weights actually HELD. SIGNAL: calculate_signal returns the annualized forecast volatility of the held portfolio under todays covariance, a continuous value in natural units that varies every bar as the covariance estimate moves - it is the objective being minimized, not a gated trigger. FEES: monthly cadence over the measured history gives ~69 rebalances and ~3.9x book turnover per year before the no-churn filter, i.e. roughly 0.4% per year at the 0.10% spot one-way fee, and the 0.5%-of-book min_trade_frac trims the small legs further; the 365-day sandbox window (92-bar warmup) still yields ~9 rebalances and dozens of leg orders. VENUE: long-only, non-negative weights summing to 1, no leverage, so per the routing rule this is BINANCE_SPOT (CASH, leverage 1.0); all 8 legs are on the same venue and only OHLCV is used, so there is no cross-venue or supplementary-feed risk. PARAMETERS: exactly two searched knobs, cov_lookback and max_weight (the cap is auto-raised to 1/N if a user sets it below feasibility); cadence, cash buffer, no-churn threshold, min notional and solver iterations are fixed design constants. SAFETY: single synchronized panel trimmed as one unit so index -k is the same calendar day for every leg; a ridge on the covariance diagonal prevents a knife-edge solution on a rank-deficient window; non-finite gradients or weights fall back to the projected equal-weight vector; sells are floored to 6 dp and clamped to the holding so a rebalance can never become a phantom spot short.
Hypotheses
Not worth optimizing. (1) The reported return series is mismarked/degenerate: daily_returns contains single-day book gains of +186% (2021-04-03) and +134% (2026-02-06) that are mathematically impossible for a long-only, fully-invested, no-leverage basket of 8 majors — they are rebalance-anchored marks (a month+ of MTM booked on one date), which inflates 2021 to +1242% and makes Sharpe/max-drawdown/annual metrics unreliable in practice despite metrics_reliable=true; the 3-phase optimization's IS/OOS windows and 15-day holdout cannot be meaningfully evaluated on this lumpy series (symptom flagged, mechanism not independently confirmed). (2) Even so, the min-variance/low-vol thesis is falsified: max_drawdown is 70.5% (CI high 87.9%) — essentially the full crypto-basket drawdown, not the reduction the construction promises — and information_ratio is -0.21 (NEGATIVE) versus the equal-weight basket it is supposed to beat (benchmark_meaningful=true), so the low-volatility anomaly did not deliver higher risk-adjusted return than equal-weighting. (3) It is a closet long-basket beta play (beta 0.44, correlation 0.59): the 4506% headline is the 8 majors appreciating over 9 years, not construction alpha. This is the third structural-basket book this session with the same signature (50-74% drawdown, negative IR vs its basket benchmark, closet beta, degenerate hold-across-rebalance measurement). Optimizing 2 parameters cannot fix a falsified thesis or a mismarked return series. Abandon at BACKTEST_REVIEW rather than spend 2 hours.
Implementation
Long-only, unlevered minimum-variance portfolio of 8 BINANCE_SPOT majors (BTC primary, plus ETH, SOL, BNB, XRP, ADA, DOGE, LINK) on 1-DAY bars. Each month it solves min w-transpose S w subject to sum(w)=1 and 0 <= w_i <= max_weight, where S is the sample covariance of the last cov_lookback daily log returns, and rebalances the book to that weight vector. The solver is projected gradient descent in pure numpy: w <- P(w - step * S w) with P the Euclidean projection onto the capped simplex (bisection on the shift making sum(clip(v-theta,0,cap))=1) and step = 1/(2*||S||_inf). The per-name cap prevents a degenerate all-BTC corner. Nothing forecasts returns - the edge is the low-volatility anomaly captured at the portfolio-construction level. Rebalance is calendar-anchored monthly off the bar timestamp, legs whose delta is under 0.5% of book are left alone, sells are submitted before buys, every SELL only reduces an existing holding, and a 1% USDT cash buffer keeps a full allocation from being rejected on fees.
Verification Results
Evaluate risk-adjusted vs equal-/cap-weighted buy-and-hold over the full multi-year history; the low-vol anomaly cannot be judged from one down window.
Verification Results
Sandbox metrics (win_rate 0.11, PF 0.083, total_trades 9, avg_trade_return_pct -15.9%, total_return -30.9%, Sharpe -1.0) are NOT the L17 code-defect signature. trades_count is 40 fills across ~9 monthly rebalances, end_unrealized_pct positive (0.70), avg_holding 100d — an actively-rebalanced long-only min-variance basket held through a falling market. |Sharpe|=1.0 (<5), spot (no inverse-contract bug), construction is polarity-agnostic → beta/edge outcome, not a defect.
Verification Results
Backtest engineer: confirm the strategy return series aggregates all legs (not just primary) and the equal_weight_basket benchmark uses the same constituents/window.
Verification Results
Recurring cross-strategy anomaly (not a demonstrable defect here): benchmark_correlation 0.202 / beta 0.094 vs the equal-weight basket of the same 8 names is low for a fully-invested long book — now seen ~0.13-0.20 on both long-only spot baskets in this family. 40 fills confirm active investment, and min-variance concentration decorrelates somewhat, but the recurrence warrants verifying the multi-leg spot P&L/benchmark computation.
Verification Results
No code change; analyst must judge whether min-variance beats equal-weight on Sharpe/drawdown over full history net of ~0.4%/yr cost.
Verification Results
Efficacy caveat (not a fault): min-variance reduces but does not eliminate the dominant common crypto beta — the majors are highly correlated, so the book still carries substantial drawdown (34%). The 'higher risk-adjusted than equal-weight' claim must be tested as a RELATIVE comparison, not an absolute return in a down window.
Backtest Review
Correct venue routing (long-only/no-leverage → BINANCE_SPOT, under-represented bucket); OHLCV-only, same-venue, clean capped-simplex min-variance solver
Backtest Review
Genuinely non-predictive portfolio-construction edge family; only 2 parameters, huge capacity
Backtest Review
Uses the full covariance (correlations), a real object distinct from risk-parity/vol-target siblings
Backtest Review
Implausible single-day book returns (2021-04-03 +186%, 2026-02-06 +134%) for a long-only no-leverage basket — the daily-return series is rebalance-anchored/mismarked, inflating 2021 to +1242% and making Sharpe/DD unreliable
Backtest Review
max_drawdown 70.5% (CI high 87.9%) — the min-variance/low-vol thesis (reduce drawdown) is falsified; hard-floor violation
Backtest Review
information_ratio -0.21 (negative) vs the equal-weight basket it must beat — the low-vol anomaly did not deliver higher risk-adjusted return than equal-weight
Backtest Review
Closet long-basket beta play: beta 0.44, correlation 0.59; the 4506% is majors appreciating, not construction alpha
Backtest Review
Lumpy/degenerate return measurement (per-rebalance marks) means the 3-phase optimization's IS/OOS/holdout cannot be meaningfully evaluated
Outcome Summary
This strategy continued the session's one productive vein — structural, non-predictive edges — by dynamically optimizing a long-only minimum-variance weight vector across 8 spot majors using the full covariance matrix, a genuinely distinct object from its risk-parity-drift and single-asset vol-target siblings. The capped-simplex solver and construction were clean, but the backtest was the third structural-basket book that session to show the same signature: a 70.5% drawdown that flatly falsifies the low-vol drawdown-reduction thesis, a negative information ratio versus the equal-weight basket it was meant to beat, and a beta-0.44 closet-long profile whose 4506% headline was just the majors appreciating. The analyst abandoned it at backtest review, additionally flagging the return series as degenerate — impossible single-day book gains of +186% and +134% from rebalance-anchored marks inflating 2021 to +1242% — which made the metrics unreliable and the downstream walk-forward/holdout impossible to evaluate, concluding two parameters could fix neither the falsified thesis nor the mismarked measurement.
Outcome Summary
The minimum-variance/low-volatility anomaly did not survive in a crypto majors basket — full-covariance optimization still produced ~70% drawdown and failed to beat equal-weight risk-adjusted (negative IR) — and, like its structural-basket siblings, the hold-across-rebalance construction produces a rebalance-anchored return series with impossible single-day marks that makes the result both a closet beta play and structurally unmeasurable.
Outcome Summary
It was abandoned at the BACKTEST_REVIEW gate for three reasons: the return series is mismarked/degenerate (month-plus of MTM booked on single rebalance dates), so the 3-phase optimization's IS/OOS windows and holdout cannot be meaningfully evaluated; the min-variance/low-vol thesis is falsified (70.5% drawdown, negative IR vs its benchmark); and it is a closet beta play. Optimizing 2 parameters cannot fix a falsified thesis or a mismarked series, so it never reached optimization.
Outcome Summary
A long-only, no-leverage, multi-instrument minimum-variance portfolio on 8 liquid BINANCE_SPOT majors that each month solves for the capped long-only weight vector minimizing forecast portfolio variance from the recent covariance matrix (using full cross-asset correlations, not just individual vols), aiming to harvest the low-volatility anomaly at the portfolio-construction level — a structural, non-predictive edge rather than a directional signal.
Outcome Summary
The low-vol thesis was falsified and the return series was degenerate: max drawdown 70.5% (CI to 87.9%) — essentially the full crypto-basket drawdown rather than the promised reduction — and information ratio -0.21 (negative) versus the equal-weight basket it must beat, so the anomaly delivered no higher risk-adjusted return. It was a closet long-basket beta play (beta 0.44, correlation 0.59) whose 4506% headline is the majors appreciating over 9 years, and the daily-return series was rebalance-anchored with mathematically impossible single-day book gains (+186%, +134%) that inflated 2021 to +1242% and made Sharpe/drawdown unreliable.
Backtest and paper results are hypothetical. Trading involves risk of loss.