--- sidebar_position: 3 --- # Technical Analysis ## Overview The technical analysis module processes raw market data through multiple analytical lenses to identify high-probability trading setups within the 30-minute hold constraint. ## Analysis Categories ### 1. Trend Indicators | Indicator | Parameters | Signal | |---|---|---| | EMA Cross | 9/21 periods | Bullish/Bearish cross | | MACD | 12/26/9 | Histogram divergence | | ADX | 14 periods | Trend strength > 25 | | Parabolic SAR | 0.02/0.2 | Trend reversal dots | ### 2. Momentum Indicators | Indicator | Parameters | Signal | |---|---|---| | RSI | 14 periods | Oversold < 30, Overbought > 70 | | Stochastic | 14/3/3 | %K/%D crossover | | CCI | 20 periods | Extreme readings ±200 | | Williams %R | 14 periods | Reversal zones | ### 3. Volatility Indicators | Indicator | Parameters | Signal | |---|---|---| | Bollinger Bands | 20/2σ | Band squeeze/expansion | | ATR | 14 periods | Position sizing, stop distance | | Keltner Channels | 20/1.5 | Breakout confirmation | ### 4. Volume Analysis | Indicator | Parameters | Signal | |---|---|---| | VWAP | Session | Price vs fair value | | OBV | Cumulative | Divergence from price | | Volume Profile | Session | Key levels, POC | ## Pattern Recognition ### Candlestick Patterns (1-5 bar) - **Reversal**: Hammer, Shooting Star, Engulfing, Morning/Evening Star - **Continuation**: Three White Soldiers, Rising/Falling Three Methods - **Indecision**: Doji, Spinning Top, Harami ### Chart Patterns (Multi-bar) - Double Top/Bottom - Head & Shoulders - Ascending/Descending Triangles - Bull/Bear Flags - Wedges ## Confluence Scoring Signals are scored based on **confluence** — multiple indicators agreeing: ```python def calculate_confluence_score(signals: list[IndicatorSignal]) -> float: """ Score 0.0 - 1.0 based on how many indicators agree. Weights: - Trend alignment: 0.30 - Momentum confirmation: 0.25 - Volume confirmation: 0.20 - Pattern match: 0.15 - Key level proximity: 0.10 """ weights = { 'trend': 0.30, 'momentum': 0.25, 'volume': 0.20, 'pattern': 0.15, 'level': 0.10 } score = sum( weights[s.category] * s.strength for s in signals if s.direction == consensus_direction(signals) ) return min(score, 1.0) ``` **Minimum confluence threshold for signal generation: 0.65** ## Timeframe Analysis Given the 30-minute max hold constraint: | Timeframe | Purpose | |---|---| | 1-minute | Entry timing, micro-structure | | 5-minute | Primary signal generation | | 15-minute | Trend context, S/R levels | | 1-hour | Bias direction (trend filter) | ## Backtesting Requirements - Minimum 30 days historical data - Walk-forward optimization - Out-of-sample validation - Maximum drawdown tracking - Sharpe ratio > 1.5 target