{"ticker":"IDXX","composite":55,"action":"PASS","price":552.63,"change_5d":2.21,"gates":{"price":true,"catalyst":true,"flow":false,"risk":false},"gate_reasons":[{"key":"price","pass":true,"reason":"Composite 55 clears the structure bar"},{"key":"catalyst","pass":true,"reason":"EARNINGS inside window (15d)"},{"key":"flow","pass":false,"reason":"Flow weak (vol 0.3× · CMF -0.02 — need volume or positive money flow)"},{"key":"risk","pass":false,"reason":"R:R 0.4:1 is skip territory (< 0.5)"}],"demotion":"PASS: risk gate failed (R:R 0.4:1 < 0.5)","components":{"rsi":48,"macd":79,"squeeze":64,"atr":40,"cmf":48,"volume":11,"momentum":68,"relStr":61},"verdict":"SKIP","edge_score":27,"rr":0.4,"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"}