Skip to content

View original

LinkPerpIndexBasisReversionLS

Hypotheses

LINK USD-M Perp-Index Basis Reversion, Long-Short (Single-Instrument BINANCE Perp, 15m Bars + Multi-Year PREMIUM/MARK-INDEX Feed, Fade Intraday Perp-vs-Spot Dislocations Back to Index, 3-Parameter)

Hypotheses

A LONG-SHORT, single-instrument, short-horizon microstructure strategy on LINKUSDT.BINANCE (USD-M perp, 15m bars) that trades the intraday convergence of the perpetual toward its own spot INDEX using a genuine NON-PRICE feed: the Binance premium/mark-index basis (mark_price vs index_price, the same quantity the exchange samples to compute funding). Core idea distinct from anything deployed: when leveraged flow pushes the perp to a large PREMIUM or DISCOUNT versus the underlying spot index, that gap is an arbitrage-closable dislocation that reverts on an INTRADAY timescale (minutes-to-hours) as basis arbitrageurs and index-anchored market-makers pull the perp back — a faster, mechanically-different effect than the 8h funding cycle. This is NOT the exhausted funding-EXTREME direction bet on majors (L13): the signal is the instantaneous basis z-score and the exit is convergence to index, not a funding stamp; and it is on a mid-cap major-alt where basis overshoots are large enough to clear fees, not BTC/ETH where they are ~1bp. It is NOT a two-leg cash-and-carry (L28/L1) — it is a SINGLE-LEG directional trade on the perp only, so it pays one ~0.10% round trip, not two. It is NOT pure-OHLCV (L30) — price is only the convergence target; the entry REQUIRES the basis feed. Differentiated from my prior taker-flow reversion (uses basis, not aggressor volume) and from the deployed SOL VWAP reversion (basis-vs-index dislocation, not price-vs-VWAP; different instrument). Deliberately 3-parameter to fight overfit (#1 killer, 229x). Fills three under-represented buckets: long-short direction (14.4%), short horizon (7.9%), and a crypto-native microstructure mechanism the portfolio barely touches.

Hypotheses

Iteration 3 fixes the Layer-4 negative-gross-expectancy / inverted-reward-risk verdict with a STRUCTURAL change to the mechanism (not a re-parameterization, which the reviewer said cannot flip the edge). Root cause: the blind fade entered dislocations while the perp was STILL accelerating away from index, getting run over -- the source of avg_loss ~2.2x avg_win and the catastrophic adverse tails (skew -15.5, largest_loss -$934). Fix 1 (reversal-confirmed ENTRY): fade only after the basis extreme has peaked and turned back toward index (z retreating in magnitude vs the prior bar), so the trade rides the convergence instead of catching a falling knife; this directly removes the run-over losers. Fix 2 (thesis-invalidation EXIT): if the basis re-widens past the extreme we faded (z beyond the entry reference), cut immediately rather than waiting for the pct stop, capping the adverse tail. Both use pure sign checks on the z-series -> NO new parameters, so it stays 3-core-parameter and remains a hypothesis-faithful basis-reversion fade (signal is the instantaneous basis z; exit is convergence to index; single-leg directional; entry REQUIRES the premium feed). Earlier passing layers are untouched: imports unchanged, module-level bar-ts helper preserved for the Layer-2 proxy, subsampled premium parse keeps __init__ timeout-safe, leverage=1.0 and the 1x-equity notional cap from iter-2 are retained so the blowup stays fixed.

Hypotheses

Negative-expectancy single-perp basis-reversion fade that LIQUIDATED the account (total_return -100%, max_drawdown 100%, liquidation 2022-09-01; annual returns 2020 -35%, 2021 -65%, 2022 -114% then flat). Over 2,612 trades: profit_factor 0.55, Sharpe -1.46 (CI [-5.74, -1.29] fully below zero), PSR 0.0, expectancy -$69/trade, avg_trade_return_pct 0.030% (below the 0.15% fee floor). The 'fee-light/single-leg' thesis failed: 2,612 trades on 15m with a 46-minute average hold is high turnover, and commissions are 32% of gross (total impact $138k). It is a picking-up-pennies blowup — avg_loss ($281) > avg_win ($186), tail_ratio 0.29, skew -35.8, kurtosis 1331 — and the iter-3 reversal-confirmed entry / thesis-invalidation exit did not stop the falling-knife losses that liquidated the book. This is the L73 single-perp supplementary-gated (premium/basis feed) directional family, and basis-reversion dislocations on an alt perp also carry stale-leg/overshoot artifact risk. No parameter tuning of basis_window/entry_z/hold_bars flips a below-fee-floor negative per-trade edge positive or repairs a liquidation. Failure pattern: fee_edge/no_edge single-perp basis-reversion fade, liquidated. Not worth 2 hours of optimization.

Implementation

Single-instrument long-short microstructure strategy on LINKUSDT.BINANCE (USD-M perp, 15m bars) that fades intraday perp-vs-spot-index basis dislocations back to the index, using the Binance premium_index (mark - index) feed. Enters on CONFIRMATION that a basis extreme has peaked and begun reverting toward index (short once a premium z>=entry_z starts falling; long once a discount z<=-entry_z starts rising), then exits on convergence (|z|<=exit_z), thesis-invalidation (basis re-widens past the entry extreme), a time stop, take-profit, or protective stop. leverage=1.0, notional hard-capped at 1x equity.

Verification Results

CLEAN RESTART 2026-09-04 — this run's verdict history and learning records were removed and it was restarted from verification. Its previous abandonment came from the pipeline, not from the market: the Layer-2 harness mis-bound @staticmethod helpers (fixed), QA issued terminal performance verdicts on an unoptimized smoke test (removed — QA now judges correctness only), and sandbox timeouts came from backtest-slot starvation (fixed). The hypothesis and the strategy code are unchanged. Verify the code on its merits; performance is decided later by the full backtest and the optimizer.

Verification Results

Thin fee/edge margin by construction: exit_z 0.5 and hold_bars 10 produce small per-trade moves; sandbox shows 67% commission-of-gross and negative net per-trade return. Structurally TP 1.5%/stop 1.0% clear the 0.15% floor so it's not a hard fee-viability violation, but realized edge doesn't cover costs in the smoke window.

Backtest Review

Uses a genuine non-price feed (premium/mark-index basis), single-leg, timeout-safe O(log n) lookups; direction-balanced (1500 long / 1112 short)

Backtest Review

Account LIQUIDATED 2022-09-01: total_return -100%, max_drawdown 100% (CI to 100%), CAGR -100%; corrupted post-blowup equity (daily returns +304%/-266%)

Backtest Review

Negative expectancy: profit_factor 0.55, Sharpe -1.46 (CI [-5.74, -1.29]), PSR 0.0, expectancy -$69/trade over 2,612 trades

Backtest Review

Fee-heavy despite the 'fee-light' claim: avg_trade_return_pct 0.030% (below the 0.15% floor), commission 32% of gross, total impact $138k, 46-minute average hold

Backtest Review

Picking-up-pennies blowup: avg_loss > avg_win, tail_ratio 0.29, skew -35.8, kurtosis 1331 — the reversal-confirmed fade still caught falling knives into liquidation

Backtest Review

L73 single-perp supplementary-gated (basis feed) directional family; basis-reversion dislocations on an alt perp also carry stale-leg/overshoot artifact risk

Iteration History

Verification failed (Layer 4 — QA review): - Catastrophic liquidation. Sandbox liquidated the account: total_return -100%, max_drawdown 100%, liquidated=true (2026-05-28), Sharpe -2.75, avg_position_pct 317%. The combination of leverage 2.0 (notional grows to ~3x a shrinking equity base), a mean-reversion FADE that leans into the move and can catch an unbounded trend, and a soft stop_pct=2.0 evaluated only at 15m bar close (fast intrabar moves blow through it) is a liquidation path. Critical risk defect, not merely weak performance. - Negative-edge/fee failure independent of the blowup: avg_trade_return_pct -0.076% (negative, below fees), profit_factor 0.36, win_rate 0.447 with inverted reward/risk (avg_loss $1132 ≈ 2.25x avg_win $502) on a decisive 293-trade sample. Same single-name mean-reversion fade signature that has died repeatedly this session (SOL/ETH/XRP/DOGE/LINK). The LINK 15m basis dislocation does not revert with enough net magnitude to clear the round trip.

Iteration History

Verification failed (Layer 4 — QA review): - The iter-2 de-risk fixed the blowup but NOT the edge. On a well-sampled 182-trade run the mechanism is still a decisive net loser with negative per-trade expectancy: avg_trade_return_pct -0.042% (below the 0.15% futures floor and the ~0.10% round trip), profit_factor 0.36, total_return -18.98%, Sharpe -2.50 (CI [-5.51,-2.08], entirely negative). Reward/risk is STILL inverted despite tightening stop_pct to 1.0 and raising entry_z to 2.6: avg_loss $290 ≈ 2.19x avg_win $132, with catastrophic tails (skew -15.5, kurtosis 271, largest_loss -$934 vs largest_win $433). Raising entry_z created no edge — it only shrank the sample. Same single-name fade-reversion death class that keeps failing this session; no re-parameterization flips negative gross expectancy.

Iteration History

Verification failed (Layer 4 — QA review): - The iter-3 structural change (reversal-confirmed entry + thesis-invalidation exit) did NOT fix the edge — the result is a near carbon-copy of iter-2. On 180 trades: total_return -18.94% (iter-2 -18.98%), avg_trade_return_pct -0.037% (negative, below fees), profit_factor 0.38, Sharpe -2.26 (CI [-4.29,-1.53]), win_rate 0.44 with the SAME inverted reward/risk it targeted — avg_loss $304 ≈ 2.04x avg_win $149 — and persistent catastrophic tails (skew -11.96, kurtosis 194, largest_loss -$977). Waiting for the z to turn before entering did not stop the perp running; the invalidation exit did not cap the tail. Three iterations confirm no fee-clearing edge (iter-1 -100% liquidation, iter-2 -18.98%, iter-3 -18.94%).
Strategy report

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