← Back to Reviews

20260114_140950_vol_control_btc_regime_switch.md

# AI Review: vol_control_btc_regime_switch (1-Minute) **Date:** Wed Jan 14 14:09:50 CET 2026 **Strategy File:** /root/trade_1m/strategies/vol_control_btc_regime_switch.py --- ```json { "score": 35, "flags": [ "overfitting", "cost_sensitive", "concentration", "inconsistent" ], "review": "## Critical Issues\n\n### 1. Extreme Overfitting to Specific Parameter Combinations\n\nThe strategy uses highly specific thresholds that appear curve-fitted:\n- ATR z-score compression: -1.0 (not -0.8 or -1.2)\n- ATR z-score expansion: -0.3 (not -0.5 or 0.0) \n- Min move: 0.25% (not 0.2% or 0.3%)\n- Lookback: exactly 15 bars (not 10 or 20)\n- Take profit: 0.45% (not 0.4% or 0.5%)\n- Stop loss: 0.30% (not 0.25% or 0.35%)\n\nNone of these are round numbers. The narrow band between -1.0 and -0.3 for detecting \"regime switch\" appears specifically tuned to historical patterns. Testing with reasonable parameter variations (±20%) would likely show significant performance degradation.\n\n### 2. Severe Cost Sensitivity\n\nWith only 18 total trades and +1.77% return:\n- Per-trade average: ~0.10%\n- Round-trip slippage (0.10%): consumes 100% of edge\n- After 0.10% costs: 1.77% - 1.80% = **-0.03% (negative)**\n\nThe strategy fails to survive realistic execution costs. At 1-minute timeframe, 5bp slippage per side is conservative. This strategy has zero edge after costs.\n\n### 3. Extreme Trade Concentration Risk\n\n18 trades over 5 months = 3.6 trades/month. With this sample size:\n- A single bad trade (-0.30% stop) = -3 average winners\n- 2-3 unlucky trades destroy monthly performance\n- Statistical significance is extremely low\n- Validation period with only 4 trades is meaningless\n\nThe 7-day (10,080 bar) cooldown is excessively restrictive for 1-minute microstructure trading. This creates lottery-ticket exposure where strategy health depends on 3-4 trade outcomes per month.\n\n### 4. Monthly Inconsistency and Declining Performance\n\nMonthly returns show concerning pattern:\n- Early months: 0.3%, 0.5%, 0.7% (improving)\n- Later months: 0.2%, 0.1% (declining)\n- Sharpe drops from 1.37 to 0.09\n\nThis suggests the \"regime switch\" pattern may have been more prevalent in earlier data and is degrading. The strategy is not robust across different market conditions.\n\n### 5. Questionable Microstructure Edge\n\nThe claimed edge is \"trade the transition out of low volatility\", but:\n- Volatility regime changes occur on much longer timeframes than 1-minute\n- Using 30-min ATR on 1-min bars creates heavy smoothing\n- By the time a 15-bar (15-minute) pattern is confirmed, the \"initial impulse\" is already over\n- Exit at +0.45% or 25 bars (25 min) suggests this is momentum, not vol regime\n\nThis is actually a delayed momentum strategy disguised as vol regime detection. The entry logic requires a 15-bar directional move of >0.25%, which is just momentum with extra steps.\n\n### 6. Execution Realism Issues\n\nWhile the strategy avoids same-bar execution, the 15-bar lookback means:\n- Entry signal requires 15-minute pattern confirmation\n- By bar 16 when entering, microstructure edge is stale\n- Take profit at 0.45% may require significant price movement that creates adverse selection\n\n## Minor Concerns\n\n- Vol spike disable at z=2.0 is reasonable but the emergency exit logic doesn't account for exit slippage during high volatility\n- Max hold time of 25 bars conflicts with 7-day cooldown philosophy (why exit time-based if setups are so rare?)\n- No consideration of time-of-day effects, which are critical at 1-minute resolution\n\n## Stress Test Reality Check\n\nThe included stress test shows:\n- After slippage: +1.77% - 1.80% = **-0.03%**\n- Worst case: **-0.57%**\n\nThe strategy loses money after realistic costs. The training period profitability is an artifact of optimistic execution assumptions.\n\n## What Would Make This Better\n\n1. Higher trade frequency (20-30 trades/month minimum) through shorter cooldown\n2. Simpler entry: pure ATR percentile with price confirmation, not complex z-score transitions\n3. Round number parameters (ATR lookback: 200 bars, percentile: 10th/90th)\n4. Tighter exits (0.15-0.20% targets) to capture microstructure not swing moves\n5. Target 0.20%+ per-trade average to survive costs\n\n## Bottom Line\n\nThis strategy is a classic case of:\n1. Overfitting to a small sample (18 trades)\n2. Using non-round parameters that suggest optimization\n3. Edge too small to survive costs\n4. Declining performance over time\n\nIt fails the fundamental test: **profitability after realistic execution costs**. The +1.77% return becomes negative after 0.10% round-trip slippage.", "rule_suggestion": "For vol-control strategies: Require minimum 20 trades per month (not total) to ensure statistical validity. Strategies with cooldowns exceeding 3 days (4320 bars at 1m) on 1-minute timeframe must demonstrate per-trade edge of at least 0.20% to survive concentration risk and execution costs." } ```