{"ticker":"KEYS","composite":38,"action":"WAIT","price":328.48,"change_5d":0.84,"gates":{"price":false,"catalyst":true,"flow":false,"risk":true},"gate_reasons":[{"key":"price","pass":false,"reason":"Composite 38 below structure bar (need ≥55 or a signal flag)"},{"key":"catalyst","pass":true,"reason":"EARNINGS inside window (28d)"},{"key":"flow","pass":false,"reason":"Flow weak (vol 0.5× · CMF -0.31 — need volume or positive money flow)"},{"key":"risk","pass":true,"reason":"R:R 1.0:1 clears risk"}],"demotion":"WATCH: flow gate failed (volume / money flow weak)","components":{"rsi":50,"macd":47,"squeeze":28,"atr":50,"cmf":25,"volume":17,"momentum":57,"relStr":55},"verdict":"WATCH","edge_score":22,"rr":1,"off_index":false,"generated_at":"2026-07-21T19:38:04.977Z","engine_version":"4.8.2","source":"analytics24-engine","docs":"https://www.analytics24.com/developers"}