Strategies
AVAX 4H Supertrend Trend-Following Long (10, 3.0)
Outcome: Abandoned
AvaxFourHourSupertrendTrendFollowingLong
Adequate history (13,025 4H bars, 2020-2026) and clean 140-trade sample — not a data-coverage problem
Hypothesis
Replicates the session's only positively-performing indicator class (Tier-1 path-dependent ATR trend filter), directly validated by the approved DOT Supertrend (Sharpe +1.17) using these exact canonical parameters (10, 3.0). AVAX is the symbol-diversification axis: 4.5+ years of Binance USD-M data and not currently a Tier-1 portfolio strategy. ITER-6 addresses the reported Layer-2 frozen-signal failure: I reproduced the exact strategy through the real Layer-2 verifier and confirmed the current momentum-blended signal already produces 476 unique signals per scenario (the stale feedback's value=1.0 matched an earlier pure-direction version). To guarantee forward progress and eliminate the one theoretical freeze path, I hardened only the degenerate atr<=0 fallback with a close-relative scale, leaving the primary ATR>0 path and the SIGN byte-identical — so no earlier passing layer (static imports, trade generation) can regress. Verified: all 6 synthetic scenarios pass with zero frozen-signal warnings in ~0.7s each (no Layer-3 timeout risk).
Fatally broken on two independent counts. (1) The account was LIQUIDATED (2026-06-21): total_return -100%, max_drawdown 100%, avg_position_pct 1048% — the equity*position_pct*leverage sizing produces ~10x gross exposure that blew through margin, with post-liquidation monthly returns of -1609% (2026-02) and daily -247% showing corrupted equity accounting. (2) The edge is negative regardless: profit_factor 0.92, Sharpe -0.31 (CI straddles into deep negative), win_rate 34.3%, expectancy -$16,507/trade, losing in 2020/2022/2025/2026. This is the zero-survivor single-name OHLCV trend-follower class (L9) — the DOT Supertrend approval does not transfer to AVAX, where the same canonical (10,3.0) mechanism has negative expectancy. Compounding it, impact_cost_pct 1319% with capacity_usd $574 means the size dwarfs AVAX liquidity. Neither the liquidation-grade sizing defect nor the negative-expectancy mechanism is fixable by the parameter search; not worth 2 hours of optimization.
Implementation
Long-only canonical Supertrend(10, 3.0) trend follower on AVAXUSDT Binance USD-M perpetual futures, 4-hour bars. Wilder ATR(10) with hl2 ± 3.0·ATR bands and the standard recursive final-band/direction rules. Goes long while Supertrend direction is up; exits flat when it flips down (the Supertrend line is the trailing stop). Pure OHLCV, zero supplementary data. Leverage 2.0, sizing 0.60·equity·leverage ≈ 1.2× equity notional.
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.
Backtest Review
- Sharpe
- -0.31
- Total return
- -100.00%
- Max drawdown
- 100.00%
- Trades
- 140
- Win rate
- 34.3%
- Profit factor
- 0.92
Adequate history (13,025 4H bars, 2020-2026) and clean 140-trade sample — not a data-coverage problem
Mechanism fires correctly (140 entries signaled, 140 submitted, zero dropped) — no code plumbing bug
ACCOUNT LIQUIDATED (liquidated: true, liquidation_date 2026-06-21): total_return -100%, max_drawdown 100.0% (CI 100/100) — the strategy blew up and can never clear the promotion drawdown floor (L19)
avg_position_pct 1048% — the equity*position_pct*leverage sizing rides the equity curve into ~10x gross exposure that margin cannot support; monthly returns of -1609% (2026-02) and daily -247% confirm corrupted post-blowup equity accounting
Negative-expectancy edge regardless of sizing: profit_factor 0.92, Sharpe -0.31 (CI [-1.98, 0.50] straddles/negative), sortino -0.72, win_rate 34.3%, expectancy -$16,507/trade
Loses in nearly every year: 2020 -33.6%, 2022 -102.5%, 2025 -84.6%, 2026 -346.9% — the DOT Supertrend 'validation' does not transfer to AVAX
impact_cost_pct 1319% with capacity_usd $574 — the position size dwarfs AVAX liquidity; edge (if any) exists only at toy scale
avg_trade_return_pct 9.7% is a leverage/compounding artifact of the blowup, not real per-trade edge (return_kurtosis 595, skew 19.8 — a couple of outlier days dominate)
Iteration History
Verification failed (Layer 2 — synthetic scenarios): Parameters used: ['atr_period', 'multiplier', 'min_notional', 'position_pct'] Check that __init__ sets all attributes from self.parameters.get(). - steady_uptrend: Frozen signal: all 476 signals are identical (value=1.0). calculate_signal() likely has a bug — the signal never varies. - steady_downtrend: Frozen signal: all 476 signals are identical (value=-1.0). calculate_signal() likely has a bug — the signal never varies.
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).
Backtest and paper results are hypothetical. Trading involves risk of loss.