# Code Review Guidelines ## Trading Strategy Specific Checks ### Position Sizing - ✅ Check for dynamic position sizing based on account balance - ✅ Verify max position size limits - ❌ Flag hardcoded position sizes - ❌ Flag missing position size validation ### Order Handling - ✅ Verify order type is appropriate (market vs limit) - ✅ Check for order timeout handling - ❌ Flag missing order confirmation checks - ❌ Flag potential duplicate orders ### Risk Management - ✅ Verify stop-loss is always set - ✅ Check take-profit levels are realistic - ❌ Flag missing drawdown protection - ❌ Flag strategies without maximum daily loss limits ### Data Handling - ✅ Check for proper OHLC data validation - ✅ Verify timestamp handling (timezone, microseconds) - ❌ Flag missing null/undefined checks - ❌ Flag potential look-ahead bias ### Performance - ✅ Verify indicators are calculated efficiently - ✅ Check for unnecessary re-calculations - ❌ Flag O(n²) or worse algorithms in hot paths - ❌ Flag large memory allocations in loops ## Severity Levels ### Critical (🔴) - Will cause financial loss or system crash - Security vulnerabilities - Data integrity issues - Must be fixed before deployment ### High (🟠) - Significant bugs or edge cases - Performance issues that affect execution - Risk management gaps - Should be fixed before deployment ### Medium (🟡) - Code quality issues - Minor performance improvements - Best practice violations - Fix when convenient ### Low (🟢) - Style preferences - Documentation improvements - Nice-to-have refactorings - Optional improvements ## Common Pitfalls 1. **Look-Ahead Bias**: Using future data in backtests 2. **Overfitting**: Too many parameters, not enough data 3. **Slippage Ignorance**: Not accounting for execution costs 4. **Survivorship Bias**: Testing only on assets that survived 5. **Data Snooping**: Testing multiple strategies, reporting only the best