{"type":"snapshot","id":"ff50139931e8","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"833a756ce19d","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"9324a6abd929","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"CRML","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"e40eb10c7a2b","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"fa0eb7a1cdbf","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"c59b49663dec","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"AEMD","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"b44084e0ee97","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"SECZ","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"900b3bc6f593","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"KRRO","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"14e7ef3c94b8","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"18051b8d1a23","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"cb5fd2e2dbcf","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"77985c5543e1","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"086911b71221","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"5e56302588ba","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"06ab59a3b895","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"0ab33468fe73","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"ABSI","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"95ca824b3666","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"893b0f372f27","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"d047010ff358","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"789dcc5e68ba","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"FTFT","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"c2bdc04b4a81","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"ca3eb2e48c35","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"6e91c7f8529f","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"af7d553a65bc","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"NWCL","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"7b12d72c8398","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"db25fccb9dff","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"CTKB","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"81e73d094796","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"MAT","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"446b5aae9004","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"33b55928bfa4","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"010bc17b65b0","ts":"2026-09-21T13:30:11.824609+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"insufficient bar data","plan":{"state":null,"setup":null,"stop":null,"target":null,"target_label":null,"reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":null,"vwap":null,"ext_from_open_pct":null,"max_ext_allowed_pct":null,"volume_pace":null,"trend":null,"recent_slope_pct":null,"volatility":null},"error":"no_bars_today"}
{"type":"snapshot","id":"0d64a359d369","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.93 below VWAP $7.97","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":7.93,"vwap":7.9651,"ext_from_open_pct":-1.0,"max_ext_allowed_pct":4.0,"volume_pace":46.149,"trend":"flat","recent_slope_pct":0.5649,"volatility":"unknown"},"price":7.93,"volume":{"bars":2,"last_bar_volume":12255.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":3216.0,"sell_vol":1092.0,"unclassified_vol":0.0,"imbalance":0.493036,"bid":7.83,"ask":8.13,"spread_pct":3.759398,"quote_size_imbalance":null,"quote_age_s":2.764739},"context":{"vwap":7.965113,"price_vs_vwap_pct":-0.44084,"ema9":7.8978,"ema20":7.867524,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-3.878788,"dist_to_hod_atr":0.710232,"atr":0.450557,"spread_atr":0.665842,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"928d6371151c","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.96 below VWAP $13.23","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":12.9588,"vwap":13.228,"ext_from_open_pct":-0.39,"max_ext_allowed_pct":4.0,"volume_pace":9.602,"trend":"flat","recent_slope_pct":-0.1588,"volatility":"high"},"price":12.9588,"volume":{"bars":2,"last_bar_volume":72936.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":386,"trade_rate":12.866667,"buy_vol":10349.0,"sell_vol":19772.0,"unclassified_vol":0.0,"imbalance":-0.312838,"bid":12.85,"ask":12.99,"spread_pct":1.083591,"quote_size_imbalance":null,"quote_age_s":0.014179},"context":{"vwap":13.228412,"price_vs_vwap_pct":-2.038127,"ema9":12.99,"ema20":12.995238,"ema_stack":false,"ema_warm":false,"hod":13.8,"dist_to_hod_pct":-6.095652,"dist_to_hod_atr":1.01421,"atr":0.829414,"spread_atr":0.168794,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"8e20ad38dbba","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.7% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.1828,"vwap":8.8365,"ext_from_open_pct":5.67,"max_ext_allowed_pct":4.0,"volume_pace":61.493,"trend":"positive","recent_slope_pct":3.1771,"volatility":"medium"},"price":9.1828,"volume":{"bars":2,"last_bar_volume":1633678.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":2656,"trade_rate":88.533333,"buy_vol":515810.0,"sell_vol":401387.0,"unclassified_vol":0.0,"imbalance":0.124753,"bid":9.16,"ask":9.19,"spread_pct":0.326975,"quote_size_imbalance":null,"quote_age_s":1.056963},"context":{"vwap":8.834425,"price_vs_vwap_pct":3.943379,"ema9":8.71692,"ema20":8.662171,"ema_stack":true,"ema_warm":false,"hod":9.2,"dist_to_hod_pct":-0.186957,"dist_to_hod_atr":0.05363,"atr":0.320714,"spread_atr":0.093541,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"54920eeefc43","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.26 below VWAP $9.29","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.26,"vwap":9.292,"ext_from_open_pct":0.11,"max_ext_allowed_pct":5.0,"volume_pace":7.747,"trend":"flat","recent_slope_pct":0.0808,"volatility":"high"},"price":9.26,"volume":{"bars":2,"last_bar_volume":31675.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":35787.0,"sell_vol":6140.0,"unclassified_vol":0.0,"imbalance":0.70711,"bid":9.26,"ask":9.37,"spread_pct":1.180891,"quote_size_imbalance":null,"quote_age_s":1.753354},"context":{"vwap":9.292424,"price_vs_vwap_pct":-0.348929,"ema9":9.267,"ema20":9.255476,"ema_stack":false,"ema_warm":false,"hod":9.38,"dist_to_hod_pct":-1.279318,"dist_to_hod_atr":0.848485,"atr":0.141429,"spread_atr":0.777778,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"2d2d6458d15c","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.555,"vwap":6.4473,"ext_from_open_pct":2.58,"max_ext_allowed_pct":5.0,"volume_pace":6.468,"trend":"positive","recent_slope_pct":0.7704,"volatility":"high"},"price":6.555,"volume":{"bars":2,"last_bar_volume":29865.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":166,"trade_rate":5.533333,"buy_vol":16171.0,"sell_vol":3890.0,"unclassified_vol":0.0,"imbalance":0.612183,"bid":6.54,"ask":6.56,"spread_pct":0.305344,"quote_size_imbalance":null,"quote_age_s":0.138042},"context":{"vwap":6.439474,"price_vs_vwap_pct":1.794032,"ema9":6.456,"ema20":6.455476,"ema_stack":true,"ema_warm":false,"hod":6.5,"dist_to_hod_pct":0.846154,"dist_to_hod_atr":-0.377636,"atr":0.145643,"spread_atr":0.137322,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"f37ed8b3dcb5","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"AEMD","event":"REJECT","bot":{"state":"REJECT","reason":"spread 3.51% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.87,"vwap":6.8022,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":4.0,"volume_pace":2.396,"trend":"positive","recent_slope_pct":0.5151,"volatility":"high"},"price":6.87,"volume":{"bars":2,"last_bar_volume":3431.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":667.0,"sell_vol":489.0,"unclassified_vol":0.0,"imbalance":0.153979,"bid":6.71,"ask":6.95,"spread_pct":3.513909,"quote_size_imbalance":null,"quote_age_s":44.779495},"context":{"vwap":6.802099,"price_vs_vwap_pct":0.998239,"ema9":6.8116,"ema20":6.805262,"ema_stack":true,"ema_warm":false,"hod":6.8904,"dist_to_hod_pct":-0.296064,"dist_to_hod_atr":0.113369,"atr":0.179943,"spread_atr":1.333757,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"3338400a67e3","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.20 below VWAP $11.69","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.195,"vwap":11.6868,"ext_from_open_pct":-4.07,"max_ext_allowed_pct":4.0,"volume_pace":3.465,"trend":"negative","recent_slope_pct":-2.3051,"volatility":"high"},"price":11.195,"volume":{"bars":2,"last_bar_volume":52938.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":360,"trade_rate":12.0,"buy_vol":14754.0,"sell_vol":20972.0,"unclassified_vol":0.0,"imbalance":-0.174047,"bid":11.14,"ask":11.25,"spread_pct":0.982582,"quote_size_imbalance":null,"quote_age_s":1.145355},"context":{"vwap":11.696338,"price_vs_vwap_pct":-4.28628,"ema9":11.62146,"ema20":11.672919,"ema_stack":false,"ema_warm":false,"hod":11.98,"dist_to_hod_pct":-6.552588,"dist_to_hod_atr":1.719471,"atr":0.456536,"spread_atr":0.240945,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"6f55b0617b56","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"KRRO","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.32","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.1001,"vwap":10.3181,"ext_from_open_pct":-0.2,"max_ext_allowed_pct":5.0,"volume_pace":3.355,"trend":"flat","recent_slope_pct":0.0005,"volatility":"unknown"},"price":10.1001,"volume":{"bars":2,"last_bar_volume":1829.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":1087.0,"sell_vol":98.0,"unclassified_vol":0.0,"imbalance":0.834599,"bid":10.1,"ask":10.27,"spread_pct":1.669121,"quote_size_imbalance":null,"quote_age_s":18.579627},"context":{"vwap":10.318275,"price_vs_vwap_pct":-2.114454,"ema9":10.12584,"ema20":10.112305,"ema_stack":false,"ema_warm":false,"hod":10.77,"dist_to_hod_pct":-6.220056,"dist_to_hod_atr":1.026105,"atr":0.652857,"spread_atr":0.260394,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"5898b3cdf018","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.92 below VWAP $8.92","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.9192,"vwap":8.9224,"ext_from_open_pct":-1.12,"max_ext_allowed_pct":5.0,"volume_pace":11.101,"trend":"positive","recent_slope_pct":0.2307,"volatility":"medium"},"price":8.9192,"volume":{"bars":2,"last_bar_volume":67803.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":17156.0,"sell_vol":7157.0,"unclassified_vol":0.0,"imbalance":0.411261,"bid":8.9,"ask":8.92,"spread_pct":0.224467,"quote_size_imbalance":null,"quote_age_s":1.901804},"context":{"vwap":8.922376,"price_vs_vwap_pct":-0.035599,"ema9":8.88848,"ema20":8.883043,"ema_stack":true,"ema_warm":false,"hod":9.02,"dist_to_hod_pct":-1.117517,"dist_to_hod_atr":0.678462,"atr":0.148571,"spread_atr":0.134615,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"3f6d6e8e2c35","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.51 below VWAP $8.57","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.5117,"vwap":8.571,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":5.0,"volume_pace":16.044,"trend":"negative","recent_slope_pct":-0.3125,"volatility":"medium"},"price":8.5117,"volume":{"bars":2,"last_bar_volume":2171.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":4.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.46,"ask":8.5,"spread_pct":0.471698,"quote_size_imbalance":null,"quote_age_s":2.930739},"context":{"vwap":8.57096,"price_vs_vwap_pct":-0.6914,"ema9":8.55386,"ema20":8.559695,"ema_stack":false,"ema_warm":false,"hod":8.65,"dist_to_hod_pct":-1.598844,"dist_to_hod_atr":0.953793,"atr":0.145,"spread_atr":0.275862,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"9b44d94e2b4a","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.16,"vwap":5.1249,"ext_from_open_pct":-0.39,"max_ext_allowed_pct":3.0,"volume_pace":1.435,"trend":"positive","recent_slope_pct":0.7312,"volatility":"high"},"price":5.16,"volume":{"bars":2,"last_bar_volume":57164.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":8434.0,"sell_vol":14010.0,"unclassified_vol":0.0,"imbalance":-0.248441,"bid":5.15,"ask":5.18,"spread_pct":0.580833,"quote_size_imbalance":null,"quote_age_s":1.283592},"context":{"vwap":5.124652,"price_vs_vwap_pct":0.689762,"ema9":5.09602,"ema20":5.090248,"ema_stack":true,"ema_warm":false,"hod":5.21,"dist_to_hod_pct":-0.959693,"dist_to_hod_atr":0.383793,"atr":0.130279,"spread_atr":0.230276,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"965f278c023c","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.10% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2091,"vwap":8.206,"ext_from_open_pct":0.23,"max_ext_allowed_pct":5.0,"volume_pace":5.767,"trend":"flat","recent_slope_pct":-0.0663,"volatility":"high"},"price":8.2091,"volume":{"bars":2,"last_bar_volume":10254.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":2263.0,"sell_vol":314.0,"unclassified_vol":0.0,"imbalance":0.756306,"bid":8.17,"ask":8.26,"spread_pct":1.095557,"quote_size_imbalance":null,"quote_age_s":0.511518},"context":{"vwap":8.205975,"price_vs_vwap_pct":0.038088,"ema9":8.219,"ema20":8.219524,"ema_stack":false,"ema_warm":false,"hod":8.28,"dist_to_hod_pct":-0.85628,"dist_to_hod_atr":0.4502,"atr":0.157486,"spread_atr":0.57148,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"2d2dfc24ccda","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.55 below VWAP $8.64","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.55,"vwap":8.6382,"ext_from_open_pct":-1.95,"max_ext_allowed_pct":4.0,"volume_pace":6.071,"trend":"negative","recent_slope_pct":-0.4663,"volatility":"medium"},"price":8.55,"volume":{"bars":2,"last_bar_volume":127115.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":156,"trade_rate":5.2,"buy_vol":8453.0,"sell_vol":29747.0,"unclassified_vol":0.0,"imbalance":-0.557435,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":3.331219},"context":{"vwap":8.638197,"price_vs_vwap_pct":-1.021014,"ema9":8.615,"ema20":8.622857,"ema_stack":false,"ema_warm":false,"hod":8.74,"dist_to_hod_pct":-2.173913,"dist_to_hod_atr":1.457534,"atr":0.130357,"spread_atr":0.076712,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"fb273f8ecd58","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.98 below VWAP $10.03","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.98,"vwap":10.0262,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":4.0,"volume_pace":13.49,"trend":"negative","recent_slope_pct":-0.3,"volatility":"high"},"price":9.98,"volume":{"bars":2,"last_bar_volume":237450.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":610,"trade_rate":20.333333,"buy_vol":31103.0,"sell_vol":62805.0,"unclassified_vol":0.0,"imbalance":-0.337586,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.061088},"context":{"vwap":10.026273,"price_vs_vwap_pct":-0.461519,"ema9":10.02736,"ema20":10.033981,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-1.383399,"dist_to_hod_atr":0.797267,"atr":0.1756,"spread_atr":0.056948,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"45285f5b14f2","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"ABSI","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $10.02","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.9616,"vwap":10.0243,"ext_from_open_pct":-0.78,"max_ext_allowed_pct":4.0,"volume_pace":6.195,"trend":"negative","recent_slope_pct":-0.4186,"volatility":"medium"},"price":9.9616,"volume":{"bars":2,"last_bar_volume":55242.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":215,"trade_rate":7.166667,"buy_vol":15712.0,"sell_vol":5829.0,"unclassified_vol":0.0,"imbalance":0.458799,"bid":9.92,"ask":9.97,"spread_pct":0.502765,"quote_size_imbalance":null,"quote_age_s":0.927079},"context":{"vwap":10.027129,"price_vs_vwap_pct":-0.653516,"ema9":10.012,"ema20":10.029286,"ema_stack":false,"ema_warm":false,"hod":10.15,"dist_to_hod_pct":-1.856158,"dist_to_hod_atr":1.022326,"atr":0.184286,"spread_atr":0.271318,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"2f2a82079381","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.74 below VWAP $13.80","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":13.74,"vwap":13.7952,"ext_from_open_pct":-1.22,"max_ext_allowed_pct":4.0,"volume_pace":7.244,"trend":"flat","recent_slope_pct":-0.2724,"volatility":"high"},"price":13.74,"volume":{"bars":2,"last_bar_volume":921861.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":921,"trade_rate":30.7,"buy_vol":116386.0,"sell_vol":107213.0,"unclassified_vol":0.0,"imbalance":0.041024,"bid":13.73,"ask":13.75,"spread_pct":0.14556,"quote_size_imbalance":null,"quote_age_s":0.124577},"context":{"vwap":13.795353,"price_vs_vwap_pct":-0.401246,"ema9":13.8,"ema20":13.807857,"ema_stack":false,"ema_warm":false,"hod":13.98,"dist_to_hod_pct":-1.716738,"dist_to_hod_atr":0.910569,"atr":0.263571,"spread_atr":0.075881,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"c1a262d66bdc","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.64 below VWAP $10.66","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.645,"vwap":10.6607,"ext_from_open_pct":-0.51,"max_ext_allowed_pct":4.0,"volume_pace":1.11,"trend":"flat","recent_slope_pct":0.0488,"volatility":"unknown"},"price":10.645,"volume":{"bars":2,"last_bar_volume":36970.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":4010.0,"sell_vol":6279.0,"unclassified_vol":0.0,"imbalance":-0.220527,"bid":10.63,"ask":10.66,"spread_pct":0.281822,"quote_size_imbalance":null,"quote_age_s":0.160853},"context":{"vwap":10.660691,"price_vs_vwap_pct":-0.147185,"ema9":10.63968,"ema20":10.637019,"ema_stack":true,"ema_warm":false,"hod":10.75,"dist_to_hod_pct":-0.976744,"dist_to_hod_atr":0.742612,"atr":0.141393,"spread_atr":0.212175,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"aa4a1c0ee51d","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.795,"vwap":9.7133,"ext_from_open_pct":1.08,"max_ext_allowed_pct":4.0,"volume_pace":6.043,"trend":"positive","recent_slope_pct":0.6408,"volatility":"medium"},"price":9.795,"volume":{"bars":2,"last_bar_volume":74476.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":135,"trade_rate":4.5,"buy_vol":4826.0,"sell_vol":12722.0,"unclassified_vol":0.0,"imbalance":-0.449966,"bid":9.78,"ask":9.81,"spread_pct":0.306279,"quote_size_imbalance":null,"quote_age_s":0.065493},"context":{"vwap":9.71329,"price_vs_vwap_pct":0.841217,"ema9":9.695,"ema20":9.681905,"ema_stack":true,"ema_warm":false,"hod":9.83,"dist_to_hod_pct":-0.356053,"dist_to_hod_atr":0.4375,"atr":0.08,"spread_atr":0.375,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"50cd375b1996","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.89 below VWAP $10.94","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.8901,"vwap":10.9419,"ext_from_open_pct":-0.82,"max_ext_allowed_pct":3.0,"volume_pace":2.975,"trend":"negative","recent_slope_pct":-0.2374,"volatility":"medium"},"price":10.8901,"volume":{"bars":2,"last_bar_volume":453589.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":439,"trade_rate":14.633333,"buy_vol":104795.0,"sell_vol":144550.0,"unclassified_vol":0.0,"imbalance":-0.159438,"bid":10.89,"ask":10.9,"spread_pct":0.091785,"quote_size_imbalance":null,"quote_age_s":0.014685},"context":{"vwap":10.942046,"price_vs_vwap_pct":-0.474741,"ema9":10.9335,"ema20":10.9379,"ema_stack":false,"ema_warm":false,"hod":11.0,"dist_to_hod_pct":-0.999091,"dist_to_hod_atr":1.135414,"atr":0.096793,"spread_atr":0.103313,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"4b90633c0c51","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":12.38,"vwap":12.3077,"ext_from_open_pct":0.65,"max_ext_allowed_pct":4.0,"volume_pace":7.482,"trend":"positive","recent_slope_pct":0.4456,"volatility":"medium"},"price":12.38,"volume":{"bars":2,"last_bar_volume":126722.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":308,"trade_rate":10.266667,"buy_vol":18784.0,"sell_vol":35120.0,"unclassified_vol":0.0,"imbalance":-0.303057,"bid":12.36,"ask":12.4,"spread_pct":0.323102,"quote_size_imbalance":null,"quote_age_s":0.035487},"context":{"vwap":12.307697,"price_vs_vwap_pct":0.58746,"ema9":12.2913,"ema20":12.280143,"ema_stack":true,"ema_warm":false,"hod":12.49,"dist_to_hod_pct":-0.880705,"dist_to_hod_atr":0.582231,"atr":0.188929,"spread_atr":0.21172,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"215d876da149","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.5623,"vwap":5.5528,"ext_from_open_pct":0.4,"max_ext_allowed_pct":4.0,"volume_pace":5.216,"trend":"positive","recent_slope_pct":0.1233,"volatility":"unknown"},"price":5.5623,"volume":{"bars":2,"last_bar_volume":197179.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":24167.0,"sell_vol":30753.0,"unclassified_vol":0.0,"imbalance":-0.11992,"bid":5.56,"ask":5.57,"spread_pct":0.179695,"quote_size_imbalance":null,"quote_age_s":0.062742},"context":{"vwap":5.552802,"price_vs_vwap_pct":0.171057,"ema9":5.55088,"ema20":5.549686,"ema_stack":true,"ema_warm":false,"hod":5.58,"dist_to_hod_pct":-0.317204,"dist_to_hod_atr":0.360279,"atr":0.049129,"spread_atr":0.203548,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"965c64d9143a","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.23 below VWAP $5.27","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.23,"vwap":5.274,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":3.0,"volume_pace":1.285,"trend":"negative","recent_slope_pct":-0.4287,"volatility":"medium"},"price":5.23,"volume":{"bars":2,"last_bar_volume":947.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":0.0,"sell_vol":575.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":5.21,"ask":5.26,"spread_pct":0.95511,"quote_size_imbalance":null,"quote_age_s":0.927834},"context":{"vwap":5.274097,"price_vs_vwap_pct":-0.836114,"ema9":5.268,"ema20":5.271667,"ema_stack":false,"ema_warm":false,"hod":5.32,"dist_to_hod_pct":-1.691729,"dist_to_hod_atr":1.045036,"atr":0.086121,"spread_atr":0.580576,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"042f15541c76","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.18 below VWAP $13.27","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":13.18,"vwap":13.267,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":1.332,"trend":"negative","recent_slope_pct":-0.2651,"volatility":"low"},"price":13.18,"volume":{"bars":2,"last_bar_volume":4645.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":435.0,"sell_vol":446.0,"unclassified_vol":0.0,"imbalance":-0.012486,"bid":13.16,"ask":13.2,"spread_pct":0.30349,"quote_size_imbalance":null,"quote_age_s":2.666405},"context":{"vwap":13.267021,"price_vs_vwap_pct":-0.655919,"ema9":13.236,"ema20":13.243333,"ema_stack":false,"ema_warm":false,"hod":13.34,"dist_to_hod_pct":-1.1994,"dist_to_hod_atr":1.464052,"atr":0.109286,"spread_atr":0.366013,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"5d2ea7733607","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.25,"vwap":5.216,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":8.318,"trend":"positive","recent_slope_pct":0.4298,"volatility":"unknown"},"price":5.25,"volume":{"bars":2,"last_bar_volume":237105.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":16829.0,"sell_vol":39464.0,"unclassified_vol":0.0,"imbalance":-0.402093,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":5.99984},"context":{"vwap":5.215992,"price_vs_vwap_pct":0.651991,"ema9":5.214,"ema20":5.209286,"ema_stack":true,"ema_warm":false,"hod":5.27,"dist_to_hod_pct":-0.379507,"dist_to_hod_atr":0.421053,"atr":0.0475,"spread_atr":0.210526,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"aed15c47b5f2","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.18x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.32,"vwap":6.3014,"ext_from_open_pct":0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.179,"trend":"positive","recent_slope_pct":0.2378,"volatility":"unknown"},"price":6.32,"volume":{"bars":2,"last_bar_volume":9799.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":2258.0,"sell_vol":1490.0,"unclassified_vol":0.0,"imbalance":0.204909,"bid":6.29,"ask":6.32,"spread_pct":0.475813,"quote_size_imbalance":null,"quote_age_s":2.054774},"context":{"vwap":6.301327,"price_vs_vwap_pct":0.296336,"ema9":6.294,"ema20":6.291905,"ema_stack":true,"ema_warm":false,"hod":6.32,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.039286,"spread_atr":0.763636,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"ebc50d0b4c17","ts":"2026-09-21T13:32:02.224741+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.755,"vwap":8.6781,"ext_from_open_pct":2.76,"max_ext_allowed_pct":4.0,"volume_pace":3.545,"trend":"positive","recent_slope_pct":1.2378,"volatility":"unknown"},"price":8.755,"volume":{"bars":2,"last_bar_volume":1132529.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":898,"trade_rate":29.933333,"buy_vol":97659.0,"sell_vol":51200.0,"unclassified_vol":0.0,"imbalance":0.312101,"bid":8.75,"ask":8.76,"spread_pct":0.11422,"quote_size_imbalance":null,"quote_age_s":0.373074},"context":{"vwap":8.677453,"price_vs_vwap_pct":0.893666,"ema9":8.584,"ema20":8.560952,"ema_stack":true,"ema_warm":false,"hod":8.78,"dist_to_hod_pct":-0.284738,"dist_to_hod_atr":0.178571,"atr":0.14,"spread_atr":0.071429,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"5fb7664634c3","ts":"2026-09-21T13:32:07.259528+00:00","symbol":"CRML","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.96,"vwap":8.8521,"ext_from_open_pct":3.11,"max_ext_allowed_pct":4.0,"volume_pace":63.769,"trend":"positive","recent_slope_pct":1.9523,"volatility":"medium"},"price":8.96,"volume":{"bars":2,"last_bar_volume":1633678.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":2968,"trade_rate":98.933333,"buy_vol":499377.0,"sell_vol":531358.0,"unclassified_vol":0.0,"imbalance":-0.031027,"bid":8.95,"ask":8.97,"spread_pct":0.223214,"quote_size_imbalance":null,"quote_age_s":0.075976},"context":{"vwap":8.834425,"price_vs_vwap_pct":1.421426,"ema9":8.71692,"ema20":8.662171,"ema_stack":true,"ema_warm":false,"hod":9.2,"dist_to_hod_pct":-2.608696,"dist_to_hod_atr":0.74833,"atr":0.320714,"spread_atr":0.062361,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"6b8a55d792f6","ts":"2026-09-21T13:32:07.259528+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.04,"vwap":10.0256,"ext_from_open_pct":0.5,"max_ext_allowed_pct":4.0,"volume_pace":14.059,"trend":"flat","recent_slope_pct":0.0,"volatility":"high"},"price":10.04,"volume":{"bars":2,"last_bar_volume":237450.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":969,"trade_rate":32.3,"buy_vol":59083.0,"sell_vol":84713.0,"unclassified_vol":0.0,"imbalance":-0.178239,"bid":10.03,"ask":10.04,"spread_pct":0.099651,"quote_size_imbalance":null,"quote_age_s":0.040432},"context":{"vwap":10.026273,"price_vs_vwap_pct":0.136909,"ema9":10.02736,"ema20":10.033981,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.790514,"dist_to_hod_atr":0.455581,"atr":0.1756,"spread_atr":0.056948,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"d5c5dd08147e","ts":"2026-09-21T13:32:07.259528+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.36% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.82,"vwap":8.7816,"ext_from_open_pct":1.03,"max_ext_allowed_pct":4.0,"volume_pace":6.603,"trend":"positive","recent_slope_pct":0.4834,"volatility":"high"},"price":8.82,"volume":{"bars":2,"last_bar_volume":25955.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1573.0,"sell_vol":9117.0,"unclassified_vol":0.0,"imbalance":-0.705706,"bid":8.76,"ask":8.88,"spread_pct":1.360544,"quote_size_imbalance":null,"quote_age_s":0.190042},"context":{"vwap":8.781545,"price_vs_vwap_pct":0.437907,"ema9":8.752,"ema20":8.743095,"ema_stack":true,"ema_warm":false,"hod":8.9,"dist_to_hod_pct":-0.898876,"dist_to_hod_atr":0.401376,"atr":0.199314,"spread_atr":0.602064,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"fbe3fc757a2b","ts":"2026-09-21T13:32:07.259528+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"spread 2.52% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.61,"vwap":5.5637,"ext_from_open_pct":1.81,"max_ext_allowed_pct":4.0,"volume_pace":3.612,"trend":"positive","recent_slope_pct":0.9859,"volatility":"unknown"},"price":5.61,"volume":{"bars":2,"last_bar_volume":9394.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":1101.0,"sell_vol":200.0,"unclassified_vol":0.0,"imbalance":0.692544,"bid":5.48,"ask":5.62,"spread_pct":2.522523,"quote_size_imbalance":null,"quote_age_s":0.436198},"context":{"vwap":5.56366,"price_vs_vwap_pct":0.832907,"ema9":5.52208,"ema20":5.510567,"ema_stack":true,"ema_warm":false,"hod":5.75,"dist_to_hod_pct":-2.434783,"dist_to_hod_atr":1.241528,"atr":0.112764,"spread_atr":1.241528,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"99bb92d11b55","ts":"2026-09-21T13:32:12.290867+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.925,"vwap":8.9223,"ext_from_open_pct":-1.05,"max_ext_allowed_pct":5.0,"volume_pace":10.333,"trend":"positive","recent_slope_pct":0.2632,"volatility":"medium"},"price":8.925,"volume":{"bars":2,"last_bar_volume":67803.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":17326.0,"sell_vol":9806.0,"unclassified_vol":0.0,"imbalance":0.277163,"bid":8.92,"ask":8.94,"spread_pct":0.223964,"quote_size_imbalance":null,"quote_age_s":0.418698},"context":{"vwap":8.922376,"price_vs_vwap_pct":0.029406,"ema9":8.88848,"ema20":8.883043,"ema_stack":true,"ema_warm":false,"hod":9.02,"dist_to_hod_pct":-1.053215,"dist_to_hod_atr":0.639423,"atr":0.148571,"spread_atr":0.134615,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"f329f8e9de5d","ts":"2026-09-21T13:32:12.290867+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3052,"vwap":8.2111,"ext_from_open_pct":1.41,"max_ext_allowed_pct":4.0,"volume_pace":5.683,"trend":"positive","recent_slope_pct":0.5166,"volatility":"high"},"price":8.3052,"volume":{"bars":2,"last_bar_volume":10254.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":6068.0,"sell_vol":9437.0,"unclassified_vol":0.0,"imbalance":-0.217285,"bid":8.3,"ask":8.38,"spread_pct":0.959233,"quote_size_imbalance":null,"quote_age_s":1.341903},"context":{"vwap":8.205975,"price_vs_vwap_pct":1.209186,"ema9":8.219,"ema20":8.219524,"ema_stack":false,"ema_warm":false,"hod":8.28,"dist_to_hod_pct":0.304348,"dist_to_hod_atr":-0.160015,"atr":0.157486,"spread_atr":0.507983,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"489dcdb18a92","ts":"2026-09-21T13:32:12.290867+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.03 below VWAP $10.03","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.025,"vwap":10.0253,"ext_from_open_pct":0.35,"max_ext_allowed_pct":4.0,"volume_pace":13.895,"trend":"flat","recent_slope_pct":-0.0749,"volatility":"high"},"price":10.025,"volume":{"bars":2,"last_bar_volume":237450.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":986,"trade_rate":32.866667,"buy_vol":73164.0,"sell_vol":86773.0,"unclassified_vol":0.0,"imbalance":-0.08509,"bid":10.02,"ask":10.03,"spread_pct":0.099751,"quote_size_imbalance":null,"quote_age_s":0.880298},"context":{"vwap":10.026273,"price_vs_vwap_pct":-0.012698,"ema9":10.02736,"ema20":10.033981,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.938735,"dist_to_hod_atr":0.541002,"atr":0.1756,"spread_atr":0.056948,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"3fa2bffb3030","ts":"2026-09-21T13:32:17.308859+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.92 below VWAP $8.92","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.9165,"vwap":8.9223,"ext_from_open_pct":-1.15,"max_ext_allowed_pct":5.0,"volume_pace":10.164,"trend":"flat","recent_slope_pct":0.2155,"volatility":"medium"},"price":8.9165,"volume":{"bars":2,"last_bar_volume":67803.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":14603.0,"sell_vol":10795.0,"unclassified_vol":0.0,"imbalance":0.149933,"bid":8.91,"ask":8.93,"spread_pct":0.224215,"quote_size_imbalance":null,"quote_age_s":0.039699},"context":{"vwap":8.922376,"price_vs_vwap_pct":-0.06586,"ema9":8.88848,"ema20":8.883043,"ema_stack":true,"ema_warm":false,"hod":9.02,"dist_to_hod_pct":-1.14745,"dist_to_hod_atr":0.696635,"atr":0.148571,"spread_atr":0.134615,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"39dcfb99e451","ts":"2026-09-21T13:32:17.308859+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.08% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.34,"vwap":8.212,"ext_from_open_pct":1.83,"max_ext_allowed_pct":4.0,"volume_pace":5.482,"trend":"positive","recent_slope_pct":0.7265,"volatility":"high"},"price":8.34,"volume":{"bars":2,"last_bar_volume":10254.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":4333.0,"sell_vol":9437.0,"unclassified_vol":0.0,"imbalance":-0.370661,"bid":8.29,"ask":8.38,"spread_pct":1.079784,"quote_size_imbalance":null,"quote_age_s":1.569218},"context":{"vwap":8.205975,"price_vs_vwap_pct":1.633267,"ema9":8.219,"ema20":8.219524,"ema_stack":false,"ema_warm":false,"hod":8.28,"dist_to_hod_pct":0.724638,"dist_to_hod_atr":-0.380987,"atr":0.157486,"spread_atr":0.57148,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"12dcba291bb6","ts":"2026-09-21T13:32:17.308859+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 2.27% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.875,"vwap":11.7074,"ext_from_open_pct":2.37,"max_ext_allowed_pct":4.0,"volume_pace":8.849,"trend":"positive","recent_slope_pct":1.316,"volatility":"unknown"},"price":11.875,"volume":{"bars":2,"last_bar_volume":5443.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":25.0,"sell_vol":176.0,"unclassified_vol":0.0,"imbalance":-0.751244,"bid":11.76,"ask":12.03,"spread_pct":2.269861,"quote_size_imbalance":null,"quote_age_s":17.859907},"context":{"vwap":11.706855,"price_vs_vwap_pct":1.436296,"ema9":11.631,"ema20":11.596429,"ema_stack":true,"ema_warm":false,"hod":11.95,"dist_to_hod_pct":-0.627615,"dist_to_hod_atr":0.172272,"atr":0.435357,"spread_atr":0.62018,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"14ac730a3d23","ts":"2026-09-21T13:32:22.333250+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.04,"vwap":8.8631,"ext_from_open_pct":4.03,"max_ext_allowed_pct":4.0,"volume_pace":59.754,"trend":"positive","recent_slope_pct":2.3944,"volatility":"medium"},"price":9.04,"volume":{"bars":2,"last_bar_volume":1633678.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":2296,"trade_rate":76.533333,"buy_vol":362861.0,"sell_vol":420912.0,"unclassified_vol":0.0,"imbalance":-0.074066,"bid":9.02,"ask":9.06,"spread_pct":0.442478,"quote_size_imbalance":null,"quote_age_s":0.045238},"context":{"vwap":8.834425,"price_vs_vwap_pct":2.326975,"ema9":8.71692,"ema20":8.662171,"ema_stack":true,"ema_warm":false,"hod":9.2,"dist_to_hod_pct":-1.73913,"dist_to_hod_atr":0.498886,"atr":0.320714,"spread_atr":0.124722,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"0dc416ce791f","ts":"2026-09-21T13:32:22.333250+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.435,"vwap":9.3267,"ext_from_open_pct":2.0,"max_ext_allowed_pct":5.0,"volume_pace":8.527,"trend":"positive","recent_slope_pct":1.0166,"volatility":"high"},"price":9.435,"volume":{"bars":2,"last_bar_volume":31675.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":76310.0,"sell_vol":4225.0,"unclassified_vol":0.0,"imbalance":0.895077,"bid":9.4,"ask":9.47,"spread_pct":0.741918,"quote_size_imbalance":null,"quote_age_s":2.797182},"context":{"vwap":9.292424,"price_vs_vwap_pct":1.534326,"ema9":9.267,"ema20":9.255476,"ema_stack":true,"ema_warm":false,"hod":9.38,"dist_to_hod_pct":0.586354,"dist_to_hod_atr":-0.388889,"atr":0.141429,"spread_atr":0.494949,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"d9c6f01fab0d","ts":"2026-09-21T13:32:22.333250+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.0345,"vwap":10.0255,"ext_from_open_pct":0.45,"max_ext_allowed_pct":4.0,"volume_pace":13.032,"trend":"flat","recent_slope_pct":-0.0275,"volatility":"high"},"price":10.0345,"volume":{"bars":2,"last_bar_volume":237450.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":950,"trade_rate":31.666667,"buy_vol":74087.0,"sell_vol":75715.0,"unclassified_vol":0.0,"imbalance":-0.010868,"bid":10.03,"ask":10.04,"spread_pct":0.099651,"quote_size_imbalance":null,"quote_age_s":1.792259},"context":{"vwap":10.026273,"price_vs_vwap_pct":0.082053,"ema9":10.02736,"ema20":10.033981,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.844862,"dist_to_hod_atr":0.486902,"atr":0.1756,"spread_atr":0.056948,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"b8e5b1758089","ts":"2026-09-21T13:32:27.579970+00:00","symbol":"CRML","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.02,"vwap":8.866,"ext_from_open_pct":3.8,"max_ext_allowed_pct":4.0,"volume_pace":58.692,"trend":"positive","recent_slope_pct":2.2841,"volatility":"medium"},"price":9.02,"volume":{"bars":2,"last_bar_volume":1633678.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":1755,"trade_rate":58.5,"buy_vol":209281.0,"sell_vol":328894.0,"unclassified_vol":0.0,"imbalance":-0.222257,"bid":9.0,"ask":9.02,"spread_pct":0.221976,"quote_size_imbalance":null,"quote_age_s":0.071582},"context":{"vwap":8.834425,"price_vs_vwap_pct":2.100588,"ema9":8.71692,"ema20":8.662171,"ema_stack":true,"ema_warm":false,"hod":9.2,"dist_to_hod_pct":-1.956522,"dist_to_hod_atr":0.561247,"atr":0.320714,"spread_atr":0.062361,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"dd541f036def","ts":"2026-09-21T13:32:27.579970+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.28% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.404,"vwap":9.3233,"ext_from_open_pct":1.66,"max_ext_allowed_pct":5.0,"volume_pace":8.245,"trend":"positive","recent_slope_pct":0.8517,"volatility":"high"},"price":9.404,"volume":{"bars":2,"last_bar_volume":31675.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":76200.0,"sell_vol":4624.0,"unclassified_vol":0.0,"imbalance":0.885579,"bid":9.35,"ask":9.47,"spread_pct":1.275239,"quote_size_imbalance":null,"quote_age_s":3.347377},"context":{"vwap":9.292424,"price_vs_vwap_pct":1.20072,"ema9":9.267,"ema20":9.255476,"ema_stack":true,"ema_warm":false,"hod":9.38,"dist_to_hod_pct":0.255864,"dist_to_hod_atr":-0.169697,"atr":0.141429,"spread_atr":0.848485,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"eb34d7b8b6b2","ts":"2026-09-21T13:32:27.579970+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.93,"vwap":8.9225,"ext_from_open_pct":-1.0,"max_ext_allowed_pct":5.0,"volume_pace":9.524,"trend":"positive","recent_slope_pct":0.2912,"volatility":"medium"},"price":8.93,"volume":{"bars":2,"last_bar_volume":67803.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":150,"trade_rate":5.0,"buy_vol":13150.0,"sell_vol":8283.0,"unclassified_vol":0.0,"imbalance":0.22708,"bid":8.92,"ask":8.93,"spread_pct":0.112045,"quote_size_imbalance":null,"quote_age_s":0.313783},"context":{"vwap":8.922376,"price_vs_vwap_pct":0.085445,"ema9":8.88848,"ema20":8.883043,"ema_stack":true,"ema_warm":false,"hod":9.02,"dist_to_hod_pct":-0.997783,"dist_to_hod_atr":0.605769,"atr":0.148571,"spread_atr":0.067308,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"196e06a73f44","ts":"2026-09-21T13:32:32.600546+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.04,"vwap":8.8696,"ext_from_open_pct":4.03,"max_ext_allowed_pct":4.0,"volume_pace":57.527,"trend":"positive","recent_slope_pct":2.3944,"volatility":"medium"},"price":9.04,"volume":{"bars":2,"last_bar_volume":1633678.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":1734,"trade_rate":57.8,"buy_vol":224435.0,"sell_vol":322077.0,"unclassified_vol":0.0,"imbalance":-0.178664,"bid":9.02,"ask":9.06,"spread_pct":0.442478,"quote_size_imbalance":null,"quote_age_s":0.034822},"context":{"vwap":8.834425,"price_vs_vwap_pct":2.326975,"ema9":8.71692,"ema20":8.662171,"ema_stack":true,"ema_warm":false,"hod":9.2,"dist_to_hod_pct":-1.73913,"dist_to_hod_atr":0.498886,"atr":0.320714,"spread_atr":0.124722,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"ade084b50112","ts":"2026-09-21T13:32:37.620725+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.935,"vwap":8.796,"ext_from_open_pct":2.35,"max_ext_allowed_pct":5.0,"volume_pace":6.138,"trend":"positive","recent_slope_pct":1.1325,"volatility":"high"},"price":8.935,"volume":{"bars":2,"last_bar_volume":25955.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":98,"trade_rate":3.266667,"buy_vol":20656.0,"sell_vol":4151.0,"unclassified_vol":0.0,"imbalance":0.665336,"bid":8.91,"ask":8.96,"spread_pct":0.559597,"quote_size_imbalance":null,"quote_age_s":0.251348},"context":{"vwap":8.781545,"price_vs_vwap_pct":1.747471,"ema9":8.752,"ema20":8.743095,"ema_stack":true,"ema_warm":false,"hod":8.9,"dist_to_hod_pct":0.393258,"dist_to_hod_atr":-0.175602,"atr":0.199314,"spread_atr":0.25086,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"e88a2dcf9f4a","ts":"2026-09-21T13:32:37.620725+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.6649,"vwap":10.6606,"ext_from_open_pct":-0.33,"max_ext_allowed_pct":4.0,"volume_pace":0.887,"trend":"positive","recent_slope_pct":0.1422,"volatility":"unknown"},"price":10.6649,"volume":{"bars":2,"last_bar_volume":36970.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":10972.0,"sell_vol":1855.0,"unclassified_vol":0.0,"imbalance":0.710766,"bid":10.67,"ask":10.69,"spread_pct":0.187266,"quote_size_imbalance":null,"quote_age_s":1.542412},"context":{"vwap":10.660691,"price_vs_vwap_pct":0.039482,"ema9":10.63968,"ema20":10.637019,"ema_stack":true,"ema_warm":false,"hod":10.75,"dist_to_hod_pct":-0.791628,"dist_to_hod_atr":0.601869,"atr":0.141393,"spread_atr":0.14145,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"8e8412b9705d","ts":"2026-09-21T13:32:42.640837+00:00","symbol":"CRML","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.005,"vwap":8.8747,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":55.992,"trend":"positive","recent_slope_pct":2.2013,"volatility":"medium"},"price":9.005,"volume":{"bars":2,"last_bar_volume":1633678.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":1098,"trade_rate":36.6,"buy_vol":200686.0,"sell_vol":161777.0,"unclassified_vol":0.0,"imbalance":0.107346,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":0.383139},"context":{"vwap":8.834425,"price_vs_vwap_pct":1.930797,"ema9":8.71692,"ema20":8.662171,"ema_stack":true,"ema_warm":false,"hod":9.2,"dist_to_hod_pct":-2.119565,"dist_to_hod_atr":0.608018,"atr":0.320714,"spread_atr":0.03118,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"de00e767cb3f","ts":"2026-09-21T13:32:42.640837+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.43,"vwap":9.3291,"ext_from_open_pct":1.95,"max_ext_allowed_pct":5.0,"volume_pace":7.819,"trend":"positive","recent_slope_pct":0.99,"volatility":"high"},"price":9.43,"volume":{"bars":2,"last_bar_volume":31675.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":129,"trade_rate":4.3,"buy_vol":49257.0,"sell_vol":2608.0,"unclassified_vol":0.0,"imbalance":0.899431,"bid":9.39,"ask":9.47,"spread_pct":0.848356,"quote_size_imbalance":null,"quote_age_s":0.524845},"context":{"vwap":9.292424,"price_vs_vwap_pct":1.480518,"ema9":9.267,"ema20":9.255476,"ema_stack":true,"ema_warm":false,"hod":9.38,"dist_to_hod_pct":0.533049,"dist_to_hod_atr":-0.353535,"atr":0.141429,"spread_atr":0.565657,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"6c4dfd12aa1c","ts":"2026-09-21T13:32:42.640837+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.12 below VWAP $5.13","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.12,"vwap":5.1264,"ext_from_open_pct":-1.16,"max_ext_allowed_pct":3.0,"volume_pace":1.21,"trend":"flat","recent_slope_pct":0.3421,"volatility":"high"},"price":5.12,"volume":{"bars":2,"last_bar_volume":57164.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":31092.0,"sell_vol":7900.0,"unclassified_vol":0.0,"imbalance":0.594789,"bid":5.1,"ask":5.14,"spread_pct":0.78125,"quote_size_imbalance":null,"quote_age_s":3.907859},"context":{"vwap":5.124652,"price_vs_vwap_pct":-0.090779,"ema9":5.09602,"ema20":5.090248,"ema_stack":true,"ema_warm":false,"hod":5.21,"dist_to_hod_pct":-1.727447,"dist_to_hod_atr":0.690827,"atr":0.130279,"spread_atr":0.307034,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"46e8bb332da6","ts":"2026-09-21T13:32:42.640837+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.335,"vwap":8.2138,"ext_from_open_pct":1.77,"max_ext_allowed_pct":4.0,"volume_pace":4.691,"trend":"positive","recent_slope_pct":0.6964,"volatility":"high"},"price":8.335,"volume":{"bars":2,"last_bar_volume":10254.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":2309.0,"sell_vol":829.0,"unclassified_vol":0.0,"imbalance":0.471638,"bid":8.3,"ask":8.38,"spread_pct":0.959233,"quote_size_imbalance":null,"quote_age_s":0.910404},"context":{"vwap":8.205975,"price_vs_vwap_pct":1.572336,"ema9":8.219,"ema20":8.219524,"ema_stack":false,"ema_warm":false,"hod":8.28,"dist_to_hod_pct":0.664251,"dist_to_hod_atr":-0.349238,"atr":0.157486,"spread_atr":0.507983,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"65fbbea3b4c9","ts":"2026-09-21T13:32:42.640837+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 3.14% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.7,"vwap":9.5869,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":1.577,"trend":"positive","recent_slope_pct":1.3055,"volatility":"unknown"},"price":9.7,"volume":{"bars":2,"last_bar_volume":9928.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":50.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":9.4,"ask":9.7,"spread_pct":3.141361,"quote_size_imbalance":null,"quote_age_s":4.40449},"context":{"vwap":9.586826,"price_vs_vwap_pct":1.180516,"ema9":9.475,"ema20":9.461905,"ema_stack":true,"ema_warm":false,"hod":10.09,"dist_to_hod_pct":-3.865213,"dist_to_hod_atr":1.107505,"atr":0.352143,"spread_atr":0.851927,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"f56c5f30150d","ts":"2026-09-21T13:32:47.659157+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.14,"vwap":5.1272,"ext_from_open_pct":-0.77,"max_ext_allowed_pct":3.0,"volume_pace":1.174,"trend":"positive","recent_slope_pct":0.5369,"volatility":"high"},"price":5.14,"volume":{"bars":2,"last_bar_volume":57164.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":23613.0,"sell_vol":6667.0,"unclassified_vol":0.0,"imbalance":0.559643,"bid":5.1,"ask":5.14,"spread_pct":0.78125,"quote_size_imbalance":null,"quote_age_s":0.084019},"context":{"vwap":5.124652,"price_vs_vwap_pct":0.299491,"ema9":5.09602,"ema20":5.090248,"ema_stack":true,"ema_warm":false,"hod":5.21,"dist_to_hod_pct":-1.34357,"dist_to_hod_atr":0.53731,"atr":0.130279,"spread_atr":0.307034,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"3c8e65eac8e8","ts":"2026-09-21T13:32:52.719198+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.79 below VWAP $8.86","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.79,"vwap":8.8575,"ext_from_open_pct":1.15,"max_ext_allowed_pct":4.0,"volume_pace":55.366,"trend":"flat","recent_slope_pct":1.0039,"volatility":"medium"},"price":8.79,"volume":{"bars":2,"last_bar_volume":1633678.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":1564,"trade_rate":52.133333,"buy_vol":253665.0,"sell_vol":203925.0,"unclassified_vol":0.0,"imbalance":0.1087,"bid":8.79,"ask":8.82,"spread_pct":0.340716,"quote_size_imbalance":null,"quote_age_s":0.126799},"context":{"vwap":8.834425,"price_vs_vwap_pct":-0.502864,"ema9":8.71692,"ema20":8.662171,"ema_stack":true,"ema_warm":false,"hod":9.2,"dist_to_hod_pct":-4.456522,"dist_to_hod_atr":1.278396,"atr":0.320714,"spread_atr":0.093541,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"0e00771da05e","ts":"2026-09-21T13:32:52.719198+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.06% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.4611,"vwap":9.3331,"ext_from_open_pct":2.28,"max_ext_allowed_pct":5.0,"volume_pace":7.381,"trend":"positive","recent_slope_pct":1.1552,"volatility":"high"},"price":9.4611,"volume":{"bars":2,"last_bar_volume":31675.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":7582.0,"sell_vol":2347.0,"unclassified_vol":0.0,"imbalance":0.527243,"bid":9.37,"ask":9.47,"spread_pct":1.061571,"quote_size_imbalance":null,"quote_age_s":0.689793},"context":{"vwap":9.292424,"price_vs_vwap_pct":1.8152,"ema9":9.267,"ema20":9.255476,"ema_stack":true,"ema_warm":false,"hod":9.38,"dist_to_hod_pct":0.864606,"dist_to_hod_atr":-0.573434,"atr":0.141429,"spread_atr":0.707071,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"02f6ca0194e9","ts":"2026-09-21T13:32:52.719198+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.12% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.9,"vwap":8.7977,"ext_from_open_pct":1.95,"max_ext_allowed_pct":5.0,"volume_pace":5.792,"trend":"positive","recent_slope_pct":0.9356,"volatility":"high"},"price":8.9,"volume":{"bars":2,"last_bar_volume":25955.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":22809.0,"sell_vol":4742.0,"unclassified_vol":0.0,"imbalance":0.655766,"bid":8.86,"ask":8.96,"spread_pct":1.122334,"quote_size_imbalance":null,"quote_age_s":0.762211},"context":{"vwap":8.781545,"price_vs_vwap_pct":1.348908,"ema9":8.752,"ema20":8.743095,"ema_stack":true,"ema_warm":false,"hod":8.9,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.199314,"spread_atr":0.50172,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"fb718eac8c35","ts":"2026-09-21T13:32:52.719198+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.71 below VWAP $9.72","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.715,"vwap":9.7152,"ext_from_open_pct":0.26,"max_ext_allowed_pct":4.0,"volume_pace":4.559,"trend":"flat","recent_slope_pct":0.2313,"volatility":"medium"},"price":9.715,"volume":{"bars":2,"last_bar_volume":74476.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":3479.0,"sell_vol":6394.0,"unclassified_vol":0.0,"imbalance":-0.29525,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":0.014405},"context":{"vwap":9.71329,"price_vs_vwap_pct":0.017603,"ema9":9.695,"ema20":9.681905,"ema_stack":true,"ema_warm":false,"hod":9.83,"dist_to_hod_pct":-1.169888,"dist_to_hod_atr":1.4375,"atr":0.08,"spread_atr":0.125,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"e702bb68f575","ts":"2026-09-21T13:32:52.719198+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.29 below VWAP $12.31","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":12.29,"vwap":12.3088,"ext_from_open_pct":-0.08,"max_ext_allowed_pct":4.0,"volume_pace":5.705,"trend":"flat","recent_slope_pct":0.0812,"volatility":"medium"},"price":12.29,"volume":{"bars":2,"last_bar_volume":126722.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":124,"trade_rate":4.133333,"buy_vol":5469.0,"sell_vol":17740.0,"unclassified_vol":0.0,"imbalance":-0.528717,"bid":12.26,"ask":12.3,"spread_pct":0.325733,"quote_size_imbalance":null,"quote_age_s":0.095676},"context":{"vwap":12.307697,"price_vs_vwap_pct":-0.14379,"ema9":12.2913,"ema20":12.280143,"ema_stack":false,"ema_warm":false,"hod":12.49,"dist_to_hod_pct":-1.601281,"dist_to_hod_atr":1.058601,"atr":0.188929,"spread_atr":0.21172,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"4b871f93953c","ts":"2026-09-21T13:32:57.770381+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.11 below VWAP $5.13","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.11,"vwap":5.1258,"ext_from_open_pct":-1.35,"max_ext_allowed_pct":3.0,"volume_pace":1.14,"trend":"flat","recent_slope_pct":0.2445,"volatility":"high"},"price":5.11,"volume":{"bars":2,"last_bar_volume":57164.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":14059.0,"sell_vol":14220.0,"unclassified_vol":0.0,"imbalance":-0.005693,"bid":5.1,"ask":5.11,"spread_pct":0.195886,"quote_size_imbalance":null,"quote_age_s":1.037384},"context":{"vwap":5.124652,"price_vs_vwap_pct":-0.285914,"ema9":5.09602,"ema20":5.090248,"ema_stack":true,"ema_warm":false,"hod":5.21,"dist_to_hod_pct":-1.919386,"dist_to_hod_atr":0.767586,"atr":0.130279,"spread_atr":0.076759,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"f8ecfd5e25c0","ts":"2026-09-21T13:32:57.770381+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.20 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2,"vwap":8.212,"ext_from_open_pct":0.12,"max_ext_allowed_pct":4.0,"volume_pace":4.501,"trend":"flat","recent_slope_pct":-0.1218,"volatility":"high"},"price":8.2,"volume":{"bars":2,"last_bar_volume":10254.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":5419.0,"sell_vol":7806.0,"unclassified_vol":0.0,"imbalance":-0.180491,"bid":8.15,"ask":8.25,"spread_pct":1.219512,"quote_size_imbalance":null,"quote_age_s":0.735205},"context":{"vwap":8.205975,"price_vs_vwap_pct":-0.072807,"ema9":8.219,"ema20":8.219524,"ema_stack":false,"ema_warm":false,"hod":8.28,"dist_to_hod_pct":-0.966184,"dist_to_hod_atr":0.507983,"atr":0.157486,"spread_atr":0.634978,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"a8e301864ff5","ts":"2026-09-21T13:33:02.848819+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.04,"vwap":10.0264,"ext_from_open_pct":0.5,"max_ext_allowed_pct":4.0,"volume_pace":10.981,"trend":"flat","recent_slope_pct":0.063,"volatility":"high"},"price":10.04,"volume":{"bars":3,"last_bar_volume":220059.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":571,"trade_rate":19.033333,"buy_vol":52365.0,"sell_vol":36629.0,"unclassified_vol":0.0,"imbalance":0.176821,"bid":10.03,"ask":10.04,"spread_pct":0.099651,"quote_size_imbalance":null,"quote_age_s":0.000445},"context":{"vwap":10.026067,"price_vs_vwap_pct":0.138968,"ema9":10.029888,"ema20":10.034554,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.790514,"dist_to_hod_atr":0.473013,"atr":0.169129,"spread_atr":0.059127,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"bb279411c50e","ts":"2026-09-21T13:33:02.848819+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.92,"vwap":8.8005,"ext_from_open_pct":2.18,"max_ext_allowed_pct":4.0,"volume_pace":5.505,"trend":"positive","recent_slope_pct":1.0482,"volatility":"high"},"price":8.92,"volume":{"bars":2,"last_bar_volume":25955.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":17543.0,"sell_vol":2869.0,"unclassified_vol":0.0,"imbalance":0.718891,"bid":8.91,"ask":8.98,"spread_pct":0.78256,"quote_size_imbalance":null,"quote_age_s":3.146253},"context":{"vwap":8.781545,"price_vs_vwap_pct":1.576659,"ema9":8.752,"ema20":8.743095,"ema_stack":true,"ema_warm":false,"hod":8.9,"dist_to_hod_pct":0.224719,"dist_to_hod_atr":-0.100344,"atr":0.199314,"spread_atr":0.351204,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"e0e9fbd021e3","ts":"2026-09-21T13:33:02.848819+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.871,"vwap":8.7227,"ext_from_open_pct":4.12,"max_ext_allowed_pct":4.0,"volume_pace":3.69,"trend":"positive","recent_slope_pct":1.2299,"volatility":"unknown"},"price":8.871,"volume":{"bars":3,"last_bar_volume":613488.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":1105,"trade_rate":36.833333,"buy_vol":153040.0,"sell_vol":127774.0,"unclassified_vol":0.0,"imbalance":0.089974,"bid":8.87,"ask":8.88,"spread_pct":0.112676,"quote_size_imbalance":null,"quote_age_s":0.285508},"context":{"vwap":8.717847,"price_vs_vwap_pct":1.75677,"ema9":8.63592,"ema20":8.587871,"ema_stack":true,"ema_warm":false,"hod":8.85,"dist_to_hod_pct":0.237288,"dist_to_hod_atr":-0.14871,"atr":0.141214,"spread_atr":0.070814,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"ca1e51140eac","ts":"2026-09-21T13:33:07.943246+00:00","symbol":"CRML","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.905,"vwap":8.8637,"ext_from_open_pct":2.47,"max_ext_allowed_pct":4.0,"volume_pace":53.559,"trend":"flat","recent_slope_pct":0.654,"volatility":"medium"},"price":8.905,"volume":{"bars":3,"last_bar_volume":1016027.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":1932,"trade_rate":64.4,"buy_vol":298296.0,"sell_vol":203995.0,"unclassified_vol":0.0,"imbalance":0.187742,"bid":8.89,"ask":8.92,"spread_pct":0.336889,"quote_size_imbalance":null,"quote_age_s":0.121605},"context":{"vwap":8.863448,"price_vs_vwap_pct":0.468801,"ema9":8.741036,"ema20":8.678869,"ema_stack":true,"ema_warm":false,"hod":9.26,"dist_to_hod_pct":-3.833693,"dist_to_hod_atr":1.066687,"atr":0.332806,"spread_atr":0.090143,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"5d66022ab1c2","ts":"2026-09-21T13:33:07.943246+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.69,"vwap":10.6611,"ext_from_open_pct":-0.09,"max_ext_allowed_pct":4.0,"volume_pace":0.766,"trend":"positive","recent_slope_pct":0.1597,"volatility":"unknown"},"price":10.69,"volume":{"bars":3,"last_bar_volume":22139.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":11089.0,"sell_vol":2701.0,"unclassified_vol":0.0,"imbalance":0.608267,"bid":10.68,"ask":10.7,"spread_pct":0.187091,"quote_size_imbalance":null,"quote_age_s":0.087106},"context":{"vwap":10.660722,"price_vs_vwap_pct":0.274633,"ema9":10.644564,"ema20":10.639598,"ema_stack":true,"ema_warm":false,"hod":10.75,"dist_to_hod_pct":-0.55814,"dist_to_hod_atr":0.442546,"atr":0.135579,"spread_atr":0.147515,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"39f52951cfc3","ts":"2026-09-21T13:33:12.963616+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4,"vwap":6.3876,"ext_from_open_pct":1.75,"max_ext_allowed_pct":4.0,"volume_pace":7.479,"trend":"positive","recent_slope_pct":0.5994,"volatility":"unknown"},"price":6.4,"volume":{"bars":3,"last_bar_volume":30689.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":1252,"trade_rate":41.733333,"buy_vol":224134.0,"sell_vol":1198743.0,"unclassified_vol":0.0,"imbalance":-0.684957,"bid":6.4,"ask":6.41,"spread_pct":0.156128,"quote_size_imbalance":null,"quote_age_s":0.020092},"context":{"vwap":6.323909,"price_vs_vwap_pct":1.20323,"ema9":6.3072,"ema20":6.29839,"ema_stack":true,"ema_warm":false,"hod":6.36,"dist_to_hod_pct":0.628931,"dist_to_hod_atr":-0.981227,"atr":0.040765,"spread_atr":0.245307,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"a5cc0902836c","ts":"2026-09-21T13:33:17.983614+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.7806,"vwap":10.6658,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.763,"trend":"positive","recent_slope_pct":0.4138,"volatility":"unknown"},"price":10.7806,"volume":{"bars":3,"last_bar_volume":22139.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":169,"trade_rate":5.633333,"buy_vol":27554.0,"sell_vol":7168.0,"unclassified_vol":0.0,"imbalance":0.587121,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.018956},"context":{"vwap":10.660722,"price_vs_vwap_pct":1.124482,"ema9":10.644564,"ema20":10.639598,"ema_stack":true,"ema_warm":false,"hod":10.75,"dist_to_hod_pct":0.284651,"dist_to_hod_atr":-0.225699,"atr":0.135579,"spread_atr":0.073758,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"44a9c2f1c481","ts":"2026-09-21T13:33:17.983614+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.85,"vwap":8.7274,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":3.533,"trend":"positive","recent_slope_pct":1.1586,"volatility":"unknown"},"price":8.85,"volume":{"bars":3,"last_bar_volume":613488.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":891,"trade_rate":29.7,"buy_vol":107514.0,"sell_vol":88151.0,"unclassified_vol":0.0,"imbalance":0.09896,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.27925},"context":{"vwap":8.717847,"price_vs_vwap_pct":1.515885,"ema9":8.63592,"ema20":8.587871,"ema_stack":true,"ema_warm":false,"hod":8.85,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.141214,"spread_atr":0.070814,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"433f39a69e19","ts":"2026-09-21T13:33:23.037649+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.45 below VWAP $6.45","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4499,"vwap":6.4508,"ext_from_open_pct":0.94,"max_ext_allowed_pct":4.0,"volume_pace":4.433,"trend":"flat","recent_slope_pct":0.0227,"volatility":"high"},"price":6.4499,"volume":{"bars":3,"last_bar_volume":34783.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":2203.0,"sell_vol":8103.0,"unclassified_vol":0.0,"imbalance":-0.572482,"bid":6.43,"ask":6.45,"spread_pct":0.310559,"quote_size_imbalance":null,"quote_age_s":0.657659},"context":{"vwap":6.450535,"price_vs_vwap_pct":-0.009851,"ema9":6.4628,"ema20":6.458764,"ema_stack":false,"ema_warm":false,"hod":6.6,"dist_to_hod_pct":-2.274242,"dist_to_hod_atr":1.027903,"atr":0.146026,"spread_atr":0.136962,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"c2e5e93e717b","ts":"2026-09-21T13:33:28.090667+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8699,"vwap":8.7284,"ext_from_open_pct":4.11,"max_ext_allowed_pct":4.0,"volume_pace":3.451,"trend":"positive","recent_slope_pct":1.2262,"volatility":"unknown"},"price":8.8699,"volume":{"bars":3,"last_bar_volume":613488.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":997,"trade_rate":33.233333,"buy_vol":101736.0,"sell_vol":88125.0,"unclassified_vol":0.0,"imbalance":0.071689,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.075413},"context":{"vwap":8.717847,"price_vs_vwap_pct":1.744152,"ema9":8.63592,"ema20":8.587871,"ema_stack":true,"ema_warm":false,"hod":8.85,"dist_to_hod_pct":0.224859,"dist_to_hod_atr":-0.140921,"atr":0.141214,"spread_atr":0.070814,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"dddad02aea93","ts":"2026-09-21T13:33:33.150247+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.46,"vwap":6.4512,"ext_from_open_pct":1.1,"max_ext_allowed_pct":4.0,"volume_pace":4.352,"trend":"flat","recent_slope_pct":0.0696,"volatility":"high"},"price":6.46,"volume":{"bars":3,"last_bar_volume":34783.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":120,"trade_rate":4.0,"buy_vol":6871.0,"sell_vol":10832.0,"unclassified_vol":0.0,"imbalance":-0.223747,"bid":6.45,"ask":6.48,"spread_pct":0.464037,"quote_size_imbalance":null,"quote_age_s":0.232923},"context":{"vwap":6.450535,"price_vs_vwap_pct":0.146725,"ema9":6.4628,"ema20":6.458764,"ema_stack":false,"ema_warm":false,"hod":6.6,"dist_to_hod_pct":-2.121212,"dist_to_hod_atr":0.958737,"atr":0.146026,"spread_atr":0.205444,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"29ee057c496e","ts":"2026-09-21T13:33:33.150247+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.11% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.0299,"vwap":8.8123,"ext_from_open_pct":3.44,"max_ext_allowed_pct":5.0,"volume_pace":5.018,"trend":"positive","recent_slope_pct":1.1094,"volatility":"high"},"price":9.0299,"volume":{"bars":3,"last_bar_volume":32584.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":10561.0,"sell_vol":1727.0,"unclassified_vol":0.0,"imbalance":0.718913,"bid":8.93,"ask":9.03,"spread_pct":1.113586,"quote_size_imbalance":null,"quote_age_s":0.610213},"context":{"vwap":8.80046,"price_vs_vwap_pct":2.607137,"ema9":8.7856,"ema20":8.759943,"ema_stack":true,"ema_warm":false,"hod":8.98,"dist_to_hod_pct":0.555679,"dist_to_hod_atr":-0.250872,"atr":0.198906,"spread_atr":0.50275,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"81b5379b9286","ts":"2026-09-21T13:33:33.150247+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.7174,"vwap":9.7152,"ext_from_open_pct":0.28,"max_ext_allowed_pct":5.0,"volume_pace":3.857,"trend":"flat","recent_slope_pct":0.064,"volatility":"medium"},"price":9.7174,"volume":{"bars":3,"last_bar_volume":14956.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2818.0,"sell_vol":660.0,"unclassified_vol":0.0,"imbalance":0.620472,"bid":9.7,"ask":9.72,"spread_pct":0.205973,"quote_size_imbalance":null,"quote_age_s":2.945152},"context":{"vwap":9.715421,"price_vs_vwap_pct":0.020368,"ema9":9.699,"ema20":9.685057,"ema_stack":true,"ema_warm":false,"hod":9.83,"dist_to_hod_pct":-1.145473,"dist_to_hod_atr":1.39628,"atr":0.080643,"spread_atr":0.248007,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"cf95ef0dfe4b","ts":"2026-09-21T13:33:38.236370+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.931,"vwap":8.8101,"ext_from_open_pct":2.3,"max_ext_allowed_pct":5.0,"volume_pace":4.902,"trend":"positive","recent_slope_pct":0.7773,"volatility":"high"},"price":8.931,"volume":{"bars":3,"last_bar_volume":32584.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":8412.0,"sell_vol":1676.0,"unclassified_vol":0.0,"imbalance":0.667724,"bid":8.93,"ask":9.01,"spread_pct":0.891862,"quote_size_imbalance":null,"quote_age_s":0.783703},"context":{"vwap":8.80046,"price_vs_vwap_pct":1.483332,"ema9":8.7856,"ema20":8.759943,"ema_stack":true,"ema_warm":false,"hod":8.98,"dist_to_hod_pct":-0.545657,"dist_to_hod_atr":0.246347,"atr":0.198906,"spread_atr":0.4022,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"f357bf6a0119","ts":"2026-09-21T13:33:43.263543+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.11% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.98,"vwap":8.8133,"ext_from_open_pct":2.86,"max_ext_allowed_pct":4.0,"volume_pace":4.854,"trend":"positive","recent_slope_pct":0.942,"volatility":"high"},"price":8.98,"volume":{"bars":3,"last_bar_volume":32584.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":11112.0,"sell_vol":1179.0,"unclassified_vol":0.0,"imbalance":0.808152,"bid":8.93,"ask":9.03,"spread_pct":1.113586,"quote_size_imbalance":null,"quote_age_s":0.479308},"context":{"vwap":8.80046,"price_vs_vwap_pct":2.040121,"ema9":8.7856,"ema20":8.759943,"ema_stack":true,"ema_warm":false,"hod":8.98,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.198906,"spread_atr":0.50275,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"931feec0fa19","ts":"2026-09-21T13:33:48.292614+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.104,"vwap":7.9713,"ext_from_open_pct":1.17,"max_ext_allowed_pct":5.0,"volume_pace":28.407,"trend":"flat","recent_slope_pct":0.8468,"volatility":"unknown"},"price":8.104,"volume":{"bars":3,"last_bar_volume":16334.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":3322.0,"sell_vol":1757.0,"unclassified_vol":0.0,"imbalance":0.308132,"bid":8.05,"ask":8.13,"spread_pct":0.988875,"quote_size_imbalance":null,"quote_age_s":1.836997},"context":{"vwap":7.969929,"price_vs_vwap_pct":1.682214,"ema9":7.9215,"ema20":7.881693,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.769697,"dist_to_hod_atr":0.335239,"atr":0.43551,"spread_atr":0.183693,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"80fd52a07eff","ts":"2026-09-21T13:33:48.292614+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.71 below VWAP $9.72","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.71,"vwap":9.7151,"ext_from_open_pct":0.21,"max_ext_allowed_pct":5.0,"volume_pace":3.601,"trend":"flat","recent_slope_pct":0.0411,"volatility":"medium"},"price":9.71,"volume":{"bars":3,"last_bar_volume":14956.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":2455.0,"sell_vol":103.0,"unclassified_vol":0.0,"imbalance":0.919468,"bid":9.7,"ask":9.72,"spread_pct":0.205973,"quote_size_imbalance":null,"quote_age_s":0.196182},"context":{"vwap":9.715421,"price_vs_vwap_pct":-0.0558,"ema9":9.699,"ema20":9.685057,"ema_stack":true,"ema_warm":false,"hod":9.83,"dist_to_hod_pct":-1.220753,"dist_to_hod_atr":1.488043,"atr":0.080643,"spread_atr":0.248007,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"7903a44ac2ed","ts":"2026-09-21T13:33:53.319025+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.61% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.12,"vwap":7.9717,"ext_from_open_pct":1.37,"max_ext_allowed_pct":5.0,"volume_pace":27.814,"trend":"positive","recent_slope_pct":0.9061,"volatility":"unknown"},"price":8.12,"volume":{"bars":3,"last_bar_volume":16334.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":2234.0,"sell_vol":185.0,"unclassified_vol":0.0,"imbalance":0.847044,"bid":8.0,"ask":8.13,"spread_pct":1.611903,"quote_size_imbalance":null,"quote_age_s":0.916951},"context":{"vwap":7.969929,"price_vs_vwap_pct":1.882968,"ema9":7.9215,"ema20":7.881693,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.575758,"dist_to_hod_atr":0.2985,"atr":0.43551,"spread_atr":0.2985,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"7573fa403752","ts":"2026-09-21T13:33:53.319025+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.38 below VWAP $6.38","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.38,"vwap":6.3814,"ext_from_open_pct":1.43,"max_ext_allowed_pct":4.0,"volume_pace":6.975,"trend":"positive","recent_slope_pct":0.5051,"volatility":"unknown"},"price":6.38,"volume":{"bars":3,"last_bar_volume":30689.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":216,"trade_rate":7.2,"buy_vol":46946.0,"sell_vol":77981.0,"unclassified_vol":0.0,"imbalance":-0.248425,"bid":6.38,"ask":6.39,"spread_pct":0.156617,"quote_size_imbalance":null,"quote_age_s":0.716065},"context":{"vwap":6.323909,"price_vs_vwap_pct":0.88697,"ema9":6.3072,"ema20":6.29839,"ema_stack":true,"ema_warm":false,"hod":6.36,"dist_to_hod_pct":0.314465,"dist_to_hod_atr":-0.490613,"atr":0.040765,"spread_atr":0.245307,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"6b4faea862f3","ts":"2026-09-21T13:33:58.339208+00:00","symbol":"FTFT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.78,"vwap":5.6027,"ext_from_open_pct":4.9,"max_ext_allowed_pct":5.0,"volume_pace":3.444,"trend":"positive","recent_slope_pct":1.4757,"volatility":"unknown"},"price":5.78,"volume":{"bars":3,"last_bar_volume":11254.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":3788.0,"sell_vol":1389.0,"unclassified_vol":0.0,"imbalance":0.463396,"bid":5.72,"ask":5.77,"spread_pct":0.870322,"quote_size_imbalance":null,"quote_age_s":1.064057},"context":{"vwap":5.56999,"price_vs_vwap_pct":3.770378,"ema9":5.537664,"ema20":5.519084,"ema_stack":true,"ema_warm":false,"hod":5.75,"dist_to_hod_pct":0.521739,"dist_to_hod_atr":-0.263185,"atr":0.113988,"spread_atr":0.438642,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"11e87e70dfcc","ts":"2026-09-21T13:33:58.339208+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.72,"vwap":9.7151,"ext_from_open_pct":0.31,"max_ext_allowed_pct":5.0,"volume_pace":3.518,"trend":"flat","recent_slope_pct":0.072,"volatility":"medium"},"price":9.72,"volume":{"bars":3,"last_bar_volume":14956.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":4456.0,"sell_vol":131.0,"unclassified_vol":0.0,"imbalance":0.942882,"bid":9.71,"ask":9.73,"spread_pct":0.205761,"quote_size_imbalance":null,"quote_age_s":0.295782},"context":{"vwap":9.715421,"price_vs_vwap_pct":0.047129,"ema9":9.699,"ema20":9.685057,"ema_stack":true,"ema_warm":false,"hod":9.83,"dist_to_hod_pct":-1.119023,"dist_to_hod_atr":1.364039,"atr":0.080643,"spread_atr":0.248007,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"d76b150ee5f9","ts":"2026-09-21T13:34:03.358185+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.43 below VWAP $6.45","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.43,"vwap":6.4513,"ext_from_open_pct":0.63,"max_ext_allowed_pct":4.0,"volume_pace":3.849,"trend":"flat","recent_slope_pct":-0.0697,"volatility":"high"},"price":6.43,"volume":{"bars":4,"last_bar_volume":18546.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":528.0,"sell_vol":1921.0,"unclassified_vol":0.0,"imbalance":-0.568804,"bid":6.42,"ask":6.47,"spread_pct":0.775795,"quote_size_imbalance":null,"quote_age_s":0.874435},"context":{"vwap":6.451362,"price_vs_vwap_pct":-0.331125,"ema9":6.46324,"ema20":6.459358,"ema_stack":false,"ema_warm":false,"hod":6.6,"dist_to_hod_pct":-2.575758,"dist_to_hod_atr":1.190994,"atr":0.142738,"spread_atr":0.350292,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"cde3ec027111","ts":"2026-09-21T13:34:03.358185+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $5.51 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7699,"vwap":5.6019,"ext_from_open_pct":4.72,"max_ext_allowed_pct":4.0,"volume_pace":3.437,"trend":"positive","recent_slope_pct":1.1519,"volatility":"unknown"},"price":5.7699,"volume":{"bars":4,"last_bar_volume":8001.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":2800.0,"sell_vol":2032.0,"unclassified_vol":0.0,"imbalance":0.15894,"bid":5.72,"ask":5.77,"spread_pct":0.870322,"quote_size_imbalance":null,"quote_age_s":6.083034},"context":{"vwap":5.600985,"price_vs_vwap_pct":3.015814,"ema9":5.574151,"ema20":5.538228,"ema_stack":true,"ema_warm":false,"hod":5.89,"dist_to_hod_pct":-2.039049,"dist_to_hod_atr":0.948953,"atr":0.126561,"spread_atr":0.395068,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"c9a5dc1b7954","ts":"2026-09-21T13:34:08.380501+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.99,"vwap":8.8189,"ext_from_open_pct":2.98,"max_ext_allowed_pct":4.0,"volume_pace":4.523,"trend":"positive","recent_slope_pct":0.7482,"volatility":"high"},"price":8.99,"volume":{"bars":4,"last_bar_volume":20470.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":6874.0,"sell_vol":3579.0,"unclassified_vol":0.0,"imbalance":0.315221,"bid":8.95,"ask":9.02,"spread_pct":0.779076,"quote_size_imbalance":null,"quote_age_s":2.099993},"context":{"vwap":8.817292,"price_vs_vwap_pct":1.958737,"ema9":8.82348,"ema20":8.780425,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-0.442968,"dist_to_hod_atr":0.207732,"atr":0.192556,"spread_atr":0.363531,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"9a82a77a7315","ts":"2026-09-21T13:34:23.484536+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.34,"vwap":9.3207,"ext_from_open_pct":0.97,"max_ext_allowed_pct":4.0,"volume_pace":5.33,"trend":"flat","recent_slope_pct":0.102,"volatility":"high"},"price":9.34,"volume":{"bars":4,"last_bar_volume":8037.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":4590.0,"sell_vol":3002.0,"unclassified_vol":0.0,"imbalance":0.209168,"bid":9.27,"ask":9.35,"spread_pct":0.859291,"quote_size_imbalance":null,"quote_age_s":0.742534},"context":{"vwap":9.321355,"price_vs_vwap_pct":0.200025,"ema9":9.28048,"ema20":9.264914,"ema_stack":true,"ema_warm":false,"hod":9.48,"dist_to_hod_pct":-1.476793,"dist_to_hod_atr":0.948955,"atr":0.147531,"spread_atr":0.54226,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"9a1f6a2882a8","ts":"2026-09-21T13:34:23.484536+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.01% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.93,"vwap":8.8259,"ext_from_open_pct":2.29,"max_ext_allowed_pct":4.0,"volume_pace":4.569,"trend":"positive","recent_slope_pct":0.614,"volatility":"high"},"price":8.93,"volume":{"bars":4,"last_bar_volume":20470.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":98,"trade_rate":3.266667,"buy_vol":10694.0,"sell_vol":7748.0,"unclassified_vol":0.0,"imbalance":0.159744,"bid":8.91,"ask":9.0,"spread_pct":1.005025,"quote_size_imbalance":null,"quote_age_s":1.207656},"context":{"vwap":8.817292,"price_vs_vwap_pct":1.278256,"ema9":8.82348,"ema20":8.780425,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-1.10742,"dist_to_hod_atr":0.51933,"atr":0.192556,"spread_atr":0.467397,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"1f441578284a","ts":"2026-09-21T13:34:28.524211+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.46,"vwap":6.4526,"ext_from_open_pct":1.1,"max_ext_allowed_pct":4.0,"volume_pace":3.878,"trend":"flat","recent_slope_pct":0.0232,"volatility":"high"},"price":6.46,"volume":{"bars":4,"last_bar_volume":18546.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":188,"trade_rate":6.266667,"buy_vol":20162.0,"sell_vol":9513.0,"unclassified_vol":0.0,"imbalance":0.358854,"bid":6.45,"ask":6.47,"spread_pct":0.309598,"quote_size_imbalance":null,"quote_age_s":0.246181},"context":{"vwap":6.451362,"price_vs_vwap_pct":0.133893,"ema9":6.46324,"ema20":6.459358,"ema_stack":false,"ema_warm":false,"hod":6.6,"dist_to_hod_pct":-2.121212,"dist_to_hod_atr":0.980818,"atr":0.142738,"spread_atr":0.140117,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"b57103628399","ts":"2026-09-21T13:34:28.524211+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2226,"vwap":8.212,"ext_from_open_pct":0.4,"max_ext_allowed_pct":4.0,"volume_pace":3.331,"trend":"flat","recent_slope_pct":-0.0363,"volatility":"high"},"price":8.2226,"volume":{"bars":4,"last_bar_volume":17970.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":1630.0,"sell_vol":2308.0,"unclassified_vol":0.0,"imbalance":-0.172169,"bid":8.11,"ask":8.18,"spread_pct":0.859423,"quote_size_imbalance":null,"quote_age_s":12.211409},"context":{"vwap":8.212173,"price_vs_vwap_pct":0.126965,"ema9":8.20816,"ema20":8.214077,"ema_stack":false,"ema_warm":false,"hod":8.3788,"dist_to_hod_pct":-1.864229,"dist_to_hod_atr":0.99157,"atr":0.157528,"spread_atr":0.444365,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"49784a8c3519","ts":"2026-09-21T13:34:28.524211+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.955,"vwap":8.8277,"ext_from_open_pct":2.58,"max_ext_allowed_pct":4.0,"volume_pace":4.531,"trend":"positive","recent_slope_pct":0.67,"volatility":"high"},"price":8.955,"volume":{"bars":4,"last_bar_volume":20470.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":12844.0,"sell_vol":7648.0,"unclassified_vol":0.0,"imbalance":0.253562,"bid":8.91,"ask":8.98,"spread_pct":0.78256,"quote_size_imbalance":null,"quote_age_s":0.072364},"context":{"vwap":8.817292,"price_vs_vwap_pct":1.56179,"ema9":8.82348,"ema20":8.780425,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-0.830565,"dist_to_hod_atr":0.389498,"atr":0.192556,"spread_atr":0.363531,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"670277c36b04","ts":"2026-09-21T13:34:28.524211+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.86,"vwap":8.7669,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":3.591,"trend":"positive","recent_slope_pct":0.9051,"volatility":"unknown"},"price":8.86,"volume":{"bars":4,"last_bar_volume":644925.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":809,"trade_rate":26.966667,"buy_vol":81606.0,"sell_vol":157060.0,"unclassified_vol":0.0,"imbalance":-0.316149,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.331683},"context":{"vwap":8.75677,"price_vs_vwap_pct":1.178862,"ema9":8.691736,"ema20":8.619026,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-0.839396,"dist_to_hod_atr":0.518317,"atr":0.144699,"spread_atr":0.069109,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"58a73f9cadf8","ts":"2026-09-21T13:34:33.547246+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.70 below VWAP $9.72","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.7,"vwap":9.7157,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":3.252,"trend":"flat","recent_slope_pct":-0.0154,"volatility":"medium"},"price":9.7,"volume":{"bars":4,"last_bar_volume":12922.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":4795.0,"sell_vol":7965.0,"unclassified_vol":0.0,"imbalance":-0.248433,"bid":9.69,"ask":9.71,"spread_pct":0.206186,"quote_size_imbalance":null,"quote_age_s":0.638213},"context":{"vwap":9.715121,"price_vs_vwap_pct":-0.155641,"ema9":9.7032,"ema20":9.688385,"ema_stack":false,"ema_warm":false,"hod":9.83,"dist_to_hod_pct":-1.322482,"dist_to_hod_atr":1.687753,"atr":0.077026,"spread_atr":0.259654,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"4b713ec10413","ts":"2026-09-21T13:34:38.570298+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.30 below VWAP $9.32","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.3,"vwap":9.3203,"ext_from_open_pct":0.54,"max_ext_allowed_pct":4.0,"volume_pace":5.049,"trend":"flat","recent_slope_pct":0.0161,"volatility":"high"},"price":9.3,"volume":{"bars":4,"last_bar_volume":8037.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":3208.0,"sell_vol":1476.0,"unclassified_vol":0.0,"imbalance":0.369769,"bid":9.27,"ask":9.34,"spread_pct":0.752284,"quote_size_imbalance":null,"quote_age_s":0.085632},"context":{"vwap":9.321355,"price_vs_vwap_pct":-0.229097,"ema9":9.28048,"ema20":9.264914,"ema_stack":true,"ema_warm":false,"hod":9.48,"dist_to_hod_pct":-1.898734,"dist_to_hod_atr":1.220085,"atr":0.147531,"spread_atr":0.474477,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"71c55724d012","ts":"2026-09-21T13:34:38.570298+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.12 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.12,"vwap":8.2113,"ext_from_open_pct":-0.85,"max_ext_allowed_pct":4.0,"volume_pace":3.219,"trend":"flat","recent_slope_pct":-0.287,"volatility":"high"},"price":8.12,"volume":{"bars":4,"last_bar_volume":17970.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":214.0,"sell_vol":2093.0,"unclassified_vol":0.0,"imbalance":-0.814478,"bid":8.11,"ask":8.17,"spread_pct":0.737101,"quote_size_imbalance":null,"quote_age_s":0.436119},"context":{"vwap":8.212173,"price_vs_vwap_pct":-1.1224,"ema9":8.20816,"ema20":8.214077,"ema_stack":false,"ema_warm":false,"hod":8.3788,"dist_to_hod_pct":-3.088748,"dist_to_hod_atr":1.642883,"atr":0.157528,"spread_atr":0.380885,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"76d92ba6344b","ts":"2026-09-21T13:34:43.627247+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.93 below VWAP $8.94","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.925,"vwap":8.9365,"ext_from_open_pct":-1.05,"max_ext_allowed_pct":4.0,"volume_pace":6.476,"trend":"flat","recent_slope_pct":0.1605,"volatility":"medium"},"price":8.925,"volume":{"bars":4,"last_bar_volume":50014.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":163,"trade_rate":5.433333,"buy_vol":12512.0,"sell_vol":19078.0,"unclassified_vol":0.0,"imbalance":-0.207851,"bid":8.92,"ask":8.93,"spread_pct":0.112045,"quote_size_imbalance":null,"quote_age_s":1.625791},"context":{"vwap":8.934894,"price_vs_vwap_pct":-0.110733,"ema9":8.929387,"ema20":8.904921,"ema_stack":false,"ema_warm":false,"hod":9.05,"dist_to_hod_pct":-1.381215,"dist_to_hod_atr":0.875514,"atr":0.142773,"spread_atr":0.070041,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"19c0ba387811","ts":"2026-09-21T13:34:43.627247+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.7274,"vwap":9.716,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":3.139,"trend":"flat","recent_slope_pct":0.0409,"volatility":"medium"},"price":9.7274,"volume":{"bars":4,"last_bar_volume":12922.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":2272.0,"sell_vol":5926.0,"unclassified_vol":0.0,"imbalance":-0.445718,"bid":9.67,"ask":9.69,"spread_pct":0.206612,"quote_size_imbalance":null,"quote_age_s":2.142188},"context":{"vwap":9.715121,"price_vs_vwap_pct":0.126394,"ema9":9.7032,"ema20":9.688385,"ema_stack":true,"ema_warm":false,"hod":9.83,"dist_to_hod_pct":-1.043744,"dist_to_hod_atr":1.332026,"atr":0.077026,"spread_atr":0.259654,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"d56755452ca3","ts":"2026-09-21T13:34:48.668813+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.45 below VWAP $6.45","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.447,"vwap":6.4523,"ext_from_open_pct":0.89,"max_ext_allowed_pct":4.0,"volume_pace":3.702,"trend":"flat","recent_slope_pct":-0.017,"volatility":"high"},"price":6.447,"volume":{"bars":4,"last_bar_volume":18546.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":3012.0,"sell_vol":5024.0,"unclassified_vol":0.0,"imbalance":-0.250373,"bid":6.42,"ask":6.45,"spread_pct":0.4662,"quote_size_imbalance":null,"quote_age_s":0.278919},"context":{"vwap":6.451362,"price_vs_vwap_pct":-0.067614,"ema9":6.46324,"ema20":6.459358,"ema_stack":false,"ema_warm":false,"hod":6.6,"dist_to_hod_pct":-2.318182,"dist_to_hod_atr":1.071894,"atr":0.142738,"spread_atr":0.210175,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"c67e6b7d6066","ts":"2026-09-21T13:34:48.668813+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.58% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.93,"vwap":8.8293,"ext_from_open_pct":2.29,"max_ext_allowed_pct":4.0,"volume_pace":4.309,"trend":"positive","recent_slope_pct":0.614,"volatility":"high"},"price":8.93,"volume":{"bars":4,"last_bar_volume":20470.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":11911.0,"sell_vol":10052.0,"unclassified_vol":0.0,"imbalance":0.084642,"bid":8.81,"ask":8.95,"spread_pct":1.576577,"quote_size_imbalance":null,"quote_age_s":2.701408},"context":{"vwap":8.817292,"price_vs_vwap_pct":1.278256,"ema9":8.82348,"ema20":8.780425,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-1.10742,"dist_to_hod_atr":0.51933,"atr":0.192556,"spread_atr":0.727062,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"82652f82a43e","ts":"2026-09-21T13:34:48.668813+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.67 below VWAP $9.71","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.67,"vwap":9.7145,"ext_from_open_pct":-0.21,"max_ext_allowed_pct":4.0,"volume_pace":3.107,"trend":"flat","recent_slope_pct":-0.0772,"volatility":"medium"},"price":9.67,"volume":{"bars":4,"last_bar_volume":12922.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":2646.0,"sell_vol":7126.0,"unclassified_vol":0.0,"imbalance":-0.458453,"bid":9.64,"ask":9.68,"spread_pct":0.414079,"quote_size_imbalance":null,"quote_age_s":0.262647},"context":{"vwap":9.715121,"price_vs_vwap_pct":-0.464438,"ema9":9.7032,"ema20":9.688385,"ema_stack":false,"ema_warm":false,"hod":9.83,"dist_to_hod_pct":-1.62767,"dist_to_hod_atr":2.077234,"atr":0.077026,"spread_atr":0.519308,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"de4d047a0db5","ts":"2026-09-21T13:34:48.668813+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.75 below VWAP $8.76","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.75,"vwap":8.7629,"ext_from_open_pct":2.7,"max_ext_allowed_pct":4.0,"volume_pace":3.459,"trend":"positive","recent_slope_pct":0.6563,"volatility":"unknown"},"price":8.75,"volume":{"bars":4,"last_bar_volume":644925.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":583,"trade_rate":19.433333,"buy_vol":47631.0,"sell_vol":73682.0,"unclassified_vol":0.0,"imbalance":-0.214742,"bid":8.75,"ask":8.76,"spread_pct":0.11422,"quote_size_imbalance":null,"quote_age_s":0.085069},"context":{"vwap":8.75677,"price_vs_vwap_pct":-0.077309,"ema9":8.691736,"ema20":8.619026,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-2.070509,"dist_to_hod_atr":1.278516,"atr":0.144699,"spread_atr":0.069109,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"9c3a1b03b2f2","ts":"2026-09-21T13:34:53.714677+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.34,"vwap":9.3207,"ext_from_open_pct":0.97,"max_ext_allowed_pct":5.0,"volume_pace":4.79,"trend":"flat","recent_slope_pct":0.102,"volatility":"high"},"price":9.34,"volume":{"bars":4,"last_bar_volume":8037.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":150.0,"sell_vol":245.0,"unclassified_vol":0.0,"imbalance":-0.240506,"bid":9.25,"ask":9.34,"spread_pct":0.968263,"quote_size_imbalance":null,"quote_age_s":0.604521},"context":{"vwap":9.321355,"price_vs_vwap_pct":0.200025,"ema9":9.28048,"ema20":9.264914,"ema_stack":true,"ema_warm":false,"hod":9.48,"dist_to_hod_pct":-1.476793,"dist_to_hod_atr":0.948955,"atr":0.147531,"spread_atr":0.610042,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"2fe590eee3fb","ts":"2026-09-21T13:34:53.714677+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.455,"vwap":6.4528,"ext_from_open_pct":1.02,"max_ext_allowed_pct":4.0,"volume_pace":3.691,"trend":"flat","recent_slope_pct":0.0077,"volatility":"high"},"price":6.455,"volume":{"bars":4,"last_bar_volume":18546.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":6815.0,"sell_vol":5424.0,"unclassified_vol":0.0,"imbalance":0.113653,"bid":6.46,"ask":6.47,"spread_pct":0.154679,"quote_size_imbalance":null,"quote_age_s":0.426345},"context":{"vwap":6.451362,"price_vs_vwap_pct":0.05639,"ema9":6.46324,"ema20":6.459358,"ema_stack":false,"ema_warm":false,"hod":6.6,"dist_to_hod_pct":-2.19697,"dist_to_hod_atr":1.015847,"atr":0.142738,"spread_atr":0.070058,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"fb9195015b35","ts":"2026-09-21T13:34:53.714677+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.9,"vwap":8.8284,"ext_from_open_pct":1.95,"max_ext_allowed_pct":4.0,"volume_pace":4.245,"trend":"positive","recent_slope_pct":0.5468,"volatility":"high"},"price":8.9,"volume":{"bars":4,"last_bar_volume":20470.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":5373.0,"sell_vol":2978.0,"unclassified_vol":0.0,"imbalance":0.286792,"bid":8.9,"ask":8.95,"spread_pct":0.560224,"quote_size_imbalance":null,"quote_age_s":1.417838},"context":{"vwap":8.817292,"price_vs_vwap_pct":0.938016,"ema9":8.82348,"ema20":8.780425,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-1.439646,"dist_to_hod_atr":0.675129,"atr":0.192556,"spread_atr":0.259665,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"ab729e18fcd1","ts":"2026-09-21T13:34:53.714677+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.785,"vwap":8.7646,"ext_from_open_pct":3.11,"max_ext_allowed_pct":4.0,"volume_pace":3.421,"trend":"positive","recent_slope_pct":0.7356,"volatility":"unknown"},"price":8.785,"volume":{"bars":4,"last_bar_volume":644925.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":605,"trade_rate":20.166667,"buy_vol":55045.0,"sell_vol":70115.0,"unclassified_vol":0.0,"imbalance":-0.120406,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":0.373838},"context":{"vwap":8.75677,"price_vs_vwap_pct":0.322382,"ema9":8.691736,"ema20":8.619026,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-1.678791,"dist_to_hod_atr":1.036635,"atr":0.144699,"spread_atr":0.069109,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"2a6860340ff3","ts":"2026-09-21T13:34:58.732932+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.94,"vwap":8.9368,"ext_from_open_pct":-0.89,"max_ext_allowed_pct":4.0,"volume_pace":6.267,"trend":"flat","recent_slope_pct":0.1939,"volatility":"medium"},"price":8.94,"volume":{"bars":4,"last_bar_volume":50014.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":12716.0,"sell_vol":26034.0,"unclassified_vol":0.0,"imbalance":-0.34369,"bid":8.94,"ask":8.95,"spread_pct":0.111794,"quote_size_imbalance":null,"quote_age_s":0.141566},"context":{"vwap":8.934894,"price_vs_vwap_pct":0.057149,"ema9":8.929387,"ema20":8.904921,"ema_stack":true,"ema_warm":false,"hod":9.05,"dist_to_hod_pct":-1.21547,"dist_to_hod_atr":0.770452,"atr":0.142773,"spread_atr":0.070041,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"c53c451d70b6","ts":"2026-09-21T13:34:58.732932+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.46% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.8282,"ext_from_open_pct":1.55,"max_ext_allowed_pct":4.0,"volume_pace":4.231,"trend":"positive","recent_slope_pct":0.4682,"volatility":"high"},"price":8.865,"volume":{"bars":4,"last_bar_volume":20470.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":3265.0,"sell_vol":5927.0,"unclassified_vol":0.0,"imbalance":-0.2896,"bid":8.81,"ask":8.94,"spread_pct":1.464789,"quote_size_imbalance":null,"quote_age_s":1.344394},"context":{"vwap":8.817292,"price_vs_vwap_pct":0.541069,"ema9":8.82348,"ema20":8.780425,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-1.827243,"dist_to_hod_atr":0.856895,"atr":0.192556,"spread_atr":0.675129,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"d503a38cac55","ts":"2026-09-21T13:35:03.773689+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.29 below VWAP $9.32","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.295,"vwap":9.3204,"ext_from_open_pct":0.49,"max_ext_allowed_pct":5.0,"volume_pace":4.683,"trend":"flat","recent_slope_pct":-0.1502,"volatility":"high"},"price":9.295,"volume":{"bars":5,"last_bar_volume":7132.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":187.0,"sell_vol":2647.0,"unclassified_vol":0.0,"imbalance":-0.868031,"bid":9.25,"ask":9.34,"spread_pct":0.968263,"quote_size_imbalance":null,"quote_age_s":3.780183},"context":{"vwap":9.320689,"price_vs_vwap_pct":-0.275609,"ema9":9.292384,"ema20":9.272065,"ema_stack":true,"ema_warm":false,"hod":9.48,"dist_to_hod_pct":-1.951477,"dist_to_hod_atr":1.270916,"atr":0.145564,"spread_atr":0.618284,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"e803983d3fe9","ts":"2026-09-21T13:35:03.773689+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":13.83,"vwap":13.7934,"ext_from_open_pct":-0.58,"max_ext_allowed_pct":4.0,"volume_pace":4.129,"trend":"flat","recent_slope_pct":0.1811,"volatility":"high"},"price":13.83,"volume":{"bars":5,"last_bar_volume":283817.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":636,"trade_rate":21.2,"buy_vol":89547.0,"sell_vol":88535.0,"unclassified_vol":0.0,"imbalance":0.005683,"bid":13.82,"ask":13.84,"spread_pct":0.144613,"quote_size_imbalance":null,"quote_age_s":0.079445},"context":{"vwap":13.793272,"price_vs_vwap_pct":0.266275,"ema9":13.80814,"ema20":13.809435,"ema_stack":false,"ema_warm":false,"hod":13.98,"dist_to_hod_pct":-1.072961,"dist_to_hod_atr":0.632934,"atr":0.236992,"spread_atr":0.084391,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"8fc59bef8519","ts":"2026-09-21T13:35:13.926071+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.92,"vwap":8.8287,"ext_from_open_pct":2.18,"max_ext_allowed_pct":4.0,"volume_pace":4.047,"trend":"flat","recent_slope_pct":0.1629,"volatility":"high"},"price":8.92,"volume":{"bars":5,"last_bar_volume":29684.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":1993.0,"sell_vol":5269.0,"unclassified_vol":0.0,"imbalance":-0.451115,"bid":8.9,"ask":8.94,"spread_pct":0.44843,"quote_size_imbalance":null,"quote_age_s":0.193846},"context":{"vwap":8.828244,"price_vs_vwap_pct":1.039346,"ema9":8.831784,"ema20":8.78848,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-1.218162,"dist_to_hod_atr":0.582534,"atr":0.18883,"spread_atr":0.21183,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"fbb976a234ea","ts":"2026-09-21T13:35:29.251447+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.35% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.9599,"vwap":8.8314,"ext_from_open_pct":2.63,"max_ext_allowed_pct":4.0,"volume_pace":3.959,"trend":"positive","recent_slope_pct":0.2524,"volatility":"high"},"price":8.9599,"volume":{"bars":5,"last_bar_volume":29684.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1626.0,"sell_vol":6116.0,"unclassified_vol":0.0,"imbalance":-0.579954,"bid":8.84,"ask":8.96,"spread_pct":1.348315,"quote_size_imbalance":null,"quote_age_s":0.439387},"context":{"vwap":8.828244,"price_vs_vwap_pct":1.491304,"ema9":8.831784,"ema20":8.78848,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-0.776301,"dist_to_hod_atr":0.371233,"atr":0.18883,"spread_atr":0.635491,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"80d1ecd08b61","ts":"2026-09-21T13:35:34.322776+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.0599,"vwap":8.895,"ext_from_open_pct":4.26,"max_ext_allowed_pct":4.0,"volume_pace":40.695,"trend":"flat","recent_slope_pct":-0.0225,"volatility":"medium"},"price":9.0599,"volume":{"bars":5,"last_bar_volume":452295.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":1434,"trade_rate":47.8,"buy_vol":319725.0,"sell_vol":172848.0,"unclassified_vol":0.0,"imbalance":0.298183,"bid":9.04,"ask":9.06,"spread_pct":0.220994,"quote_size_imbalance":null,"quote_age_s":0.352219},"context":{"vwap":8.880194,"price_vs_vwap_pct":2.023668,"ema9":8.818963,"ema20":8.72929,"ema_stack":true,"ema_warm":false,"hod":9.26,"dist_to_hod_pct":-2.160907,"dist_to_hod_atr":0.62989,"atr":0.317675,"spread_atr":0.062957,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"db80581bc95f","ts":"2026-09-21T13:35:34.322776+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.78 below VWAP $13.79","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":13.78,"vwap":13.7936,"ext_from_open_pct":-0.93,"max_ext_allowed_pct":4.0,"volume_pace":3.905,"trend":"flat","recent_slope_pct":0.1087,"volatility":"high"},"price":13.78,"volume":{"bars":5,"last_bar_volume":283817.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":649,"trade_rate":21.633333,"buy_vol":78764.0,"sell_vol":105095.0,"unclassified_vol":0.0,"imbalance":-0.143213,"bid":13.77,"ask":13.78,"spread_pct":0.072595,"quote_size_imbalance":null,"quote_age_s":0.025596},"context":{"vwap":13.793272,"price_vs_vwap_pct":-0.096221,"ema9":13.80814,"ema20":13.809435,"ema_stack":false,"ema_warm":false,"hod":13.98,"dist_to_hod_pct":-1.430615,"dist_to_hod_atr":0.843912,"atr":0.236992,"spread_atr":0.042196,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"efdceca64549","ts":"2026-09-21T13:35:34.322776+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.93,"vwap":8.8311,"ext_from_open_pct":2.29,"max_ext_allowed_pct":4.0,"volume_pace":3.899,"trend":"flat","recent_slope_pct":0.1854,"volatility":"high"},"price":8.93,"volume":{"bars":5,"last_bar_volume":29684.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1064.0,"sell_vol":6117.0,"unclassified_vol":0.0,"imbalance":-0.703662,"bid":8.9,"ask":8.96,"spread_pct":0.671892,"quote_size_imbalance":null,"quote_age_s":0.491181},"context":{"vwap":8.828244,"price_vs_vwap_pct":1.152619,"ema9":8.831784,"ema20":8.78848,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-1.10742,"dist_to_hod_atr":0.529576,"atr":0.18883,"spread_atr":0.317746,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"113abc85fd24","ts":"2026-09-21T13:35:44.502432+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.7709,"ext_from_open_pct":4.05,"max_ext_allowed_pct":4.0,"volume_pace":3.147,"trend":"positive","recent_slope_pct":0.1882,"volatility":"unknown"},"price":8.865,"volume":{"bars":5,"last_bar_volume":340985.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":544,"trade_rate":18.133333,"buy_vol":76325.0,"sell_vol":59091.0,"unclassified_vol":0.0,"imbalance":0.127267,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.009031},"context":{"vwap":8.765546,"price_vs_vwap_pct":1.134603,"ema9":8.713369,"ema20":8.636252,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-0.783436,"dist_to_hod_atr":0.474327,"atr":0.147578,"spread_atr":0.067761,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"INCOMPLETE","failed":[],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"005b64c4b28c","ts":"2026-09-21T13:35:49.531639+00:00","symbol":"CRML","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.025,"vwap":8.8966,"ext_from_open_pct":3.86,"max_ext_allowed_pct":4.0,"volume_pace":39.719,"trend":"flat","recent_slope_pct":-0.1002,"volatility":"medium"},"price":9.025,"volume":{"bars":5,"last_bar_volume":452295.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":1214,"trade_rate":40.466667,"buy_vol":156490.0,"sell_vol":153477.0,"unclassified_vol":0.0,"imbalance":0.00972,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.370433},"context":{"vwap":8.880194,"price_vs_vwap_pct":1.630658,"ema9":8.818963,"ema20":8.72929,"ema_stack":true,"ema_warm":false,"hod":9.26,"dist_to_hod_pct":-2.537797,"dist_to_hod_atr":0.739751,"atr":0.317675,"spread_atr":0.031479,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"9dcd53d71d95","ts":"2026-09-21T13:35:49.531639+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":13.8,"vwap":13.794,"ext_from_open_pct":-0.79,"max_ext_allowed_pct":4.0,"volume_pace":3.762,"trend":"flat","recent_slope_pct":0.1377,"volatility":"high"},"price":13.8,"volume":{"bars":5,"last_bar_volume":283817.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":646,"trade_rate":21.533333,"buy_vol":64331.0,"sell_vol":89219.0,"unclassified_vol":0.0,"imbalance":-0.162084,"bid":13.79,"ask":13.8,"spread_pct":0.07249,"quote_size_imbalance":null,"quote_age_s":0.473953},"context":{"vwap":13.793272,"price_vs_vwap_pct":0.048777,"ema9":13.80814,"ema20":13.809435,"ema_stack":false,"ema_warm":false,"hod":13.98,"dist_to_hod_pct":-1.287554,"dist_to_hod_atr":0.75952,"atr":0.236992,"spread_atr":0.042196,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"c46c61f6f487","ts":"2026-09-21T13:35:54.595353+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.78 below VWAP $13.79","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":13.7822,"vwap":13.7937,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":4.0,"volume_pace":3.716,"trend":"flat","recent_slope_pct":0.1119,"volatility":"high"},"price":13.7822,"volume":{"bars":5,"last_bar_volume":283817.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":613,"trade_rate":20.433333,"buy_vol":54097.0,"sell_vol":83014.0,"unclassified_vol":0.0,"imbalance":-0.210902,"bid":13.78,"ask":13.79,"spread_pct":0.072543,"quote_size_imbalance":null,"quote_age_s":0.068318},"context":{"vwap":13.793272,"price_vs_vwap_pct":-0.080271,"ema9":13.80814,"ema20":13.809435,"ema_stack":false,"ema_warm":false,"hod":13.98,"dist_to_hod_pct":-1.414878,"dist_to_hod_atr":0.834629,"atr":0.236992,"spread_atr":0.042196,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-1},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"d0911663cc84","ts":"2026-09-21T13:35:54.595353+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.01% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.9558,"vwap":8.8323,"ext_from_open_pct":2.59,"max_ext_allowed_pct":5.0,"volume_pace":3.712,"trend":"positive","recent_slope_pct":0.2432,"volatility":"high"},"price":8.9558,"volume":{"bars":5,"last_bar_volume":29684.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":2334.0,"sell_vol":5570.0,"unclassified_vol":0.0,"imbalance":-0.409413,"bid":8.9,"ask":8.99,"spread_pct":1.006149,"quote_size_imbalance":null,"quote_age_s":1.655494},"context":{"vwap":8.828244,"price_vs_vwap_pct":1.444862,"ema9":8.831784,"ema20":8.78848,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-0.821705,"dist_to_hod_atr":0.392945,"atr":0.18883,"spread_atr":0.476618,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":-2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"afc643475075","ts":"2026-09-21T13:35:54.595353+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7708,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":3.084,"trend":"positive","recent_slope_pct":0.1204,"volatility":"unknown"},"price":8.835,"volume":{"bars":5,"last_bar_volume":340985.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":553,"trade_rate":18.433333,"buy_vol":59344.0,"sell_vol":62443.0,"unclassified_vol":0.0,"imbalance":-0.025446,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.328836},"context":{"vwap":8.765546,"price_vs_vwap_pct":0.792354,"ema9":8.713369,"ema20":8.636252,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-1.119194,"dist_to_hod_atr":0.67761,"atr":0.147578,"spread_atr":0.067761,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":0},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":null,"spread":true,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"0ead3baebe97","ts":"2026-09-21T13:35:59.648645+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.9799,"vwap":8.833,"ext_from_open_pct":2.86,"max_ext_allowed_pct":5.0,"volume_pace":3.664,"trend":"positive","recent_slope_pct":0.2971,"volatility":"high"},"price":8.9799,"volume":{"bars":5,"last_bar_volume":29684.0,"baseline_avg":null,"bar_rvol":null,"raw_accel":null,"smooth_accel":null,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1950.0,"sell_vol":801.0,"unclassified_vol":0.0,"imbalance":0.417666,"bid":8.9,"ask":8.98,"spread_pct":0.894855,"quote_size_imbalance":null,"quote_age_s":3.471198},"context":{"vwap":8.828244,"price_vs_vwap_pct":1.71785,"ema9":8.831784,"ema20":8.78848,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-0.554817,"dist_to_hod_atr":0.265318,"atr":0.18883,"spread_atr":0.423661,"own_change_pct":null,"rel_strength_pct":{"SPY":null,"IWM":null}},"vas":{"raw":null,"score":null,"components":{"rvol":null,"accel":null,"momentum":null,"imbalance":2},"missing":["rvol","accel","momentum"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["spread"],"missing":["vas","bar_rvol","rel_strength","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":null,"spread":false,"rel_strength":null,"not_decelerating":null}}}
{"type":"snapshot","id":"a1562da5e36e","ts":"2026-09-21T13:36:04.734079+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.265,"vwap":5.2371,"ext_from_open_pct":1.25,"max_ext_allowed_pct":4.0,"volume_pace":4.461,"trend":"flat","recent_slope_pct":0.0015,"volatility":"unknown"},"price":5.265,"volume":{"bars":6,"last_bar_volume":76013.0,"baseline_avg":183265.8,"bar_rvol":0.414769,"raw_accel":-0.233392,"smooth_accel":-0.583235,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":11496.0,"sell_vol":29908.0,"unclassified_vol":0.0,"imbalance":-0.444691,"bid":5.26,"ask":5.27,"spread_pct":0.189934,"quote_size_imbalance":null,"quote_age_s":0.193878},"context":{"vwap":5.236913,"price_vs_vwap_pct":0.536335,"ema9":5.249377,"ema20":5.230409,"ema_stack":true,"ema_warm":false,"hod":5.3,"dist_to_hod_pct":-0.660377,"dist_to_hod_atr":0.783943,"atr":0.044646,"spread_atr":0.223984,"own_change_pct":1.529299,"rel_strength_pct":{"SPY":1.520167,"IWM":1.574814}},"vas":{"raw":null,"score":null,"components":{"rvol":-2,"accel":-2,"momentum":null,"imbalance":-2},"missing":["momentum"],"volume_pressure":-0.184444},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol"],"missing":["vas","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"fecbb4595ba6","ts":"2026-09-21T13:36:09.798858+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.785,"vwap":8.7705,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":2.981,"trend":"flat","recent_slope_pct":-0.2459,"volatility":"unknown"},"price":8.785,"volume":{"bars":6,"last_bar_volume":228625.0,"baseline_avg":555846.8,"bar_rvol":0.411309,"raw_accel":-0.329516,"smooth_accel":-0.322746,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":437,"trade_rate":14.566667,"buy_vol":34383.0,"sell_vol":44778.0,"unclassified_vol":0.0,"imbalance":-0.131315,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":0.217389},"context":{"vwap":8.770323,"price_vs_vwap_pct":0.167344,"ema9":8.733695,"ema20":8.653276,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-1.678791,"dist_to_hod_atr":1.045448,"atr":0.143479,"spread_atr":0.069697,"own_change_pct":3.220141,"rel_strength_pct":{"SPY":3.211009,"IWM":3.265656}},"vas":{"raw":null,"score":null,"components":{"rvol":-2,"accel":-2,"momentum":null,"imbalance":-1},"missing":["momentum"],"volume_pressure":-0.054011},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol"],"missing":["vas","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"61461c4e639c","ts":"2026-09-21T13:36:14.854501+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.3477,"vwap":9.3215,"ext_from_open_pct":1.06,"max_ext_allowed_pct":5.0,"volume_pace":5.084,"trend":"flat","recent_slope_pct":0.0433,"volatility":"high"},"price":9.3477,"volume":{"bars":6,"last_bar_volume":32185.0,"baseline_avg":45717.0,"bar_rvol":0.704005,"raw_accel":1.81602,"smooth_accel":-0.778114,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":34723.0,"sell_vol":20621.0,"unclassified_vol":0.0,"imbalance":0.254806,"bid":9.28,"ask":9.35,"spread_pct":0.751476,"quote_size_imbalance":null,"quote_age_s":12.167916},"context":{"vwap":9.318752,"price_vs_vwap_pct":0.310639,"ema9":9.298907,"ema20":9.277106,"ema_stack":true,"ema_warm":false,"hod":9.48,"dist_to_hod_pct":-1.39557,"dist_to_hod_atr":0.934352,"atr":0.141595,"spread_atr":0.494366,"own_change_pct":0.865333,"rel_strength_pct":{"SPY":0.856201,"IWM":0.910848}},"vas":{"raw":null,"score":null,"components":{"rvol":-2,"accel":-2,"momentum":null,"imbalance":1},"missing":["momentum"],"volume_pressure":0.179385},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":["vas","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"b3dca14ab635","ts":"2026-09-21T13:36:19.882170+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.26 below VWAP $9.31","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.26,"vwap":9.3137,"ext_from_open_pct":0.11,"max_ext_allowed_pct":5.0,"volume_pace":5.125,"trend":"flat","recent_slope_pct":-0.145,"volatility":"high"},"price":9.26,"volume":{"bars":6,"last_bar_volume":32185.0,"baseline_avg":45717.0,"bar_rvol":0.704005,"raw_accel":1.81602,"smooth_accel":-0.778114,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":3.667384},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":34843.0,"sell_vol":27064.0,"unclassified_vol":0.0,"imbalance":0.125656,"bid":9.26,"ask":9.33,"spread_pct":0.753093,"quote_size_imbalance":null,"quote_age_s":3.35767},"context":{"vwap":9.318752,"price_vs_vwap_pct":-0.630474,"ema9":9.298907,"ema20":9.277106,"ema_stack":false,"ema_warm":false,"hod":9.48,"dist_to_hod_pct":-2.320675,"dist_to_hod_atr":1.553723,"atr":0.141595,"spread_atr":0.494366,"own_change_pct":0.865333,"rel_strength_pct":{"SPY":0.856201,"IWM":0.910848}},"vas":{"raw":null,"score":null,"components":{"rvol":-2,"accel":-2,"momentum":null,"imbalance":1},"missing":["momentum"],"volume_pressure":0.088463},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":["vas","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"0cf549c8e998","ts":"2026-09-21T13:36:24.935650+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.0699,"vwap":8.904,"ext_from_open_pct":4.37,"max_ext_allowed_pct":4.0,"volume_pace":37.854,"trend":"flat","recent_slope_pct":0.6184,"volatility":"medium"},"price":9.0699,"volume":{"bars":6,"last_bar_volume":698149.0,"baseline_avg":1069895.0,"bar_rvol":0.65254,"raw_accel":0.54357,"smooth_accel":-0.577105,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":0.59065},"flow":{"window_s":30,"trades":1021,"trade_rate":34.033333,"buy_vol":119716.0,"sell_vol":153696.0,"unclassified_vol":0.0,"imbalance":-0.124281,"bid":9.05,"ask":9.07,"spread_pct":0.220751,"quote_size_imbalance":null,"quote_age_s":0.055473},"context":{"vwap":8.897777,"price_vs_vwap_pct":1.934452,"ema9":8.86217,"ema20":8.758405,"ema_stack":true,"ema_warm":false,"hod":9.26,"dist_to_hod_pct":-2.052916,"dist_to_hod_atr":0.623677,"atr":0.304805,"spread_atr":0.065616,"own_change_pct":4.906878,"rel_strength_pct":{"SPY":4.897747,"IWM":4.952393}},"vas":{"raw":null,"score":null,"components":{"rvol":-2,"accel":-2,"momentum":null,"imbalance":-1},"missing":["momentum"],"volume_pressure":-0.081098},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol"],"missing":["vas","not_decelerating"],"rules":{"vas":null,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"ecee221bde47","ts":"2026-09-21T13:36:40.176346+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.94 below VWAP $8.94","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.94,"vwap":8.9404,"ext_from_open_pct":-0.89,"max_ext_allowed_pct":5.0,"volume_pace":5.164,"trend":"flat","recent_slope_pct":-0.1836,"volatility":"medium"},"price":8.94,"volume":{"bars":6,"last_bar_volume":49088.0,"baseline_avg":156328.4,"bar_rvol":0.314006,"raw_accel":-0.502881,"smooth_accel":-0.687388,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":0.293623},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":16111.0,"sell_vol":10407.0,"unclassified_vol":0.0,"imbalance":0.215099,"bid":8.93,"ask":8.94,"spread_pct":0.111919,"quote_size_imbalance":null,"quote_age_s":0.295344},"context":{"vwap":8.939867,"price_vs_vwap_pct":0.001488,"ema9":8.944208,"ema20":8.916522,"ema_stack":false,"ema_warm":false,"hod":9.05,"dist_to_hod_pct":-1.21547,"dist_to_hod_atr":0.811986,"atr":0.13547,"spread_atr":0.073817,"own_change_pct":1.316723,"rel_strength_pct":{"SPY":1.307592,"IWM":1.362238}},"vas":{"raw":null,"score":null,"components":{"rvol":-2,"accel":-2,"momentum":null,"imbalance":1},"missing":["momentum"],"volume_pressure":0.067542},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":["vas","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"8f6c889f4ff5","ts":"2026-09-21T13:36:50.348085+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.775,"vwap":8.7703,"ext_from_open_pct":2.99,"max_ext_allowed_pct":4.0,"volume_pace":2.839,"trend":"flat","recent_slope_pct":-0.2686,"volatility":"unknown"},"price":8.775,"volume":{"bars":6,"last_bar_volume":228625.0,"baseline_avg":555846.8,"bar_rvol":0.411309,"raw_accel":-0.329516,"smooth_accel":-0.322746,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":0.413462},"flow":{"window_s":30,"trades":513,"trade_rate":17.1,"buy_vol":73878.0,"sell_vol":43869.0,"unclassified_vol":0.0,"imbalance":0.25486,"bid":8.77,"ask":8.78,"spread_pct":0.11396,"quote_size_imbalance":null,"quote_age_s":0.735395},"context":{"vwap":8.770323,"price_vs_vwap_pct":0.053324,"ema9":8.733695,"ema20":8.653276,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-1.790711,"dist_to_hod_atr":1.115144,"atr":0.143479,"spread_atr":0.069697,"own_change_pct":3.220141,"rel_strength_pct":{"SPY":3.211009,"IWM":3.265656}},"vas":{"raw":null,"score":null,"components":{"rvol":-2,"accel":-2,"momentum":null,"imbalance":1},"missing":["momentum"],"volume_pressure":0.104826},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":["vas","not_decelerating"],"rules":{"vas":null,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"b49653fedf0f","ts":"2026-09-21T13:37:00.471895+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.75,"vwap":10.6979,"ext_from_open_pct":0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.557,"trend":"positive","recent_slope_pct":-0.0512,"volatility":"unknown"},"price":10.75,"volume":{"bars":7,"last_bar_volume":58219.0,"baseline_avg":120987.666667,"bar_rvol":0.481198,"raw_accel":0.924791,"smooth_accel":-0.49841,"accel_momentum":-0.01323,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":11910.0,"sell_vol":4422.0,"unclassified_vol":0.0,"imbalance":0.458486,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":0.043},"context":{"vwap":10.697455,"price_vs_vwap_pct":0.491193,"ema9":10.706741,"ema20":10.676442,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.738689,"dist_to_hod_atr":0.664085,"atr":0.120467,"spread_atr":0.083011,"own_change_pct":0.797373,"rel_strength_pct":{"SPY":0.752996,"IWM":0.764065}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.220623},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":["not_decelerating"],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"d73719ca05b7","ts":"2026-09-21T13:37:05.611280+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.96,"vwap":8.9409,"ext_from_open_pct":-0.67,"max_ext_allowed_pct":5.0,"volume_pace":4.931,"trend":"flat","recent_slope_pct":-0.0219,"volatility":"medium"},"price":8.96,"volume":{"bars":7,"last_bar_volume":43482.0,"baseline_avg":138455.0,"bar_rvol":0.314051,"raw_accel":-0.114203,"smooth_accel":0.032996,"accel_momentum":0.720384,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":10617.0,"sell_vol":3078.0,"unclassified_vol":0.0,"imbalance":0.550493,"bid":8.95,"ask":8.96,"spread_pct":0.111669,"quote_size_imbalance":null,"quote_age_s":1.419224},"context":{"vwap":8.940877,"price_vs_vwap_pct":0.213886,"ema9":8.947366,"ema20":8.920663,"ema_stack":true,"ema_warm":false,"hod":9.05,"dist_to_hod_pct":-0.994475,"dist_to_hod_atr":0.69086,"atr":0.130272,"spread_atr":0.076762,"own_change_pct":0.335946,"rel_strength_pct":{"SPY":0.291569,"IWM":0.302637}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.172883},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":["not_decelerating"],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"5ccc6281e4ba","ts":"2026-09-21T13:37:05.611280+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.785,"vwap":8.7705,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":2.763,"trend":"flat","recent_slope_pct":-0.3117,"volatility":"unknown"},"price":8.785,"volume":{"bars":7,"last_bar_volume":217386.0,"baseline_avg":501309.833333,"bar_rvol":0.433636,"raw_accel":-0.049159,"smooth_accel":-0.670843,"accel_momentum":-0.348096,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":380,"trade_rate":12.666667,"buy_vol":51264.0,"sell_vol":37921.0,"unclassified_vol":0.0,"imbalance":0.14961,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":0.280636},"context":{"vwap":8.770515,"price_vs_vwap_pct":0.165156,"ema9":8.743956,"ema20":8.665821,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-1.678791,"dist_to_hod_atr":1.033399,"atr":0.145152,"spread_atr":0.068893,"own_change_pct":0.285388,"rel_strength_pct":{"SPY":0.241011,"IWM":0.252079}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.064876},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":["not_decelerating"],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"bf15aec91e8e","ts":"2026-09-21T13:37:15.867172+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.94 below VWAP $8.94","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.94,"vwap":8.9409,"ext_from_open_pct":-0.89,"max_ext_allowed_pct":4.0,"volume_pace":4.82,"trend":"flat","recent_slope_pct":-0.0665,"volatility":"medium"},"price":8.94,"volume":{"bars":7,"last_bar_volume":43482.0,"baseline_avg":138455.0,"bar_rvol":0.314051,"raw_accel":-0.114203,"smooth_accel":0.032996,"accel_momentum":0.720384,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":0.044272},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":9452.0,"sell_vol":3132.0,"unclassified_vol":0.0,"imbalance":0.502225,"bid":8.93,"ask":8.94,"spread_pct":0.111919,"quote_size_imbalance":null,"quote_age_s":0.384567},"context":{"vwap":8.940877,"price_vs_vwap_pct":-0.009805,"ema9":8.947366,"ema20":8.920663,"ema_stack":false,"ema_warm":false,"hod":9.05,"dist_to_hod_pct":-1.21547,"dist_to_hod_atr":0.844384,"atr":0.130272,"spread_atr":0.076762,"own_change_pct":0.335946,"rel_strength_pct":{"SPY":0.291569,"IWM":0.302637}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.157725},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":["not_decelerating"],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"89b8ebc9b820","ts":"2026-09-21T13:37:15.867172+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.775,"vwap":8.7706,"ext_from_open_pct":2.99,"max_ext_allowed_pct":4.0,"volume_pace":2.714,"trend":"flat","recent_slope_pct":-0.3344,"volatility":"unknown"},"price":8.775,"volume":{"bars":7,"last_bar_volume":217386.0,"baseline_avg":501309.833333,"bar_rvol":0.433636,"raw_accel":-0.049159,"smooth_accel":-0.670843,"accel_momentum":-0.348096,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":0.192166},"flow":{"window_s":30,"trades":256,"trade_rate":8.533333,"buy_vol":34937.0,"sell_vol":20064.0,"unclassified_vol":0.0,"imbalance":0.270413,"bid":8.77,"ask":8.78,"spread_pct":0.11396,"quote_size_imbalance":null,"quote_age_s":0.212186},"context":{"vwap":8.770515,"price_vs_vwap_pct":0.051137,"ema9":8.743956,"ema20":8.665821,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-1.790711,"dist_to_hod_atr":1.102292,"atr":0.145152,"spread_atr":0.068893,"own_change_pct":0.285388,"rel_strength_pct":{"SPY":0.241011,"IWM":0.252079}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.117261},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":["not_decelerating"],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"c0b0c6812da1","ts":"2026-09-21T13:37:20.947013+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.95,"vwap":8.9409,"ext_from_open_pct":-0.78,"max_ext_allowed_pct":4.0,"volume_pace":4.772,"trend":"flat","recent_slope_pct":-0.0442,"volatility":"medium"},"price":8.95,"volume":{"bars":7,"last_bar_volume":43482.0,"baseline_avg":138455.0,"bar_rvol":0.314051,"raw_accel":-0.114203,"smooth_accel":0.032996,"accel_momentum":0.720384,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":0.060926},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":9642.0,"sell_vol":2916.0,"unclassified_vol":0.0,"imbalance":0.535595,"bid":8.95,"ask":8.96,"spread_pct":0.111669,"quote_size_imbalance":null,"quote_age_s":0.316624},"context":{"vwap":8.940877,"price_vs_vwap_pct":0.102041,"ema9":8.947366,"ema20":8.920663,"ema_stack":true,"ema_warm":false,"hod":9.05,"dist_to_hod_pct":-1.104972,"dist_to_hod_atr":0.767622,"atr":0.130272,"spread_atr":0.076762,"own_change_pct":0.335946,"rel_strength_pct":{"SPY":0.291569,"IWM":0.302637}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.168204},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":["not_decelerating"],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"80283ced16d8","ts":"2026-09-21T13:37:31.022345+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.795,"vwap":8.7709,"ext_from_open_pct":3.23,"max_ext_allowed_pct":3.0,"volume_pace":2.655,"trend":"flat","recent_slope_pct":-0.2889,"volatility":"unknown"},"price":8.795,"volume":{"bars":7,"last_bar_volume":217386.0,"baseline_avg":501309.833333,"bar_rvol":0.433636,"raw_accel":-0.049159,"smooth_accel":-0.670843,"accel_momentum":-0.348096,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":0.248479},"flow":{"window_s":30,"trades":259,"trade_rate":8.633333,"buy_vol":40966.0,"sell_vol":21808.0,"unclassified_vol":0.0,"imbalance":0.30519,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.117658},"context":{"vwap":8.770515,"price_vs_vwap_pct":0.279174,"ema9":8.743956,"ema20":8.665821,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-1.566872,"dist_to_hod_atr":0.964505,"atr":0.145152,"spread_atr":0.068893,"own_change_pct":0.285388,"rel_strength_pct":{"SPY":0.241011,"IWM":0.252079}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.132341},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":["not_decelerating"],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"5d10db620a00","ts":"2026-09-21T13:38:01.395907+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.005,"vwap":8.8447,"ext_from_open_pct":3.15,"max_ext_allowed_pct":3.0,"volume_pace":2.988,"trend":"positive","recent_slope_pct":0.3402,"volatility":"high"},"price":9.005,"volume":{"bars":8,"last_bar_volume":8440.0,"baseline_avg":38860.714286,"bar_rvol":0.217186,"raw_accel":-0.442168,"smooth_accel":-0.588303,"accel_momentum":-0.288312,"rvol_3bar":[0.212924,0.353374,0.217186],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3357.0,"sell_vol":1115.0,"unclassified_vol":0.0,"imbalance":0.501342,"bid":8.98,"ask":9.03,"spread_pct":0.555247,"quote_size_imbalance":null,"quote_age_s":3.341365},"context":{"vwap":8.844699,"price_vs_vwap_pct":1.812399,"ema9":8.909101,"ema20":8.840527,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-0.276855,"dist_to_hod_atr":0.14578,"atr":0.171491,"spread_atr":0.29156,"own_change_pct":0.952915,"rel_strength_pct":{"SPY":0.905938,"IWM":0.872289}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.108884},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9c55c14e47c8","ts":"2026-09-21T13:38:01.395907+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.265,"vwap":5.2377,"ext_from_open_pct":1.25,"max_ext_allowed_pct":5.0,"volume_pace":3.918,"trend":"flat","recent_slope_pct":-0.0563,"volatility":"unknown"},"price":5.265,"volume":{"bars":8,"last_bar_volume":34105.0,"baseline_avg":156944.428571,"bar_rvol":0.217306,"raw_accel":-0.679069,"smooth_accel":-0.258911,"accel_momentum":0.086486,"rvol_3bar":[0.414769,0.642535,0.217306],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":32712.0,"sell_vol":5965.0,"unclassified_vol":0.0,"imbalance":0.691548,"bid":5.26,"ask":5.27,"spread_pct":0.189934,"quote_size_imbalance":null,"quote_age_s":0.109702},"context":{"vwap":5.237133,"price_vs_vwap_pct":0.532104,"ema9":5.247401,"ema20":5.232716,"ema_stack":true,"ema_warm":false,"hod":5.3,"dist_to_hod_pct":-0.660377,"dist_to_hod_atr":0.750547,"atr":0.046633,"spread_atr":0.214442,"own_change_pct":-0.320568,"rel_strength_pct":{"SPY":-0.367545,"IWM":-0.401193}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.150278},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"550ab19d2e36","ts":"2026-09-21T13:38:01.395907+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8497,"vwap":8.7732,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":2.57,"trend":"flat","recent_slope_pct":0.1481,"volatility":"unknown"},"price":8.8497,"volume":{"bars":8,"last_bar_volume":162409.0,"baseline_avg":460749.285714,"bar_rvol":0.352489,"raw_accel":-0.2529,"smooth_accel":-0.619594,"accel_momentum":0.051248,"rvol_3bar":[0.411309,0.433636,0.352489],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":453,"trade_rate":15.1,"buy_vol":61725.0,"sell_vol":47993.0,"unclassified_vol":0.0,"imbalance":0.125157,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.035305},"context":{"vwap":8.772902,"price_vs_vwap_pct":0.875403,"ema9":8.764365,"ema20":8.682981,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-0.954673,"dist_to_hod_atr":0.605554,"atr":0.140863,"spread_atr":0.070991,"own_change_pct":0.027138,"rel_strength_pct":{"SPY":-0.019839,"IWM":-0.053487}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.044117},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1831efe2b5a8","ts":"2026-09-21T13:38:06.475522+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.028,"vwap":8.845,"ext_from_open_pct":3.41,"max_ext_allowed_pct":4.0,"volume_pace":2.962,"trend":"positive","recent_slope_pct":0.3913,"volatility":"high"},"price":9.028,"volume":{"bars":8,"last_bar_volume":8440.0,"baseline_avg":38860.714286,"bar_rvol":0.217186,"raw_accel":-0.442168,"smooth_accel":-0.588303,"accel_momentum":-0.288312,"rvol_3bar":[0.212924,0.353374,0.217186],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":3792.0,"sell_vol":1112.0,"unclassified_vol":0.0,"imbalance":0.546493,"bid":9.0,"ask":9.03,"spread_pct":0.332779,"quote_size_imbalance":null,"quote_age_s":1.536012},"context":{"vwap":8.844699,"price_vs_vwap_pct":2.072442,"ema9":8.909101,"ema20":8.840527,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-0.022148,"dist_to_hod_atr":0.011662,"atr":0.171491,"spread_atr":0.174936,"own_change_pct":0.952915,"rel_strength_pct":{"SPY":0.905938,"IWM":0.872289}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.118691},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"82bc0f1188e7","ts":"2026-09-21T13:38:06.475522+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.765,"vwap":10.6993,"ext_from_open_pct":0.61,"max_ext_allowed_pct":4.0,"volume_pace":0.515,"trend":"flat","recent_slope_pct":0.0279,"volatility":"unknown"},"price":10.765,"volume":{"bars":8,"last_bar_volume":59508.0,"baseline_avg":112020.714286,"bar_rvol":0.531223,"raw_accel":0.022141,"smooth_accel":-0.409185,"accel_momentum":0.089225,"rvol_3bar":[0.184578,0.481198,0.531223],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":185,"trade_rate":6.166667,"buy_vol":27832.0,"sell_vol":3587.0,"unclassified_vol":0.0,"imbalance":0.771667,"bid":10.76,"ask":10.77,"spread_pct":0.092894,"quote_size_imbalance":null,"quote_age_s":0.122855},"context":{"vwap":10.699163,"price_vs_vwap_pct":0.61535,"ema9":10.716393,"ema20":10.683924,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.600185,"dist_to_hod_atr":0.542938,"atr":0.119719,"spread_atr":0.083529,"own_change_pct":0.852393,"rel_strength_pct":{"SPY":0.805415,"IWM":0.771767}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.409927},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0ca611ca06ae","ts":"2026-09-21T13:38:11.639559+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.81,"vwap":8.7733,"ext_from_open_pct":3.4,"max_ext_allowed_pct":3.0,"volume_pace":2.531,"trend":"flat","recent_slope_pct":0.0581,"volatility":"unknown"},"price":8.81,"volume":{"bars":8,"last_bar_volume":162409.0,"baseline_avg":460749.285714,"bar_rvol":0.352489,"raw_accel":-0.2529,"smooth_accel":-0.619594,"accel_momentum":0.051248,"rvol_3bar":[0.411309,0.433636,0.352489],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":337,"trade_rate":11.233333,"buy_vol":46748.0,"sell_vol":37778.0,"unclassified_vol":0.0,"imbalance":0.106121,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":0.033549},"context":{"vwap":8.772902,"price_vs_vwap_pct":0.422873,"ema9":8.764365,"ema20":8.682981,"ema_stack":true,"ema_warm":false,"hod":8.935,"dist_to_hod_pct":-1.398993,"dist_to_hod_atr":0.887389,"atr":0.140863,"spread_atr":0.070991,"own_change_pct":0.027138,"rel_strength_pct":{"SPY":-0.019839,"IWM":-0.053487}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.037407},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"25ac41b6ab0f","ts":"2026-09-21T13:38:16.705380+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":12.32,"vwap":12.2774,"ext_from_open_pct":0.16,"max_ext_allowed_pct":4.0,"volume_pace":3.535,"trend":"flat","recent_slope_pct":0.3668,"volatility":"medium"},"price":12.32,"volume":{"bars":8,"last_bar_volume":22817.0,"baseline_avg":114977.285714,"bar_rvol":0.198448,"raw_accel":-0.466556,"smooth_accel":-0.598335,"accel_momentum":-0.144768,"rvol_3bar":[0.331943,0.336765,0.198448],"trend_3bar":"MIXED","projected_rvol":0.145913},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":4918.0,"sell_vol":4505.0,"unclassified_vol":0.0,"imbalance":0.043829,"bid":12.3,"ask":12.32,"spread_pct":0.16247,"quote_size_imbalance":null,"quote_age_s":0.273024},"context":{"vwap":12.2771,"price_vs_vwap_pct":0.349435,"ema9":12.27574,"ema20":12.272344,"ema_stack":true,"ema_warm":false,"hod":12.49,"dist_to_hod_pct":-1.361089,"dist_to_hod_atr":1.00982,"atr":0.168347,"spread_atr":0.118802,"own_change_pct":0.570497,"rel_strength_pct":{"SPY":0.52352,"IWM":0.489872}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.008698},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e15c184d8b30","ts":"2026-09-21T13:38:26.922486+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.18,"vwap":7.9785,"ext_from_open_pct":2.12,"max_ext_allowed_pct":5.0,"volume_pace":16.244,"trend":"flat","recent_slope_pct":0.0362,"volatility":"unknown"},"price":8.18,"volume":{"bars":8,"last_bar_volume":4790.0,"baseline_avg":27987.285714,"bar_rvol":0.171149,"raw_accel":-0.7904,"smooth_accel":0.005192,"accel_momentum":0.103487,"rvol_3bar":[0.034971,0.792324,0.171149],"trend_3bar":"MIXED","projected_rvol":0.696521},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":8238.0,"sell_vol":529.0,"unclassified_vol":0.0,"imbalance":0.87932,"bid":8.1,"ask":8.18,"spread_pct":0.982801,"quote_size_imbalance":null,"quote_age_s":1.127827},"context":{"vwap":7.972891,"price_vs_vwap_pct":2.597668,"ema9":7.983717,"ema20":7.938823,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-0.848485,"dist_to_hod_atr":0.194627,"atr":0.359661,"spread_atr":0.222431,"own_change_pct":-1.449547,"rel_strength_pct":{"SPY":-1.496524,"IWM":-1.530172}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.150495},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bc42cd32909d","ts":"2026-09-21T13:38:26.922486+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.04,"vwap":8.8474,"ext_from_open_pct":3.55,"max_ext_allowed_pct":3.0,"volume_pace":2.879,"trend":"positive","recent_slope_pct":0.418,"volatility":"high"},"price":9.04,"volume":{"bars":8,"last_bar_volume":8440.0,"baseline_avg":38860.714286,"bar_rvol":0.217186,"raw_accel":-0.442168,"smooth_accel":-0.588303,"accel_momentum":-0.288312,"rvol_3bar":[0.212924,0.353374,0.217186],"trend_3bar":"MIXED","projected_rvol":0.233812},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":4459.0,"sell_vol":1087.0,"unclassified_vol":0.0,"imbalance":0.608006,"bid":9.01,"ask":9.07,"spread_pct":0.663717,"quote_size_imbalance":null,"quote_age_s":8.784307},"context":{"vwap":8.844699,"price_vs_vwap_pct":2.208116,"ema9":8.909101,"ema20":8.840527,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":0.110742,"dist_to_hod_atr":-0.058312,"atr":0.171491,"spread_atr":0.349872,"own_change_pct":0.952915,"rel_strength_pct":{"SPY":0.905938,"IWM":0.872289}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.13205},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"762229486c7f","ts":"2026-09-21T13:38:31.991205+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.07,"vwap":8.8513,"ext_from_open_pct":3.89,"max_ext_allowed_pct":4.0,"volume_pace":2.907,"trend":"positive","recent_slope_pct":0.4845,"volatility":"high"},"price":9.07,"volume":{"bars":8,"last_bar_volume":8440.0,"baseline_avg":38860.714286,"bar_rvol":0.217186,"raw_accel":-0.442168,"smooth_accel":-0.588303,"accel_momentum":-0.288312,"rvol_3bar":[0.212924,0.353374,0.217186],"trend_3bar":"MIXED","projected_rvol":0.466747},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":8084.0,"sell_vol":1576.0,"unclassified_vol":0.0,"imbalance":0.673706,"bid":9.01,"ask":9.07,"spread_pct":0.663717,"quote_size_imbalance":null,"quote_age_s":4.557726},"context":{"vwap":8.844699,"price_vs_vwap_pct":2.547303,"ema9":8.909101,"ema20":8.840527,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":0.442968,"dist_to_hod_atr":-0.233248,"atr":0.171491,"spread_atr":0.349872,"own_change_pct":0.952915,"rel_strength_pct":{"SPY":0.905938,"IWM":0.872289}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.146319},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a8678e38ab99","ts":"2026-09-21T13:38:37.119127+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 2.60% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.15,"vwap":7.9804,"ext_from_open_pct":1.75,"max_ext_allowed_pct":5.0,"volume_pace":16.246,"trend":"flat","recent_slope_pct":-0.0384,"volatility":"unknown"},"price":8.15,"volume":{"bars":8,"last_bar_volume":4790.0,"baseline_avg":27987.285714,"bar_rvol":0.171149,"raw_accel":-0.7904,"smooth_accel":0.005192,"accel_momentum":0.103487,"rvol_3bar":[0.034971,0.792324,0.171149],"trend_3bar":"MIXED","projected_rvol":0.750705},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":10214.0,"sell_vol":2569.0,"unclassified_vol":0.0,"imbalance":0.59806,"bid":7.97,"ask":8.18,"spread_pct":2.600619,"quote_size_imbalance":null,"quote_age_s":2.592257},"context":{"vwap":7.972891,"price_vs_vwap_pct":2.221393,"ema9":7.983717,"ema20":7.938823,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.212121,"dist_to_hod_atr":0.278039,"atr":0.359661,"spread_atr":0.583882,"own_change_pct":-1.449547,"rel_strength_pct":{"SPY":-1.496524,"IWM":-1.530172}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.102357},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"198ba9309eae","ts":"2026-09-21T13:38:52.299322+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.025,"vwap":8.8526,"ext_from_open_pct":3.38,"max_ext_allowed_pct":3.0,"volume_pace":2.824,"trend":"flat","recent_slope_pct":0.3847,"volatility":"high"},"price":9.025,"volume":{"bars":8,"last_bar_volume":8440.0,"baseline_avg":38860.714286,"bar_rvol":0.217186,"raw_accel":-0.442168,"smooth_accel":-0.588303,"accel_momentum":-0.288312,"rvol_3bar":[0.212924,0.353374,0.217186],"trend_3bar":"MIXED","projected_rvol":0.372035},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":7312.0,"sell_vol":1825.0,"unclassified_vol":0.0,"imbalance":0.600525,"bid":9.01,"ask":9.04,"spread_pct":0.33241,"quote_size_imbalance":null,"quote_age_s":0.662805},"context":{"vwap":8.844699,"price_vs_vwap_pct":2.038523,"ema9":8.909101,"ema20":8.840527,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":-0.055371,"dist_to_hod_atr":0.029156,"atr":0.171491,"spread_atr":0.174936,"own_change_pct":0.952915,"rel_strength_pct":{"SPY":0.905938,"IWM":0.872289}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.130426},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6204ddc6fb3a","ts":"2026-09-21T13:38:57.324363+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.03,"vwap":8.8557,"ext_from_open_pct":3.44,"max_ext_allowed_pct":4.0,"volume_pace":2.846,"trend":"flat","recent_slope_pct":0.3958,"volatility":"high"},"price":9.03,"volume":{"bars":8,"last_bar_volume":8440.0,"baseline_avg":38860.714286,"bar_rvol":0.217186,"raw_accel":-0.442168,"smooth_accel":-0.588303,"accel_momentum":-0.288312,"rvol_3bar":[0.212924,0.353374,0.217186],"trend_3bar":"MIXED","projected_rvol":0.476786},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":11802.0,"sell_vol":1573.0,"unclassified_vol":0.0,"imbalance":0.764785,"bid":9.01,"ask":9.04,"spread_pct":0.33241,"quote_size_imbalance":null,"quote_age_s":0.326897},"context":{"vwap":8.844699,"price_vs_vwap_pct":2.095054,"ema9":8.909101,"ema20":8.840527,"ema_stack":true,"ema_warm":false,"hod":9.03,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.171491,"spread_atr":0.174936,"own_change_pct":0.952915,"rel_strength_pct":{"SPY":0.905938,"IWM":0.872289}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.166101},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"70d58d4e6efe","ts":"2026-09-21T13:39:07.539301+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.24 below VWAP $12.28","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":12.2353,"vwap":12.2775,"ext_from_open_pct":-0.53,"max_ext_allowed_pct":5.0,"volume_pace":3.283,"trend":"flat","recent_slope_pct":0.0503,"volatility":"medium"},"price":12.2353,"volume":{"bars":9,"last_bar_volume":19038.0,"baseline_avg":103457.25,"bar_rvol":0.184018,"raw_accel":-0.263928,"smooth_accel":-0.703992,"accel_momentum":-0.105658,"rvol_3bar":[0.336765,0.198448,0.184018],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":5534.0,"sell_vol":3008.0,"unclassified_vol":0.0,"imbalance":0.295715,"bid":12.31,"ask":12.33,"spread_pct":0.162338,"quote_size_imbalance":null,"quote_age_s":0.702147},"context":{"vwap":12.277578,"price_vs_vwap_pct":-0.344349,"ema9":12.284232,"ema20":12.276711,"ema_stack":false,"ema_warm":false,"hod":12.49,"dist_to_hod_pct":-2.039231,"dist_to_hod_atr":1.556093,"atr":0.163679,"spread_atr":0.12219,"own_change_pct":0.474715,"rel_strength_pct":{"SPY":0.437133,"IWM":0.460701}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.054417},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"8eaa75960259","ts":"2026-09-21T13:39:12.647507+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":12.34,"vwap":12.2779,"ext_from_open_pct":0.33,"max_ext_allowed_pct":5.0,"volume_pace":3.265,"trend":"flat","recent_slope_pct":0.2204,"volatility":"medium"},"price":12.34,"volume":{"bars":9,"last_bar_volume":19038.0,"baseline_avg":103457.25,"bar_rvol":0.184018,"raw_accel":-0.263928,"smooth_accel":-0.703992,"accel_momentum":-0.105658,"rvol_3bar":[0.336765,0.198448,0.184018],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":7635.0,"sell_vol":2197.0,"unclassified_vol":0.0,"imbalance":0.553092,"bid":12.32,"ask":12.34,"spread_pct":0.162206,"quote_size_imbalance":null,"quote_age_s":0.407578},"context":{"vwap":12.277578,"price_vs_vwap_pct":0.508425,"ema9":12.284232,"ema20":12.276711,"ema_stack":true,"ema_warm":false,"hod":12.49,"dist_to_hod_pct":-1.200961,"dist_to_hod_atr":0.916427,"atr":0.163679,"spread_atr":0.12219,"own_change_pct":0.474715,"rel_strength_pct":{"SPY":0.437133,"IWM":0.460701}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.101779},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"5662ef60119b","ts":"2026-09-21T13:39:17.760002+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.018,"vwap":8.8571,"ext_from_open_pct":3.3,"max_ext_allowed_pct":3.0,"volume_pace":2.771,"trend":"flat","recent_slope_pct":0.1323,"volatility":"high"},"price":9.018,"volume":{"bars":9,"last_bar_volume":17704.0,"baseline_avg":35058.125,"bar_rvol":0.50499,"raw_accel":1.01996,"smooth_accel":-0.319439,"accel_momentum":0.268864,"rvol_3bar":[0.353374,0.217186,0.50499],"trend_3bar":"MIXED","projected_rvol":0.308465},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":5339.0,"sell_vol":4033.0,"unclassified_vol":0.0,"imbalance":0.139351,"bid":8.97,"ask":9.02,"spread_pct":0.555864,"quote_size_imbalance":null,"quote_age_s":16.642793},"context":{"vwap":8.855521,"price_vs_vwap_pct":1.834776,"ema9":8.93186,"ema20":8.857896,"ema_stack":true,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-0.573319,"dist_to_hod_atr":0.314963,"atr":0.165099,"spread_atr":0.302849,"own_change_pct":0.533705,"rel_strength_pct":{"SPY":0.496123,"IWM":0.519691}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.070371},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cf1156ae2019","ts":"2026-09-21T13:39:27.927236+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.01,"vwap":8.8588,"ext_from_open_pct":3.21,"max_ext_allowed_pct":4.0,"volume_pace":2.75,"trend":"flat","recent_slope_pct":0.1146,"volatility":"high"},"price":9.01,"volume":{"bars":9,"last_bar_volume":17704.0,"baseline_avg":35058.125,"bar_rvol":0.50499,"raw_accel":1.01996,"smooth_accel":-0.319439,"accel_momentum":0.268864,"rvol_3bar":[0.353374,0.217186,0.50499],"trend_3bar":"MIXED","projected_rvol":0.39049},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":787.0,"sell_vol":5585.0,"unclassified_vol":0.0,"imbalance":-0.752982,"bid":8.98,"ask":9.04,"spread_pct":0.665927,"quote_size_imbalance":null,"quote_age_s":0.529616},"context":{"vwap":8.855521,"price_vs_vwap_pct":1.744437,"ema9":8.93186,"ema20":8.857896,"ema_stack":true,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-0.661521,"dist_to_hod_atr":0.363418,"atr":0.165099,"spread_atr":0.363418,"own_change_pct":0.533705,"rel_strength_pct":{"SPY":0.496123,"IWM":0.519691}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.380248},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ba74a4adfaf3","ts":"2026-09-21T13:39:53.245258+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.00% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.97,"vwap":8.8646,"ext_from_open_pct":2.75,"max_ext_allowed_pct":3.0,"volume_pace":2.759,"trend":"flat","recent_slope_pct":0.0257,"volatility":"high"},"price":8.97,"volume":{"bars":9,"last_bar_volume":17704.0,"baseline_avg":35058.125,"bar_rvol":0.50499,"raw_accel":1.01996,"smooth_accel":-0.319439,"accel_momentum":0.268864,"rvol_3bar":[0.353374,0.217186,0.50499],"trend_3bar":"MIXED","projected_rvol":0.674192},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":4460.0,"sell_vol":12514.0,"unclassified_vol":0.0,"imbalance":-0.47449,"bid":8.94,"ask":9.03,"spread_pct":1.001669,"quote_size_imbalance":null,"quote_age_s":1.198705},"context":{"vwap":8.855521,"price_vs_vwap_pct":1.292741,"ema9":8.93186,"ema20":8.857896,"ema_stack":true,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-1.102536,"dist_to_hod_atr":0.605697,"atr":0.165099,"spread_atr":0.545128,"own_change_pct":0.533705,"rel_strength_pct":{"SPY":0.496123,"IWM":0.519691}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.239613},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8b20d590a0f3","ts":"2026-09-21T13:39:58.300473+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.975,"vwap":8.8648,"ext_from_open_pct":2.81,"max_ext_allowed_pct":3.0,"volume_pace":2.737,"trend":"flat","recent_slope_pct":0.0368,"volatility":"high"},"price":8.975,"volume":{"bars":9,"last_bar_volume":17704.0,"baseline_avg":35058.125,"bar_rvol":0.50499,"raw_accel":1.01996,"smooth_accel":-0.319439,"accel_momentum":0.268864,"rvol_3bar":[0.353374,0.217186,0.50499],"trend_3bar":"MIXED","projected_rvol":0.620459},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":4456.0,"sell_vol":10308.0,"unclassified_vol":0.0,"imbalance":-0.39637,"bid":8.94,"ask":9.01,"spread_pct":0.779944,"quote_size_imbalance":null,"quote_age_s":0.726103},"context":{"vwap":8.855521,"price_vs_vwap_pct":1.349203,"ema9":8.93186,"ema20":8.857896,"ema_stack":true,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-1.047409,"dist_to_hod_atr":0.575412,"atr":0.165099,"spread_atr":0.423988,"own_change_pct":0.533705,"rel_strength_pct":{"SPY":0.496123,"IWM":0.519691}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.200163},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b27d01fc9d4c","ts":"2026-09-21T13:40:03.388619+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.12% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":null,"target":null,"target_label":"","reward_risk":null,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.95,"vwap":8.8646,"ext_from_open_pct":2.52,"max_ext_allowed_pct":3.0,"volume_pace":2.735,"trend":"flat","recent_slope_pct":-0.0188,"volatility":"high"},"price":8.95,"volume":{"bars":9,"last_bar_volume":17704.0,"baseline_avg":35058.125,"bar_rvol":0.50499,"raw_accel":1.01996,"smooth_accel":-0.319439,"accel_momentum":0.268864,"rvol_3bar":[0.353374,0.217186,0.50499],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":5156.0,"sell_vol":11854.0,"unclassified_vol":0.0,"imbalance":-0.393768,"bid":8.91,"ask":9.01,"spread_pct":1.116071,"quote_size_imbalance":null,"quote_age_s":3.73665},"context":{"vwap":8.855521,"price_vs_vwap_pct":1.066893,"ema9":8.93186,"ema20":8.857896,"ema_stack":true,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-1.323043,"dist_to_hod_atr":0.726837,"atr":0.165099,"spread_atr":0.605697,"own_change_pct":0.533705,"rel_strength_pct":{"SPY":0.503696,"IWM":0.512677}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.198849},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"70d19ec1b97c","ts":"2026-09-21T13:40:18.604429+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 177.7s, plan says WATCH; stop 8.92, target 9.02 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.02; breakout: 1-min close > 9.06 on >= 141768 sh","plan":{"state":"WATCH","setup":"","stop":8.92,"target":9.015,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":8.9444,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":5.0,"volume_pace":3.734,"trend":"flat","recent_slope_pct":0.1035,"volatility":"medium"},"price":9.015,"volume":{"bars":10,"last_bar_volume":10576.0,"baseline_avg":103838.333333,"bar_rvol":0.101851,"raw_accel":-0.643546,"smooth_accel":-0.62936,"accel_momentum":-0.154084,"rvol_3bar":[0.245525,0.262312,0.101851],"trend_3bar":"MIXED","projected_rvol":0.551626},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":15442.0,"sell_vol":2949.0,"unclassified_vol":0.0,"imbalance":0.6793,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":1.007215},"context":{"vwap":8.9433,"price_vs_vwap_pct":0.80172,"ema9":8.962228,"ema20":8.935651,"ema_stack":true,"ema_warm":false,"hod":9.05,"dist_to_hod_pct":-0.38674,"dist_to_hod_atr":0.305929,"atr":0.114405,"spread_atr":0.087408,"own_change_pct":0.391499,"rel_strength_pct":{"SPY":0.36149,"IWM":0.370471}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.069187},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6aec7cfd69cb","ts":"2026-09-21T13:40:23.667316+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 182.7s, plan says PASS; stop 8.92, target 9.00 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.00; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9164,"target":9.0029,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":124.8,"room_to_5d_high_atr":-0.79},"price":9.0029,"vwap":8.9445,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":5.0,"volume_pace":3.715,"trend":"flat","recent_slope_pct":0.0766,"volatility":"medium"},"price":9.0029,"volume":{"bars":10,"last_bar_volume":10576.0,"baseline_avg":103838.333333,"bar_rvol":0.101851,"raw_accel":-0.643546,"smooth_accel":-0.62936,"accel_momentum":-0.154084,"rvol_3bar":[0.245525,0.262312,0.101851],"trend_3bar":"MIXED","projected_rvol":0.507183},"flow":{"window_s":30,"trades":114,"trade_rate":3.8,"buy_vol":17590.0,"sell_vol":3644.0,"unclassified_vol":0.0,"imbalance":0.656777,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":0.203858},"context":{"vwap":8.9433,"price_vs_vwap_pct":0.666424,"ema9":8.962228,"ema20":8.935651,"ema_stack":true,"ema_warm":false,"hod":9.05,"dist_to_hod_pct":-0.520442,"dist_to_hod_atr":0.411694,"atr":0.114405,"spread_atr":0.087408,"own_change_pct":0.391499,"rel_strength_pct":{"SPY":0.36149,"IWM":0.370471}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.066893},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"898f726f1940","ts":"2026-09-21T13:40:23.667316+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.8296,"target":12.5,"target_label":"range_20d_high","reward_risk":25.14,"pos_in_5d_range_pct":140.5,"room_to_5d_high_atr":-0.53},"price":8.97,"vwap":8.8648,"ext_from_open_pct":2.75,"max_ext_allowed_pct":3.0,"volume_pace":2.651,"trend":"flat","recent_slope_pct":-0.0835,"volatility":"high"},"price":8.97,"volume":{"bars":10,"last_bar_volume":23538.0,"baseline_avg":33129.888889,"bar_rvol":0.710476,"raw_accel":0.32953,"smooth_accel":-0.101705,"accel_momentum":0.217734,"rvol_3bar":[0.217186,0.50499,0.710476],"trend_3bar":"ACCELERATING","projected_rvol":0.051193},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":982.0,"sell_vol":2250.0,"unclassified_vol":0.0,"imbalance":-0.392327,"bid":8.91,"ask":8.98,"spread_pct":0.78256,"quote_size_imbalance":null,"quote_age_s":0.16023},"context":{"vwap":8.864626,"price_vs_vwap_pct":1.1887,"ema9":8.935488,"ema20":8.866668,"ema_stack":true,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-1.102536,"dist_to_hod_atr":0.626066,"atr":0.159728,"spread_atr":0.438246,"own_change_pct":0.958827,"rel_strength_pct":{"SPY":0.928818,"IWM":0.937799}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.278739},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"35ffa1adf748","ts":"2026-09-21T13:40:28.755265+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.79,"target":12.5,"target_label":"range_20d_high","reward_risk":22.19,"pos_in_5d_range_pct":137.8,"room_to_5d_high_atr":-0.5},"price":8.95,"vwap":8.8648,"ext_from_open_pct":2.52,"max_ext_allowed_pct":3.0,"volume_pace":2.631,"trend":"flat","recent_slope_pct":-0.128,"volatility":"high"},"price":8.95,"volume":{"bars":10,"last_bar_volume":23538.0,"baseline_avg":33129.888889,"bar_rvol":0.710476,"raw_accel":0.32953,"smooth_accel":-0.101705,"accel_momentum":0.217734,"rvol_3bar":[0.217186,0.50499,0.710476],"trend_3bar":"ACCELERATING","projected_rvol":0.048496},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":20.0,"sell_vol":2300.0,"unclassified_vol":0.0,"imbalance":-0.982759,"bid":8.9,"ask":8.98,"spread_pct":0.894855,"quote_size_imbalance":null,"quote_age_s":0.995315},"context":{"vwap":8.864626,"price_vs_vwap_pct":0.963084,"ema9":8.935488,"ema20":8.866668,"ema_stack":true,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-1.323043,"dist_to_hod_atr":0.751279,"atr":0.159728,"spread_atr":0.500853,"own_change_pct":0.958827,"rel_strength_pct":{"SPY":0.928818,"IWM":0.937799}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.698227},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"598b158748b1","ts":"2026-09-21T13:40:33.787297+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 192.8s, plan says WATCH; stop 8.92, target 9.01 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.01; breakout: 1-min close > 9.06 on >= 141768 sh","plan":{"state":"WATCH","setup":"","stop":8.92,"target":9.0133,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.8,"room_to_5d_high_atr":-0.82},"price":9.0133,"vwap":8.9451,"ext_from_open_pct":-0.07,"max_ext_allowed_pct":4.0,"volume_pace":3.689,"trend":"flat","recent_slope_pct":0.0998,"volatility":"medium"},"price":9.0133,"volume":{"bars":10,"last_bar_volume":10576.0,"baseline_avg":103838.333333,"bar_rvol":0.101851,"raw_accel":-0.643546,"smooth_accel":-0.62936,"accel_momentum":-0.154084,"rvol_3bar":[0.245525,0.262312,0.101851],"trend_3bar":"MIXED","projected_rvol":0.505339},"flow":{"window_s":30,"trades":114,"trade_rate":3.8,"buy_vol":17759.0,"sell_vol":10053.0,"unclassified_vol":0.0,"imbalance":0.277075,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.47724},"context":{"vwap":8.9433,"price_vs_vwap_pct":0.782712,"ema9":8.962228,"ema20":8.935651,"ema_stack":true,"ema_warm":false,"hod":9.05,"dist_to_hod_pct":-0.405525,"dist_to_hod_atr":0.320789,"atr":0.114405,"spread_atr":0.087408,"own_change_pct":0.391499,"rel_strength_pct":{"SPY":0.36149,"IWM":0.370471}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.02822},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ba82789cf3f6","ts":"2026-09-21T13:40:49.023234+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.28 below VWAP $12.28","plan":{"state":"PASS","setup":"","stop":12.0997,"target":12.29,"target_label":"prev_day_high","reward_risk":0.09,"pos_in_5d_range_pct":71.0,"room_to_5d_high_atr":0.46},"price":12.275,"vwap":12.2799,"ext_from_open_pct":-0.2,"max_ext_allowed_pct":4.0,"volume_pace":3.153,"trend":"flat","recent_slope_pct":-0.0682,"volatility":"medium"},"price":12.275,"volume":{"bars":10,"last_bar_volume":39204.0,"baseline_avg":94077.333333,"bar_rvol":0.416721,"raw_accel":0.666884,"smooth_accel":-0.539678,"accel_momentum":0.164314,"rvol_3bar":[0.198448,0.184018,0.416721],"trend_3bar":"MIXED","projected_rvol":1.095318},"flow":{"window_s":30,"trades":150,"trade_rate":5.0,"buy_vol":38010.0,"sell_vol":18503.0,"unclassified_vol":0.0,"imbalance":0.345177,"bid":12.26,"ask":12.29,"spread_pct":0.244399,"quote_size_imbalance":null,"quote_age_s":0.167269},"context":{"vwap":12.278731,"price_vs_vwap_pct":-0.030384,"ema9":12.291386,"ema20":12.280834,"ema_stack":false,"ema_warm":false,"hod":12.49,"dist_to_hod_pct":-1.721377,"dist_to_hod_atr":1.333789,"atr":0.161195,"spread_atr":0.18611,"own_change_pct":1.315789,"rel_strength_pct":{"SPY":1.28578,"IWM":1.294762}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.143843},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1911bfbb69fe","ts":"2026-09-21T13:41:04.131310+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.45 below VWAP $6.46","plan":{"state":"PASS","setup":"","stop":6.2866,"target":6.95,"target_label":"premarket_high","reward_risk":3.06,"pos_in_5d_range_pct":101.7,"room_to_5d_high_atr":-0.05},"price":6.4499,"vwap":6.4602,"ext_from_open_pct":0.94,"max_ext_allowed_pct":3.0,"volume_pace":2.167,"trend":"flat","recent_slope_pct":-0.2716,"volatility":"high"},"price":6.4499,"volume":{"bars":11,"last_bar_volume":24122.0,"baseline_avg":33319.4,"bar_rvol":0.723963,"raw_accel":1.89585,"smooth_accel":0.300718,"accel_momentum":0.783068,"rvol_3bar":[0.268308,0.071495,0.723963],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":7849.0,"sell_vol":35789.0,"unclassified_vol":0.0,"imbalance":-0.640268,"bid":6.42,"ask":6.45,"spread_pct":0.4662,"quote_size_imbalance":null,"quote_age_s":1.090197},"context":{"vwap":6.461404,"price_vs_vwap_pct":-0.178049,"ema9":6.494024,"ema20":6.48052,"ema_stack":false,"ema_warm":false,"hod":6.6,"dist_to_hod_pct":-2.274242,"dist_to_hod_atr":1.345371,"atr":0.111568,"spread_atr":0.268895,"own_change_pct":-0.404615,"rel_strength_pct":{"SPY":-0.396789,"IWM":-0.376593}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.46353},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a72e2fdaa302","ts":"2026-09-21T13:41:04.131310+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"held 177.7s, plan says WATCH; stop 10.64, target 11.00 (premarket_high), R:R 2.13; breakout: 1-min close > 10.82 on >= 132351 sh","plan":{"state":"WATCH","setup":"","stop":10.64,"target":11.0,"target_label":"premarket_high","reward_risk":2.13,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.755,"vwap":10.7065,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":0.433,"trend":"flat","recent_slope_pct":0.0139,"volatility":"unknown"},"price":10.755,"volume":{"bars":11,"last_bar_volume":57813.0,"baseline_avg":91276.4,"bar_rvol":0.633384,"raw_accel":0.574986,"smooth_accel":-0.11595,"accel_momentum":-0.173646,"rvol_3bar":[0.307273,0.377102,0.633384],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":5309.0,"sell_vol":7656.0,"unclassified_vol":0.0,"imbalance":-0.181026,"bid":10.75,"ask":10.76,"spread_pct":0.09298,"quote_size_imbalance":null,"quote_age_s":0.49724},"context":{"vwap":10.706467,"price_vs_vwap_pct":0.45331,"ema9":10.734153,"ema20":10.701624,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.692521,"dist_to_hod_atr":0.733838,"atr":0.102202,"spread_atr":0.097845,"own_change_pct":0.232883,"rel_strength_pct":{"SPY":0.240709,"IWM":0.260905}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.114659},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6ef645024c10","ts":"2026-09-21T13:41:24.470880+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":4.22,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.0632,"vwap":7.9817,"ext_from_open_pct":0.66,"max_ext_allowed_pct":4.0,"volume_pace":12.62,"trend":"flat","recent_slope_pct":0.3995,"volatility":"unknown"},"price":8.0632,"volume":{"bars":11,"last_bar_volume":849.0,"baseline_avg":21864.2,"bar_rvol":0.038831,"raw_accel":-0.844678,"smooth_accel":-0.348587,"accel_momentum":-0.086056,"rvol_3bar":[0.643943,0.074123,0.038831],"trend_3bar":"DECELERATING","projected_rvol":0.025456},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":19.0,"sell_vol":358.0,"unclassified_vol":0.0,"imbalance":-0.899204,"bid":8.04,"ask":8.1,"spread_pct":0.743494,"quote_size_imbalance":null,"quote_age_s":1.845461},"context":{"vwap":7.981619,"price_vs_vwap_pct":1.022107,"ema9":8.029743,"ema20":7.974968,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-2.264242,"dist_to_hod_atr":0.581115,"atr":0.321451,"spread_atr":0.186654,"own_change_pct":0.255602,"rel_strength_pct":{"SPY":0.263428,"IWM":0.283624}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.034917},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"214f918082e7","ts":"2026-09-21T13:41:34.580007+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.24% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":4.77,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.04,"vwap":7.9817,"ext_from_open_pct":0.37,"max_ext_allowed_pct":4.0,"volume_pace":12.448,"trend":"flat","recent_slope_pct":0.342,"volatility":"unknown"},"price":8.04,"volume":{"bars":11,"last_bar_volume":849.0,"baseline_avg":21864.2,"bar_rvol":0.038831,"raw_accel":-0.844678,"smooth_accel":-0.348587,"accel_momentum":-0.086056,"rvol_3bar":[0.643943,0.074123,0.038831],"trend_3bar":"DECELERATING","projected_rvol":0.033886},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":12.0,"sell_vol":415.0,"unclassified_vol":0.0,"imbalance":-0.943794,"bid":8.0,"ask":8.1,"spread_pct":1.242236,"quote_size_imbalance":null,"quote_age_s":0.551885},"context":{"vwap":7.981619,"price_vs_vwap_pct":0.731439,"ema9":8.029743,"ema20":7.974968,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-2.545455,"dist_to_hod_atr":0.653288,"atr":0.321451,"spread_atr":0.31109,"own_change_pct":0.255602,"rel_strength_pct":{"SPY":0.263428,"IWM":0.283624}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.036648},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"67f10f251510","ts":"2026-09-21T13:41:39.655163+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"held 213.2s, plan says PASS; stop 10.64, target 11.00 (premarket_high), R:R 2.37; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.6375,"target":11.0,"target_label":"premarket_high","reward_risk":2.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.745,"vwap":10.7074,"ext_from_open_pct":0.42,"max_ext_allowed_pct":3.0,"volume_pace":0.421,"trend":"flat","recent_slope_pct":-0.0047,"volatility":"unknown"},"price":10.745,"volume":{"bars":11,"last_bar_volume":57813.0,"baseline_avg":91276.4,"bar_rvol":0.633384,"raw_accel":0.574986,"smooth_accel":-0.11595,"accel_momentum":-0.173646,"rvol_3bar":[0.307273,0.377102,0.633384],"trend_3bar":"ACCELERATING","projected_rvol":0.367617},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":6823.0,"sell_vol":14148.0,"unclassified_vol":0.0,"imbalance":-0.349292,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":1.891384},"context":{"vwap":10.706467,"price_vs_vwap_pct":0.359909,"ema9":10.734153,"ema20":10.701624,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.784857,"dist_to_hod_atr":0.831683,"atr":0.102202,"spread_atr":0.097845,"own_change_pct":0.232883,"rel_strength_pct":{"SPY":0.240709,"IWM":0.260905}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.221236},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a63ed2e058f2","ts":"2026-09-21T13:41:49.700022+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":10.64,"target":11.0,"target_label":"premarket_high","reward_risk":2.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.7564,"vwap":10.7075,"ext_from_open_pct":0.53,"max_ext_allowed_pct":3.0,"volume_pace":0.415,"trend":"flat","recent_slope_pct":0.0166,"volatility":"unknown"},"price":10.7564,"volume":{"bars":11,"last_bar_volume":57813.0,"baseline_avg":91276.4,"bar_rvol":0.633384,"raw_accel":0.574986,"smooth_accel":-0.11595,"accel_momentum":-0.173646,"rvol_3bar":[0.307273,0.377102,0.633384],"trend_3bar":"ACCELERATING","projected_rvol":0.307325},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":6506.0,"sell_vol":14406.0,"unclassified_vol":0.0,"imbalance":-0.377774,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":1.347415},"context":{"vwap":10.706467,"price_vs_vwap_pct":0.466386,"ema9":10.734153,"ema20":10.701624,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.679594,"dist_to_hod_atr":0.72014,"atr":0.102202,"spread_atr":0.097845,"own_change_pct":0.232883,"rel_strength_pct":{"SPY":0.240709,"IWM":0.260905}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.239276},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"61eb9f01b4ab","ts":"2026-09-21T13:41:54.723178+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":3.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.0879,"vwap":7.9819,"ext_from_open_pct":0.97,"max_ext_allowed_pct":4.0,"volume_pace":12.117,"trend":"flat","recent_slope_pct":0.4607,"volatility":"unknown"},"price":8.0879,"volume":{"bars":11,"last_bar_volume":849.0,"baseline_avg":21864.2,"bar_rvol":0.038831,"raw_accel":-0.844678,"smooth_accel":-0.348587,"accel_momentum":-0.086056,"rvol_3bar":[0.643943,0.074123,0.038831],"trend_3bar":"DECELERATING","projected_rvol":0.040017},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":371.0,"sell_vol":200.0,"unclassified_vol":0.0,"imbalance":0.299475,"bid":8.0,"ask":8.08,"spread_pct":0.995025,"quote_size_imbalance":null,"quote_age_s":1.980284},"context":{"vwap":7.981619,"price_vs_vwap_pct":1.331568,"ema9":8.029743,"ema20":7.974968,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.964848,"dist_to_hod_atr":0.504276,"atr":0.321451,"spread_atr":0.248872,"own_change_pct":0.255602,"rel_strength_pct":{"SPY":0.263428,"IWM":0.283624}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.011629},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"73a1aaa6ff94","ts":"2026-09-21T13:41:54.723178+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.6332,"target":11.0,"target_label":"premarket_high","reward_risk":2.42,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.7406,"vwap":10.7074,"ext_from_open_pct":0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.412,"trend":"flat","recent_slope_pct":-0.0128,"volatility":"unknown"},"price":10.7406,"volume":{"bars":11,"last_bar_volume":57813.0,"baseline_avg":91276.4,"bar_rvol":0.633384,"raw_accel":0.574986,"smooth_accel":-0.11595,"accel_momentum":-0.173646,"rvol_3bar":[0.307273,0.377102,0.633384],"trend_3bar":"ACCELERATING","projected_rvol":0.279511},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":6384.0,"sell_vol":14089.0,"unclassified_vol":0.0,"imbalance":-0.376349,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":6.370571},"context":{"vwap":10.706467,"price_vs_vwap_pct":0.318812,"ema9":10.734153,"ema20":10.701624,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.825485,"dist_to_hod_atr":0.874735,"atr":0.102202,"spread_atr":0.097845,"own_change_pct":0.232883,"rel_strength_pct":{"SPY":0.240709,"IWM":0.260905}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.238374},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e34d5d71322e","ts":"2026-09-21T13:41:59.747932+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.24% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":3.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.0879,"vwap":7.9819,"ext_from_open_pct":0.97,"max_ext_allowed_pct":4.0,"volume_pace":12.033,"trend":"flat","recent_slope_pct":0.4607,"volatility":"unknown"},"price":8.0879,"volume":{"bars":11,"last_bar_volume":849.0,"baseline_avg":21864.2,"bar_rvol":0.038831,"raw_accel":-0.844678,"smooth_accel":-0.348587,"accel_momentum":-0.086056,"rvol_3bar":[0.643943,0.074123,0.038831],"trend_3bar":"DECELERATING","projected_rvol":0.036652},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":371.0,"sell_vol":200.0,"unclassified_vol":0.0,"imbalance":0.299475,"bid":8.0,"ask":8.1,"spread_pct":1.242236,"quote_size_imbalance":null,"quote_age_s":3.306856},"context":{"vwap":7.981619,"price_vs_vwap_pct":1.331568,"ema9":8.029743,"ema20":7.974968,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.964848,"dist_to_hod_atr":0.504276,"atr":0.321451,"spread_atr":0.31109,"own_change_pct":0.255602,"rel_strength_pct":{"SPY":0.263428,"IWM":0.283624}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.011629},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"be0a15df631f","ts":"2026-09-21T13:42:04.771029+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.015,"target":5.1483,"target_label":"premarket_high","reward_risk":0.13,"pos_in_5d_range_pct":66.6,"room_to_5d_high_atr":0.65},"price":5.133,"vwap":5.102,"ext_from_open_pct":-0.91,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":0.5129,"volatility":"high"},"price":5.133,"volume":{"bars":12,"last_bar_volume":123772.0,"baseline_avg":62194.909091,"bar_rvol":1.990066,"raw_accel":3.164463,"smooth_accel":0.517302,"accel_momentum":-0.539256,"rvol_3bar":[0.431855,0.454156,1.990066],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":387,"trade_rate":12.9,"buy_vol":43567.0,"sell_vol":32901.0,"unclassified_vol":0.0,"imbalance":0.139483,"bid":5.13,"ask":5.14,"spread_pct":0.194742,"quote_size_imbalance":null,"quote_age_s":0.452136},"context":{"vwap":5.101944,"price_vs_vwap_pct":0.608714,"ema9":5.079659,"ema20":5.079803,"ema_stack":false,"ema_warm":false,"hod":5.21,"dist_to_hod_pct":-1.477927,"dist_to_hod_atr":0.922738,"atr":0.083447,"spread_atr":0.119836,"own_change_pct":1.986097,"rel_strength_pct":{"SPY":1.971746,"IWM":1.977335}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.277581},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"08b0733adba6","ts":"2026-09-21T13:42:24.870041+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":4.52,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.05,"vwap":7.9821,"ext_from_open_pct":0.5,"max_ext_allowed_pct":4.0,"volume_pace":11.662,"trend":"flat","recent_slope_pct":-0.0645,"volatility":"unknown"},"price":8.05,"volume":{"bars":12,"last_bar_volume":798.0,"baseline_avg":19953.727273,"bar_rvol":0.039993,"raw_accel":-0.84003,"smooth_accel":-0.921617,"accel_momentum":-0.57303,"rvol_3bar":[0.074123,0.038831,0.039993],"trend_3bar":"MIXED","projected_rvol":0.081612},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":276.0,"sell_vol":399.0,"unclassified_vol":0.0,"imbalance":-0.182222,"bid":8.01,"ask":8.09,"spread_pct":0.993789,"quote_size_imbalance":null,"quote_age_s":1.096171},"context":{"vwap":7.981934,"price_vs_vwap_pct":0.852746,"ema9":8.041374,"ema20":7.985723,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-2.424242,"dist_to_hod_atr":0.660882,"atr":0.302626,"spread_atr":0.264353,"own_change_pct":0.846633,"rel_strength_pct":{"SPY":0.832282,"IWM":0.837871}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.007288},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"556ca8b48ca4","ts":"2026-09-21T13:42:24.870041+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 303.9s, plan says PASS; stop 8.91, target 9.00 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.00; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9136,"target":9.0001,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":124.6,"room_to_5d_high_atr":-0.78},"price":9.0001,"vwap":8.9505,"ext_from_open_pct":-0.22,"max_ext_allowed_pct":4.0,"volume_pace":3.399,"trend":"flat","recent_slope_pct":0.1058,"volatility":"medium"},"price":9.0001,"volume":{"bars":12,"last_bar_volume":52152.0,"baseline_avg":89844.272727,"bar_rvol":0.580471,"raw_accel":0.208173,"smooth_accel":0.020026,"accel_momentum":0.343162,"rvol_3bar":[0.101851,0.456725,0.580471],"trend_3bar":"ACCELERATING","projected_rvol":0.406761},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":11691.0,"sell_vol":15555.0,"unclassified_vol":0.0,"imbalance":-0.141819,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":0.214059},"context":{"vwap":8.949679,"price_vs_vwap_pct":0.563381,"ema9":8.980498,"ema20":8.949716,"ema_stack":true,"ema_warm":false,"hod":9.05,"dist_to_hod_pct":-0.551381,"dist_to_hod_atr":0.475351,"atr":0.104975,"spread_atr":0.095261,"own_change_pct":0.558036,"rel_strength_pct":{"SPY":0.543685,"IWM":0.549273}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.082322},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2d056f1113bd","ts":"2026-09-21T13:42:29.899313+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 309.0s, plan says WATCH; stop 8.92, target 9.01 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.01; breakout: 1-min close > 9.06 on >= 130055 sh","plan":{"state":"WATCH","setup":"","stop":8.9185,"target":9.005,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.0,"room_to_5d_high_atr":-0.79},"price":9.005,"vwap":8.9505,"ext_from_open_pct":-0.17,"max_ext_allowed_pct":4.0,"volume_pace":3.377,"trend":"flat","recent_slope_pct":0.1167,"volatility":"medium"},"price":9.005,"volume":{"bars":12,"last_bar_volume":52152.0,"baseline_avg":89844.272727,"bar_rvol":0.580471,"raw_accel":0.208173,"smooth_accel":0.020026,"accel_momentum":0.343162,"rvol_3bar":[0.101851,0.456725,0.580471],"trend_3bar":"ACCELERATING","projected_rvol":0.344082},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":6989.0,"sell_vol":8416.0,"unclassified_vol":0.0,"imbalance":-0.092632,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":0.791211},"context":{"vwap":8.949679,"price_vs_vwap_pct":0.618131,"ema9":8.980498,"ema20":8.949716,"ema_stack":true,"ema_warm":false,"hod":9.05,"dist_to_hod_pct":-0.497238,"dist_to_hod_atr":0.428673,"atr":0.104975,"spread_atr":0.095261,"own_change_pct":0.558036,"rel_strength_pct":{"SPY":0.543685,"IWM":0.549273}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.05377},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"069206db98aa","ts":"2026-09-21T13:42:29.899313+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.09 below VWAP $5.10","plan":{"state":"PASS","setup":"","stop":5.0083,"target":5.1483,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":61.0,"room_to_5d_high_atr":0.76},"price":5.095,"vwap":5.1021,"ext_from_open_pct":-1.64,"max_ext_allowed_pct":3.0,"volume_pace":0.571,"trend":"flat","recent_slope_pct":0.3641,"volatility":"high"},"price":5.095,"volume":{"bars":12,"last_bar_volume":123772.0,"baseline_avg":62194.909091,"bar_rvol":1.990066,"raw_accel":3.164463,"smooth_accel":0.517302,"accel_momentum":-0.539256,"rvol_3bar":[0.431855,0.454156,1.990066],"trend_3bar":"ACCELERATING","projected_rvol":1.953436},"flow":{"window_s":30,"trades":219,"trade_rate":7.3,"buy_vol":26017.0,"sell_vol":34526.0,"unclassified_vol":0.0,"imbalance":-0.140545,"bid":5.09,"ask":5.1,"spread_pct":0.196271,"quote_size_imbalance":null,"quote_age_s":0.603592},"context":{"vwap":5.101944,"price_vs_vwap_pct":-0.1361,"ema9":5.079659,"ema20":5.079803,"ema_stack":false,"ema_warm":false,"hod":5.21,"dist_to_hod_pct":-2.207294,"dist_to_hod_atr":1.378115,"atr":0.083447,"spread_atr":0.119836,"own_change_pct":1.986097,"rel_strength_pct":{"SPY":1.971746,"IWM":1.977335}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.279693},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f27be76781b0","ts":"2026-09-21T13:42:29.899313+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1876,"target":5.3,"target_label":"prev_day_high","reward_risk":1.15,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.24,"vwap":5.2412,"ext_from_open_pct":0.77,"max_ext_allowed_pct":3.0,"volume_pace":2.915,"trend":"flat","recent_slope_pct":-0.0597,"volatility":"unknown"},"price":5.24,"volume":{"bars":12,"last_bar_volume":28543.0,"baseline_avg":116783.727273,"bar_rvol":0.244409,"raw_accel":-0.434591,"smooth_accel":-0.454667,"accel_momentum":-0.156673,"rvol_3bar":[0.256436,0.409046,0.244409],"trend_3bar":"MIXED","projected_rvol":0.507733},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":5153.0,"sell_vol":24395.0,"unclassified_vol":0.0,"imbalance":-0.651212,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.514047},"context":{"vwap":5.240935,"price_vs_vwap_pct":-0.017836,"ema9":5.260298,"ema20":5.244538,"ema_stack":false,"ema_warm":false,"hod":5.3,"dist_to_hod_pct":-1.132075,"dist_to_hod_atr":1.489552,"atr":0.040281,"spread_atr":0.248259,"own_change_pct":0.810707,"rel_strength_pct":{"SPY":0.796357,"IWM":0.801945}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.159162},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cfe4a6df9bc2","ts":"2026-09-21T13:42:40.065418+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.73% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":3.54,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.1,"vwap":7.983,"ext_from_open_pct":1.12,"max_ext_allowed_pct":5.0,"volume_pace":11.546,"trend":"flat","recent_slope_pct":0.0592,"volatility":"unknown"},"price":8.1,"volume":{"bars":12,"last_bar_volume":798.0,"baseline_avg":19953.727273,"bar_rvol":0.039993,"raw_accel":-0.84003,"smooth_accel":-0.921617,"accel_momentum":-0.57303,"rvol_3bar":[0.074123,0.038831,0.039993],"trend_3bar":"MIXED","projected_rvol":0.22005},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":2155.0,"sell_vol":520.0,"unclassified_vol":0.0,"imbalance":0.611215,"bid":8.01,"ask":8.15,"spread_pct":1.732673,"quote_size_imbalance":null,"quote_age_s":0.552497},"context":{"vwap":7.981934,"price_vs_vwap_pct":1.47916,"ema9":8.041374,"ema20":7.985723,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.818182,"dist_to_hod_atr":0.495662,"atr":0.302626,"spread_atr":0.462618,"own_change_pct":0.846633,"rel_strength_pct":{"SPY":0.832282,"IWM":0.837871}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.024444},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e4628f314040","ts":"2026-09-21T13:42:40.065418+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1925,"target":5.3,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.245,"vwap":5.2413,"ext_from_open_pct":0.87,"max_ext_allowed_pct":3.0,"volume_pace":2.896,"trend":"flat","recent_slope_pct":-0.0407,"volatility":"unknown"},"price":5.245,"volume":{"bars":12,"last_bar_volume":28543.0,"baseline_avg":116783.727273,"bar_rvol":0.244409,"raw_accel":-0.434591,"smooth_accel":-0.454667,"accel_momentum":-0.156673,"rvol_3bar":[0.256436,0.409046,0.244409],"trend_3bar":"MIXED","projected_rvol":0.4963},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":12529.0,"sell_vol":14956.0,"unclassified_vol":0.0,"imbalance":-0.088303,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.075134},"context":{"vwap":5.240935,"price_vs_vwap_pct":0.077567,"ema9":5.260298,"ema20":5.244538,"ema_stack":false,"ema_warm":false,"hod":5.3,"dist_to_hod_pct":-1.037736,"dist_to_hod_atr":1.365423,"atr":0.040281,"spread_atr":0.248259,"own_change_pct":0.810707,"rel_strength_pct":{"SPY":0.796357,"IWM":0.801945}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.021582},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"eff622ae6dba","ts":"2026-09-21T13:42:45.116885+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":3.54,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.1,"vwap":7.983,"ext_from_open_pct":1.12,"max_ext_allowed_pct":5.0,"volume_pace":11.47,"trend":"flat","recent_slope_pct":0.0592,"volatility":"unknown"},"price":8.1,"volume":{"bars":12,"last_bar_volume":798.0,"baseline_avg":19953.727273,"bar_rvol":0.039993,"raw_accel":-0.84003,"smooth_accel":-0.921617,"accel_momentum":-0.57303,"rvol_3bar":[0.074123,0.038831,0.039993],"trend_3bar":"MIXED","projected_rvol":0.195412},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":2031.0,"sell_vol":226.0,"unclassified_vol":0.0,"imbalance":0.799734,"bid":8.1,"ask":8.15,"spread_pct":0.615385,"quote_size_imbalance":null,"quote_age_s":0.893219},"context":{"vwap":7.981934,"price_vs_vwap_pct":1.47916,"ema9":8.041374,"ema20":7.985723,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.818182,"dist_to_hod_atr":0.495662,"atr":0.302626,"spread_atr":0.165221,"own_change_pct":0.846633,"rel_strength_pct":{"SPY":0.832282,"IWM":0.837871}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.031983},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"386c3a2ec98d","ts":"2026-09-21T13:43:00.500410+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.73% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":3.54,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.1,"vwap":7.9836,"ext_from_open_pct":1.12,"max_ext_allowed_pct":4.0,"volume_pace":11.296,"trend":"flat","recent_slope_pct":0.0592,"volatility":"unknown"},"price":8.1,"volume":{"bars":12,"last_bar_volume":798.0,"baseline_avg":19953.727273,"bar_rvol":0.039993,"raw_accel":-0.84003,"smooth_accel":-0.921617,"accel_momentum":-0.57303,"rvol_3bar":[0.074123,0.038831,0.039993],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2052.0,"sell_vol":1250.0,"unclassified_vol":0.0,"imbalance":0.242883,"bid":8.01,"ask":8.15,"spread_pct":1.732673,"quote_size_imbalance":null,"quote_age_s":1.722054},"context":{"vwap":7.981934,"price_vs_vwap_pct":1.47916,"ema9":8.041374,"ema20":7.985723,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.818182,"dist_to_hod_atr":0.495662,"atr":0.302626,"spread_atr":0.462618,"own_change_pct":0.846633,"rel_strength_pct":{"SPY":0.871415,"IWM":1.000749}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.009714},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"02b98168831d","ts":"2026-09-21T13:43:05.527169+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7796,"target":8.95,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":133.8,"room_to_5d_high_atr":-0.45},"price":8.92,"vwap":8.873,"ext_from_open_pct":2.18,"max_ext_allowed_pct":3.0,"volume_pace":2.526,"trend":"flat","recent_slope_pct":-0.0336,"volatility":"high"},"price":8.92,"volume":{"bars":13,"last_bar_volume":55412.0,"baseline_avg":27614.916667,"bar_rvol":2.006597,"raw_accel":6.358831,"smooth_accel":0.310012,"accel_momentum":0.505389,"rvol_3bar":[0.066582,0.255767,2.006597],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1295.0,"sell_vol":5217.0,"unclassified_vol":0.0,"imbalance":-0.602273,"bid":8.91,"ask":8.93,"spread_pct":0.224215,"quote_size_imbalance":null,"quote_age_s":1.901701},"context":{"vwap":8.873,"price_vs_vwap_pct":0.529694,"ema9":8.92497,"ema20":8.878601,"ema_stack":false,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-1.653804,"dist_to_hod_atr":1.045833,"atr":0.143426,"spread_atr":0.139444,"own_change_pct":-0.832871,"rel_strength_pct":{"SPY":-0.808089,"IWM":-0.678755}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.208518},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"201ca1810ec0","ts":"2026-09-21T13:43:05.527169+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1876,"target":5.3,"target_label":"prev_day_high","reward_risk":1.15,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.24,"vwap":5.2413,"ext_from_open_pct":0.77,"max_ext_allowed_pct":3.0,"volume_pace":2.807,"trend":"flat","recent_slope_pct":-0.1569,"volatility":"unknown"},"price":5.24,"volume":{"bars":13,"last_bar_volume":40168.0,"baseline_avg":109430.333333,"bar_rvol":0.367065,"raw_accel":0.40728,"smooth_accel":-0.120529,"accel_momentum":0.334138,"rvol_3bar":[0.409046,0.244409,0.367065],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":748.0,"sell_vol":1897.0,"unclassified_vol":0.0,"imbalance":-0.434405,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.107534},"context":{"vwap":5.241295,"price_vs_vwap_pct":-0.024705,"ema9":5.256738,"ema20":5.244344,"ema_stack":false,"ema_warm":false,"hod":5.3,"dist_to_hod_pct":-1.132075,"dist_to_hod_atr":1.49907,"atr":0.040025,"spread_atr":0.249845,"own_change_pct":-0.237869,"rel_strength_pct":{"SPY":-0.213087,"IWM":-0.083753}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.159455},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c875a80dffc2","ts":"2026-09-21T13:43:10.764780+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1925,"target":5.3,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.245,"vwap":5.2413,"ext_from_open_pct":0.87,"max_ext_allowed_pct":3.0,"volume_pace":2.79,"trend":"flat","recent_slope_pct":-0.1378,"volatility":"unknown"},"price":5.245,"volume":{"bars":13,"last_bar_volume":40168.0,"baseline_avg":109430.333333,"bar_rvol":0.367065,"raw_accel":0.40728,"smooth_accel":-0.120529,"accel_momentum":0.334138,"rvol_3bar":[0.409046,0.244409,0.367065],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1422.0,"sell_vol":1914.0,"unclassified_vol":0.0,"imbalance":-0.147482,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":2.118801},"context":{"vwap":5.241295,"price_vs_vwap_pct":0.070692,"ema9":5.256738,"ema20":5.244344,"ema_stack":false,"ema_warm":false,"hod":5.3,"dist_to_hod_pct":-1.037736,"dist_to_hod_atr":1.374147,"atr":0.040025,"spread_atr":0.249845,"own_change_pct":-0.237869,"rel_strength_pct":{"SPY":-0.213087,"IWM":-0.083753}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.054135},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"183cb7df6997","ts":"2026-09-21T13:43:20.843468+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1827,"target":5.3,"target_label":"prev_day_high","reward_risk":1.24,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.235,"vwap":5.2413,"ext_from_open_pct":0.67,"max_ext_allowed_pct":3.0,"volume_pace":2.798,"trend":"flat","recent_slope_pct":-0.1759,"volatility":"unknown"},"price":5.235,"volume":{"bars":13,"last_bar_volume":40168.0,"baseline_avg":109430.333333,"bar_rvol":0.367065,"raw_accel":0.40728,"smooth_accel":-0.120529,"accel_momentum":0.334138,"rvol_3bar":[0.409046,0.244409,0.367065],"trend_3bar":"MIXED","projected_rvol":0.600208},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3527.0,"sell_vol":19461.0,"unclassified_vol":0.0,"imbalance":-0.693144,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":0.22336},"context":{"vwap":5.241295,"price_vs_vwap_pct":-0.120101,"ema9":5.256738,"ema20":5.244344,"ema_stack":false,"ema_warm":false,"hod":5.3,"dist_to_hod_pct":-1.226415,"dist_to_hod_atr":1.623992,"atr":0.040025,"spread_atr":0.249845,"own_change_pct":-0.237869,"rel_strength_pct":{"SPY":-0.213087,"IWM":-0.083753}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.254429},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"eb181a513be8","ts":"2026-09-21T13:43:30.923389+00:00","symbol":"CTKB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.19,"target":5.315,"target_label":"prev_day_high","reward_risk":0.14,"pos_in_5d_range_pct":98.0,"room_to_5d_high_atr":0.06},"price":5.3,"vwap":5.2521,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":4.0,"volume_pace":0.475,"trend":"flat","recent_slope_pct":0.305,"volatility":"medium"},"price":5.3,"volume":{"bars":13,"last_bar_volume":5075.0,"baseline_avg":2148.75,"bar_rvol":2.361838,"raw_accel":6.759939,"smooth_accel":0.705355,"accel_momentum":0.837708,"rvol_3bar":[0.465581,0.28626,2.361838],"trend_3bar":"MIXED","projected_rvol":3.124312},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":3174.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":0.993719,"bid":5.28,"ask":5.31,"spread_pct":0.566572,"quote_size_imbalance":null,"quote_age_s":0.022365},"context":{"vwap":5.248221,"price_vs_vwap_pct":0.986606,"ema9":5.232346,"ema20":5.24154,"ema_stack":false,"ema_warm":false,"hod":5.32,"dist_to_hod_pct":-0.37594,"dist_to_hod_atr":0.405582,"atr":0.049312,"spread_atr":0.608373,"own_change_pct":0.382409,"rel_strength_pct":{"SPY":0.407191,"IWM":0.536525}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.347003},"shadow":{"decision":"FAIL","failed":["spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"db9ce8203f1b","ts":"2026-09-21T13:44:06.302471+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":3.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.11,"vwap":7.9857,"ext_from_open_pct":1.25,"max_ext_allowed_pct":5.0,"volume_pace":10.694,"trend":"flat","recent_slope_pct":-0.0098,"volatility":"unknown"},"price":8.11,"volume":{"bars":14,"last_bar_volume":4877.0,"baseline_avg":17251.230769,"bar_rvol":0.282704,"raw_accel":0.130818,"smooth_accel":-0.486323,"accel_momentum":0.266262,"rvol_3bar":[0.039993,0.216643,0.282704],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1333.0,"sell_vol":1724.0,"unclassified_vol":0.0,"imbalance":-0.127903,"bid":8.1,"ask":8.15,"spread_pct":0.615385,"quote_size_imbalance":null,"quote_age_s":3.563029},"context":{"vwap":7.985211,"price_vs_vwap_pct":1.562749,"ema9":8.04648,"ema20":7.998835,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.69697,"dist_to_hod_atr":0.501382,"atr":0.279228,"spread_atr":0.179065,"own_change_pct":-0.803958,"rel_strength_pct":{"SPY":-0.798088,"IWM":-0.646323}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.036159},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"98f8efc8aa1e","ts":"2026-09-21T13:44:11.331560+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.73% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":2.97,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.14,"vwap":7.9859,"ext_from_open_pct":1.62,"max_ext_allowed_pct":4.0,"volume_pace":10.649,"trend":"flat","recent_slope_pct":0.0644,"volatility":"unknown"},"price":8.14,"volume":{"bars":14,"last_bar_volume":4877.0,"baseline_avg":17251.230769,"bar_rvol":0.282704,"raw_accel":0.130818,"smooth_accel":-0.486323,"accel_momentum":0.266262,"rvol_3bar":[0.039993,0.216643,0.282704],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1231.0,"sell_vol":2024.0,"unclassified_vol":0.0,"imbalance":-0.243625,"bid":8.01,"ask":8.15,"spread_pct":1.732673,"quote_size_imbalance":null,"quote_age_s":0.806046},"context":{"vwap":7.985211,"price_vs_vwap_pct":1.938444,"ema9":8.04648,"ema20":7.998835,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.333333,"dist_to_hod_atr":0.393943,"atr":0.279228,"spread_atr":0.501382,"own_change_pct":-0.803958,"rel_strength_pct":{"SPY":-0.798088,"IWM":-0.646323}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.068874},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2b737a80c44c","ts":"2026-09-21T13:44:11.331560+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7646,"target":8.95,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":131.8,"room_to_5d_high_atr":-0.42},"price":8.905,"vwap":8.8771,"ext_from_open_pct":2.0,"max_ext_allowed_pct":3.0,"volume_pace":2.676,"trend":"flat","recent_slope_pct":0.0168,"volatility":"high"},"price":8.905,"volume":{"bars":14,"last_bar_volume":33233.0,"baseline_avg":29753.153846,"bar_rvol":1.116957,"raw_accel":-0.400256,"smooth_accel":1.216831,"accel_momentum":0.906819,"rvol_3bar":[0.255767,2.006597,1.116957],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":314,"trade_rate":10.466667,"buy_vol":11684.0,"sell_vol":24710.0,"unclassified_vol":0.0,"imbalance":-0.357916,"bid":8.9,"ask":8.91,"spread_pct":0.112296,"quote_size_imbalance":null,"quote_age_s":0.290284},"context":{"vwap":8.87583,"price_vs_vwap_pct":0.328643,"ema9":8.921976,"ema20":8.881591,"ema_stack":false,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-1.819184,"dist_to_hod_atr":1.21289,"atr":0.136039,"spread_atr":0.073508,"own_change_pct":-1.251261,"rel_strength_pct":{"SPY":-1.245391,"IWM":-1.093626}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.399777},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f061e09aadd4","ts":"2026-09-21T13:44:16.357142+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":2.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.1468,"vwap":7.9861,"ext_from_open_pct":1.71,"max_ext_allowed_pct":4.0,"volume_pace":10.6,"trend":"flat","recent_slope_pct":0.0812,"volatility":"unknown"},"price":8.1468,"volume":{"bars":14,"last_bar_volume":4877.0,"baseline_avg":17251.230769,"bar_rvol":0.282704,"raw_accel":0.130818,"smooth_accel":-0.486323,"accel_momentum":0.266262,"rvol_3bar":[0.039993,0.216643,0.282704],"trend_3bar":"ACCELERATING","projected_rvol":0.373165},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":1405.0,"sell_vol":509.0,"unclassified_vol":0.0,"imbalance":0.46813,"bid":8.1,"ask":8.15,"spread_pct":0.615385,"quote_size_imbalance":null,"quote_age_s":4.04263},"context":{"vwap":7.985211,"price_vs_vwap_pct":2.023601,"ema9":8.04648,"ema20":7.998835,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.250909,"dist_to_hod_atr":0.36959,"atr":0.279228,"spread_atr":0.179065,"own_change_pct":-0.803958,"rel_strength_pct":{"SPY":-0.798088,"IWM":-0.646323}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.132342},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"611afed5d0fd","ts":"2026-09-21T13:44:21.382930+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.73% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":3.04,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.1345,"vwap":7.9862,"ext_from_open_pct":1.55,"max_ext_allowed_pct":4.0,"volume_pace":10.545,"trend":"flat","recent_slope_pct":0.0508,"volatility":"unknown"},"price":8.1345,"volume":{"bars":14,"last_bar_volume":4877.0,"baseline_avg":17251.230769,"bar_rvol":0.282704,"raw_accel":0.130818,"smooth_accel":-0.486323,"accel_momentum":0.266262,"rvol_3bar":[0.039993,0.216643,0.282704],"trend_3bar":"ACCELERATING","projected_rvol":0.307578},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1337.0,"sell_vol":613.0,"unclassified_vol":0.0,"imbalance":0.371282,"bid":8.01,"ask":8.15,"spread_pct":1.732673,"quote_size_imbalance":null,"quote_age_s":2.55545},"context":{"vwap":7.985211,"price_vs_vwap_pct":1.869567,"ema9":8.04648,"ema20":7.998835,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.4,"dist_to_hod_atr":0.41364,"atr":0.279228,"spread_atr":0.501382,"own_change_pct":-0.803958,"rel_strength_pct":{"SPY":-0.798088,"IWM":-0.646323}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.104963},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c7886b1d3ef1","ts":"2026-09-21T13:44:21.382930+00:00","symbol":"CTKB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.2081,"target":5.315,"target_label":"prev_day_high","reward_risk":0.29,"pos_in_5d_range_pct":96.8,"room_to_5d_high_atr":0.1},"price":5.2911,"vwap":5.2519,"ext_from_open_pct":-0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.448,"trend":"flat","recent_slope_pct":0.3787,"volatility":"medium"},"price":5.2911,"volume":{"bars":14,"last_bar_volume":3470.0,"baseline_avg":2373.846154,"bar_rvol":1.461763,"raw_accel":-0.316256,"smooth_accel":2.347525,"accel_momentum":1.642171,"rvol_3bar":[0.28626,2.361838,1.461763],"trend_3bar":"MIXED","projected_rvol":0.008274},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":17.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":5.28,"ask":5.31,"spread_pct":0.566572,"quote_size_imbalance":null,"quote_age_s":1.878689},"context":{"vwap":5.251938,"price_vs_vwap_pct":0.745661,"ema9":5.244877,"ema20":5.246631,"ema_stack":false,"ema_warm":false,"hod":5.32,"dist_to_hod_pct":-0.543233,"dist_to_hod_atr":0.577131,"atr":0.050075,"spread_atr":0.599098,"own_change_pct":1.24283,"rel_strength_pct":{"SPY":1.2487,"IWM":1.400465}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.461763},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8b1da1883261","ts":"2026-09-21T13:44:26.418789+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":3.16,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.125,"vwap":7.9869,"ext_from_open_pct":1.44,"max_ext_allowed_pct":4.0,"volume_pace":10.551,"trend":"flat","recent_slope_pct":0.0273,"volatility":"unknown"},"price":8.125,"volume":{"bars":14,"last_bar_volume":4877.0,"baseline_avg":17251.230769,"bar_rvol":0.282704,"raw_accel":0.130818,"smooth_accel":-0.486323,"accel_momentum":0.266262,"rvol_3bar":[0.039993,0.216643,0.282704],"trend_3bar":"ACCELERATING","projected_rvol":0.445369},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1809.0,"sell_vol":1633.0,"unclassified_vol":0.0,"imbalance":0.051133,"bid":8.1,"ask":8.15,"spread_pct":0.615385,"quote_size_imbalance":null,"quote_age_s":2.869968},"context":{"vwap":7.985211,"price_vs_vwap_pct":1.750597,"ema9":8.04648,"ema20":7.998835,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.515152,"dist_to_hod_atr":0.447662,"atr":0.279228,"spread_atr":0.179065,"own_change_pct":-0.803958,"rel_strength_pct":{"SPY":-0.798088,"IWM":-0.646323}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.014456},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b28792060969","ts":"2026-09-21T13:44:36.475021+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 435.5s, plan says PASS; stop 8.91, target 9.00 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.00; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9135,"target":9.0,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":124.5,"room_to_5d_high_atr":-0.78},"price":9.0,"vwap":8.9591,"ext_from_open_pct":-0.22,"max_ext_allowed_pct":4.0,"volume_pace":3.216,"trend":"flat","recent_slope_pct":-0.0038,"volatility":"medium"},"price":9.0,"volume":{"bars":14,"last_bar_volume":96759.0,"baseline_avg":81724.307692,"bar_rvol":1.183968,"raw_accel":3.402739,"smooth_accel":1.048722,"accel_momentum":0.39456,"rvol_3bar":[0.580471,0.253474,1.183968],"trend_3bar":"MIXED","projected_rvol":0.323701},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":2500.0,"sell_vol":3492.0,"unclassified_vol":0.0,"imbalance":-0.165554,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":0.161825},"context":{"vwap":8.958286,"price_vs_vwap_pct":0.465645,"ema9":8.998718,"ema20":8.96437,"ema_stack":true,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.717044,"dist_to_hod_atr":0.678714,"atr":0.095769,"spread_atr":0.104418,"own_change_pct":0.780379,"rel_strength_pct":{"SPY":0.786249,"IWM":0.938014}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.196011},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d242b83ecb85","ts":"2026-09-21T13:44:46.527010+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.10% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":2.53,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.18,"vwap":7.9924,"ext_from_open_pct":2.12,"max_ext_allowed_pct":5.0,"volume_pace":10.631,"trend":"flat","recent_slope_pct":0.1632,"volatility":"unknown"},"price":8.18,"volume":{"bars":14,"last_bar_volume":4877.0,"baseline_avg":17251.230769,"bar_rvol":0.282704,"raw_accel":0.130818,"smooth_accel":-0.486323,"accel_momentum":0.266262,"rvol_3bar":[0.039993,0.216643,0.282704],"trend_3bar":"ACCELERATING","projected_rvol":0.791256},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":6743.0,"sell_vol":2087.0,"unclassified_vol":0.0,"imbalance":0.527293,"bid":8.15,"ask":8.24,"spread_pct":1.098231,"quote_size_imbalance":null,"quote_age_s":0.652516},"context":{"vwap":7.985211,"price_vs_vwap_pct":2.43937,"ema9":8.04648,"ema20":7.998835,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-0.848485,"dist_to_hod_atr":0.250691,"atr":0.279228,"spread_atr":0.322317,"own_change_pct":-0.803958,"rel_strength_pct":{"SPY":-0.798088,"IWM":-0.646323}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.149068},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"53ea7a1252bc","ts":"2026-09-21T13:44:51.553271+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.82,"target":9.09,"target_label":"range_20d_high","reward_risk":2.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.1619,"vwap":7.9927,"ext_from_open_pct":1.9,"max_ext_allowed_pct":5.0,"volume_pace":10.611,"trend":"flat","recent_slope_pct":0.1185,"volatility":"unknown"},"price":8.1619,"volume":{"bars":14,"last_bar_volume":4877.0,"baseline_avg":17251.230769,"bar_rvol":0.282704,"raw_accel":0.130818,"smooth_accel":-0.486323,"accel_momentum":0.266262,"rvol_3bar":[0.039993,0.216643,0.282704],"trend_3bar":"ACCELERATING","projected_rvol":0.775504},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":6751.0,"sell_vol":2853.0,"unclassified_vol":0.0,"imbalance":0.405873,"bid":8.2,"ask":8.24,"spread_pct":0.486618,"quote_size_imbalance":null,"quote_age_s":0.281269},"context":{"vwap":7.985211,"price_vs_vwap_pct":2.212701,"ema9":8.04648,"ema20":7.998835,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":-1.067879,"dist_to_hod_atr":0.315512,"atr":0.279228,"spread_atr":0.143252,"own_change_pct":-0.803958,"rel_strength_pct":{"SPY":-0.798088,"IWM":-0.646323}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.114742},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fbfa472e907a","ts":"2026-09-21T13:44:51.553271+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 450.6s, plan says WATCH; stop 8.92, target 9.02 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.02; breakout: 1-min close > 9.07 on >= 124197 sh","plan":{"state":"WATCH","setup":"","stop":8.92,"target":9.015,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":8.9596,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":5.0,"volume_pace":3.187,"trend":"flat","recent_slope_pct":0.0295,"volatility":"medium"},"price":9.015,"volume":{"bars":14,"last_bar_volume":96759.0,"baseline_avg":81724.307692,"bar_rvol":1.183968,"raw_accel":3.402739,"smooth_accel":1.048722,"accel_momentum":0.39456,"rvol_3bar":[0.580471,0.253474,1.183968],"trend_3bar":"MIXED","projected_rvol":0.360471},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":9651.0,"sell_vol":4312.0,"unclassified_vol":0.0,"imbalance":0.382368,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.54486},"context":{"vwap":8.958286,"price_vs_vwap_pct":0.633087,"ema9":8.998718,"ema20":8.96437,"ema_stack":true,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.551572,"dist_to_hod_atr":0.522088,"atr":0.095769,"spread_atr":0.104418,"own_change_pct":0.780379,"rel_strength_pct":{"SPY":0.786249,"IWM":0.938014}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.452711},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1210b49ffe39","ts":"2026-09-21T13:44:56.580763+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 455.6s, plan says PASS; stop 8.92, target 9.01 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.01; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.92,"target":9.01,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":8.96,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":5.0,"volume_pace":3.189,"trend":"flat","recent_slope_pct":0.0184,"volatility":"medium"},"price":9.01,"volume":{"bars":14,"last_bar_volume":96759.0,"baseline_avg":81724.307692,"bar_rvol":1.183968,"raw_accel":3.402739,"smooth_accel":1.048722,"accel_momentum":0.39456,"rvol_3bar":[0.580471,0.253474,1.183968],"trend_3bar":"MIXED","projected_rvol":0.427498},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":14205.0,"sell_vol":6112.0,"unclassified_vol":0.0,"imbalance":0.398336,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":0.130103},"context":{"vwap":8.958286,"price_vs_vwap_pct":0.577273,"ema9":8.998718,"ema20":8.96437,"ema_stack":true,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.606729,"dist_to_hod_atr":0.574296,"atr":0.095769,"spread_atr":0.104418,"own_change_pct":0.780379,"rel_strength_pct":{"SPY":0.786249,"IWM":0.938014}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.471618},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3aba530c2ad2","ts":"2026-09-21T13:45:01.620163+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 779.4s, plan says WATCH; stop 5.59, target 6.07 (range_20d_high), R:R 4.21; breakout: 1-min close > 5.68 on >= 270919 sh","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":4.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.685,"vwap":5.608,"ext_from_open_pct":2.62,"max_ext_allowed_pct":3.0,"volume_pace":2.376,"trend":"flat","recent_slope_pct":0.153,"volatility":"unknown"},"price":5.685,"volume":{"bars":15,"last_bar_volume":263282.0,"baseline_avg":174707.785714,"bar_rvol":1.506985,"raw_accel":0.341455,"smooth_accel":0.423985,"accel_momentum":-0.601209,"rvol_3bar":[1.141685,1.134161,1.506985],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":16475.0,"sell_vol":23335.0,"unclassified_vol":0.0,"imbalance":-0.172319,"bid":5.68,"ask":5.69,"spread_pct":0.175901,"quote_size_imbalance":null,"quote_age_s":0.633053},"context":{"vwap":5.607905,"price_vs_vwap_pct":1.374756,"ema9":5.645044,"ema20":5.616549,"ema_stack":true,"ema_warm":false,"hod":5.7,"dist_to_hod_pct":-0.263158,"dist_to_hod_atr":0.332816,"atr":0.04507,"spread_atr":0.221877,"own_change_pct":1.160865,"rel_strength_pct":{"SPY":1.136083,"IWM":1.253717}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.259681},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cac0eb118b2f","ts":"2026-09-21T13:45:01.620163+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.25 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.1873,"target":5.315,"target_label":"prev_day_high","reward_risk":1.13,"pos_in_5d_range_pct":90.9,"room_to_5d_high_atr":0.29},"price":5.2473,"vwap":5.2519,"ext_from_open_pct":-1.37,"max_ext_allowed_pct":3.0,"volume_pace":0.431,"trend":"flat","recent_slope_pct":0.1965,"volatility":"medium"},"price":5.2473,"volume":{"bars":15,"last_bar_volume":17.0,"baseline_avg":2452.142857,"bar_rvol":0.006933,"raw_accel":-0.995101,"smooth_accel":2.087631,"accel_momentum":-0.259895,"rvol_3bar":[2.361838,1.461763,0.006933],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":10.0,"sell_vol":235.0,"unclassified_vol":0.0,"imbalance":-0.918367,"bid":5.28,"ask":5.31,"spread_pct":0.566572,"quote_size_imbalance":null,"quote_age_s":1.554277},"context":{"vwap":5.251959,"price_vs_vwap_pct":-0.08871,"ema9":5.254901,"ema20":5.251238,"ema_stack":false,"ema_warm":false,"hod":5.32,"dist_to_hod_pct":-1.366541,"dist_to_hod_atr":1.55418,"atr":0.046777,"spread_atr":0.64134,"own_change_pct":1.24283,"rel_strength_pct":{"SPY":1.218047,"IWM":1.335682}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.006367},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"6be3583d8d6f","ts":"2026-09-21T13:45:11.895688+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9102,"target":8.9967,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":124.2,"room_to_5d_high_atr":-0.77},"price":8.9967,"vwap":8.9617,"ext_from_open_pct":-0.26,"max_ext_allowed_pct":5.0,"volume_pace":3.296,"trend":"flat","recent_slope_pct":-0.0461,"volatility":"medium"},"price":8.9967,"volume":{"bars":15,"last_bar_volume":33018.0,"baseline_avg":82798.214286,"bar_rvol":0.398777,"raw_accel":-0.65876,"smooth_accel":0.433075,"accel_momentum":-0.615647,"rvol_3bar":[0.253474,1.183968,0.398777],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":181,"trade_rate":6.033333,"buy_vol":46568.0,"sell_vol":23498.0,"unclassified_vol":0.0,"imbalance":0.329261,"bid":8.99,"ask":9.0,"spread_pct":0.111173,"quote_size_imbalance":null,"quote_age_s":0.31539},"context":{"vwap":8.95993,"price_vs_vwap_pct":0.410384,"ema9":8.999975,"ema20":8.96824,"ema_stack":false,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.753447,"dist_to_hod_atr":0.739577,"atr":0.09235,"spread_atr":0.108284,"own_change_pct":0.334262,"rel_strength_pct":{"SPY":0.309479,"IWM":0.427114}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.131302},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"22c6f1baff95","ts":"2026-09-21T13:45:11.895688+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7346,"target":8.95,"target_label":"premarket_high","reward_risk":0.53,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.37},"price":8.875,"vwap":8.8732,"ext_from_open_pct":1.66,"max_ext_allowed_pct":4.0,"volume_pace":3.414,"trend":"flat","recent_slope_pct":-0.1349,"volatility":"high"},"price":8.875,"volume":{"bars":15,"last_bar_volume":102416.0,"baseline_avg":30001.714286,"bar_rvol":3.413672,"raw_accel":2.081756,"smooth_accel":4.753117,"accel_momentum":3.536285,"rvol_3bar":[2.006597,1.116957,3.413672],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":976,"trade_rate":32.533333,"buy_vol":62418.0,"sell_vol":42865.0,"unclassified_vol":0.0,"imbalance":0.185718,"bid":8.86,"ask":8.89,"spread_pct":0.338028,"quote_size_imbalance":null,"quote_age_s":0.01454},"context":{"vwap":8.874034,"price_vs_vwap_pct":0.010888,"ema9":8.911581,"ema20":8.880487,"ema_stack":false,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-2.149945,"dist_to_hod_atr":1.468923,"atr":0.13275,"spread_atr":0.225988,"own_change_pct":-0.893855,"rel_strength_pct":{"SPY":-0.918637,"IWM":-0.801003}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.633982},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f84352fff913","ts":"2026-09-21T13:45:11.895688+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 789.7s, plan says PASS; stop 5.59, target 6.07 (range_20d_high), R:R 4.68; target 0.39 away > ~0.37 reachable in 370 min","plan":{"state":"PASS","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":4.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.6774,"vwap":5.6083,"ext_from_open_pct":2.48,"max_ext_allowed_pct":3.0,"volume_pace":2.36,"trend":"flat","recent_slope_pct":0.1262,"volatility":"unknown"},"price":5.6774,"volume":{"bars":15,"last_bar_volume":263282.0,"baseline_avg":174707.785714,"bar_rvol":1.506985,"raw_accel":0.341455,"smooth_accel":0.423985,"accel_momentum":-0.601209,"rvol_3bar":[1.141685,1.134161,1.506985],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":26550.0,"sell_vol":16389.0,"unclassified_vol":0.0,"imbalance":0.236638,"bid":5.68,"ask":5.69,"spread_pct":0.175901,"quote_size_imbalance":null,"quote_age_s":1.328826},"context":{"vwap":5.607905,"price_vs_vwap_pct":1.239233,"ema9":5.645044,"ema20":5.616549,"ema_stack":true,"ema_warm":false,"hod":5.7,"dist_to_hod_pct":-0.396491,"dist_to_hod_atr":0.501442,"atr":0.04507,"spread_atr":0.221877,"own_change_pct":1.160865,"rel_strength_pct":{"SPY":1.136083,"IWM":1.253717}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.35661},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cb11019f72e6","ts":"2026-09-21T13:45:16.924823+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.87","plan":{"state":"PASS","setup":"","stop":8.7246,"target":8.95,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.35},"price":8.865,"vwap":8.8728,"ext_from_open_pct":1.55,"max_ext_allowed_pct":4.0,"volume_pace":3.403,"trend":"flat","recent_slope_pct":-0.1574,"volatility":"high"},"price":8.865,"volume":{"bars":15,"last_bar_volume":102416.0,"baseline_avg":30001.714286,"bar_rvol":3.413672,"raw_accel":2.081756,"smooth_accel":4.753117,"accel_momentum":3.536285,"rvol_3bar":[2.006597,1.116957,3.413672],"trend_3bar":"MIXED","projected_rvol":10.157044},"flow":{"window_s":30,"trades":987,"trade_rate":32.9,"buy_vol":62499.0,"sell_vol":44195.0,"unclassified_vol":0.0,"imbalance":0.171556,"bid":8.85,"ask":8.88,"spread_pct":0.338409,"quote_size_imbalance":null,"quote_age_s":0.305087},"context":{"vwap":8.874034,"price_vs_vwap_pct":-0.101801,"ema9":8.911581,"ema20":8.880487,"ema_stack":false,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-2.260198,"dist_to_hod_atr":1.544253,"atr":0.13275,"spread_atr":0.225988,"own_change_pct":-0.893855,"rel_strength_pct":{"SPY":-0.918637,"IWM":-0.801003}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.585636},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a4621d0cd35f","ts":"2026-09-21T13:45:21.962320+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9165,"target":9.003,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":124.8,"room_to_5d_high_atr":-0.79},"price":9.003,"vwap":8.9623,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":4.0,"volume_pace":3.281,"trend":"flat","recent_slope_pct":-0.0322,"volatility":"medium"},"price":9.003,"volume":{"bars":15,"last_bar_volume":33018.0,"baseline_avg":82798.214286,"bar_rvol":0.398777,"raw_accel":-0.65876,"smooth_accel":0.433075,"accel_momentum":-0.615647,"rvol_3bar":[0.253474,1.183968,0.398777],"trend_3bar":"MIXED","projected_rvol":2.269549},"flow":{"window_s":30,"trades":216,"trade_rate":7.2,"buy_vol":47358.0,"sell_vol":29132.0,"unclassified_vol":0.0,"imbalance":0.23828,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":0.299691},"context":{"vwap":8.95993,"price_vs_vwap_pct":0.480697,"ema9":8.999975,"ema20":8.96824,"ema_stack":true,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.683949,"dist_to_hod_atr":0.671358,"atr":0.09235,"spread_atr":0.108284,"own_change_pct":0.334262,"rel_strength_pct":{"SPY":0.309479,"IWM":0.427114}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.09502},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c1efe50a5468","ts":"2026-09-21T13:45:21.962320+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 799.7s, plan says WATCH; stop 5.59, target 6.07 (range_20d_high), R:R 3.94; breakout: 1-min close > 5.68 on >= 270919 sh","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.94,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.69,"vwap":5.6088,"ext_from_open_pct":2.71,"max_ext_allowed_pct":4.0,"volume_pace":2.347,"trend":"flat","recent_slope_pct":0.1706,"volatility":"unknown"},"price":5.69,"volume":{"bars":15,"last_bar_volume":263282.0,"baseline_avg":174707.785714,"bar_rvol":1.506985,"raw_accel":0.341455,"smooth_accel":0.423985,"accel_momentum":-0.601209,"rvol_3bar":[1.141685,1.134161,1.506985],"trend_3bar":"MIXED","projected_rvol":0.50291},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":27225.0,"sell_vol":10931.0,"unclassified_vol":0.0,"imbalance":0.427036,"bid":5.69,"ask":5.7,"spread_pct":0.175593,"quote_size_imbalance":null,"quote_age_s":0.77788},"context":{"vwap":5.607905,"price_vs_vwap_pct":1.463916,"ema9":5.645044,"ema20":5.616549,"ema_stack":true,"ema_warm":false,"hod":5.7,"dist_to_hod_pct":-0.175439,"dist_to_hod_atr":0.221877,"atr":0.04507,"spread_atr":0.221877,"own_change_pct":1.160865,"rel_strength_pct":{"SPY":1.136083,"IWM":1.253717}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.643537},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"80a18908512c","ts":"2026-09-21T13:45:27.022450+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.1s / 18s","plan":{"state":"WATCH","setup":"","stop":8.92,"target":9.015,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":8.9628,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":5.0,"volume_pace":3.289,"trend":"flat","recent_slope_pct":-0.0055,"volatility":"medium"},"price":9.015,"volume":{"bars":15,"last_bar_volume":33018.0,"baseline_avg":82798.214286,"bar_rvol":0.398777,"raw_accel":-0.65876,"smooth_accel":0.433075,"accel_momentum":-0.615647,"rvol_3bar":[0.253474,1.183968,0.398777],"trend_3bar":"MIXED","projected_rvol":2.11608},"flow":{"window_s":30,"trades":214,"trade_rate":7.133333,"buy_vol":52736.0,"sell_vol":26245.0,"unclassified_vol":0.0,"imbalance":0.33541,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.465725},"context":{"vwap":8.95993,"price_vs_vwap_pct":0.614627,"ema9":8.999975,"ema20":8.96824,"ema_stack":true,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.551572,"dist_to_hod_atr":0.541418,"atr":0.09235,"spread_atr":0.108284,"own_change_pct":0.334262,"rel_strength_pct":{"SPY":0.309479,"IWM":0.427114}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.133754},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cfbb193670c4","ts":"2026-09-21T13:45:32.051380+00:00","symbol":"CTKB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.2081,"target":5.48,"target_label":"premarket_high","reward_risk":2.13,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2522,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.418,"trend":"flat","recent_slope_pct":0.3772,"volatility":"medium"},"price":5.295,"volume":{"bars":15,"last_bar_volume":17.0,"baseline_avg":2452.142857,"bar_rvol":0.006933,"raw_accel":-0.995101,"smooth_accel":2.087631,"accel_momentum":-0.259895,"rvol_3bar":[2.361838,1.461763,0.006933],"trend_3bar":"DECELERATING","projected_rvol":0.263377},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":10.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-0.818182,"bid":5.28,"ask":5.31,"spread_pct":0.566572,"quote_size_imbalance":null,"quote_age_s":7.019593},"context":{"vwap":5.251959,"price_vs_vwap_pct":0.819523,"ema9":5.254901,"ema20":5.251238,"ema_stack":true,"ema_warm":false,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":0.53445,"atr":0.046777,"spread_atr":0.64134,"own_change_pct":1.24283,"rel_strength_pct":{"SPY":1.218047,"IWM":1.335682}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.005672},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"7f89c9a19352","ts":"2026-09-21T13:45:37.084009+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7396,"target":8.95,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":128.4,"room_to_5d_high_atr":-0.37},"price":8.88,"vwap":8.8735,"ext_from_open_pct":1.72,"max_ext_allowed_pct":5.0,"volume_pace":3.335,"trend":"flat","recent_slope_pct":-0.1236,"volatility":"high"},"price":8.88,"volume":{"bars":15,"last_bar_volume":102416.0,"baseline_avg":30001.714286,"bar_rvol":3.413672,"raw_accel":2.081756,"smooth_accel":4.753117,"accel_momentum":3.536285,"rvol_3bar":[2.006597,1.116957,3.413672],"trend_3bar":"MIXED","projected_rvol":4.687521},"flow":{"window_s":30,"trades":786,"trade_rate":26.2,"buy_vol":48228.0,"sell_vol":36177.0,"unclassified_vol":0.0,"imbalance":0.142776,"bid":8.85,"ask":8.88,"spread_pct":0.338409,"quote_size_imbalance":null,"quote_age_s":8.036235},"context":{"vwap":8.874034,"price_vs_vwap_pct":0.067232,"ema9":8.911581,"ema20":8.880487,"ema_stack":false,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-2.094818,"dist_to_hod_atr":1.431259,"atr":0.13275,"spread_atr":0.225988,"own_change_pct":-0.893855,"rel_strength_pct":{"SPY":-0.918637,"IWM":-0.801003}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.48739},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"95f953bcd5f6","ts":"2026-09-21T13:45:47.167371+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7101,"vwap":5.6142,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":2.431,"trend":"flat","recent_slope_pct":0.2413,"volatility":"unknown"},"price":5.7101,"volume":{"bars":15,"last_bar_volume":263282.0,"baseline_avg":174707.785714,"bar_rvol":1.506985,"raw_accel":0.341455,"smooth_accel":0.423985,"accel_momentum":-0.601209,"rvol_3bar":[1.141685,1.134161,1.506985],"trend_3bar":"MIXED","projected_rvol":1.512074},"flow":{"window_s":30,"trades":227,"trade_rate":7.566667,"buy_vol":128302.0,"sell_vol":61549.0,"unclassified_vol":0.0,"imbalance":0.351607,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.07941},"context":{"vwap":5.607905,"price_vs_vwap_pct":1.822338,"ema9":5.645044,"ema20":5.616549,"ema_stack":true,"ema_warm":false,"hod":5.7,"dist_to_hod_pct":0.177193,"dist_to_hod_atr":-0.224096,"atr":0.04507,"spread_atr":0.221877,"own_change_pct":1.160865,"rel_strength_pct":{"SPY":1.136083,"IWM":1.253717}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.529867},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2c68bf9c8b94","ts":"2026-09-21T13:45:52.199684+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.38x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":10.6425,"target":11.0,"target_label":"premarket_high","reward_risk":2.33,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.75,"vwap":10.7092,"ext_from_open_pct":0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.377,"trend":"flat","recent_slope_pct":0.028,"volatility":"unknown"},"price":10.75,"volume":{"bars":15,"last_bar_volume":35905.0,"baseline_avg":77108.357143,"bar_rvol":0.465643,"raw_accel":0.249435,"smooth_accel":-0.137542,"accel_momentum":0.004149,"rvol_3bar":[0.551897,0.355527,0.465643],"trend_3bar":"MIXED","projected_rvol":1.407611},"flow":{"window_s":30,"trades":277,"trade_rate":9.233333,"buy_vol":30677.0,"sell_vol":29126.0,"unclassified_vol":0.0,"imbalance":0.025935,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":0.251425},"context":{"vwap":10.707411,"price_vs_vwap_pct":0.397749,"ema9":10.715061,"ema20":10.702252,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.738689,"dist_to_hod_atr":0.924408,"atr":0.086542,"spread_atr":0.115551,"own_change_pct":-0.55814,"rel_strength_pct":{"SPY":-0.582922,"IWM":-0.465287}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.012077},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8b0c175ddf5b","ts":"2026-09-21T13:45:57.234514+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.38x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":10.6375,"target":11.0,"target_label":"premarket_high","reward_risk":2.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.745,"vwap":10.7092,"ext_from_open_pct":0.42,"max_ext_allowed_pct":3.0,"volume_pace":0.377,"trend":"flat","recent_slope_pct":0.0187,"volatility":"unknown"},"price":10.745,"volume":{"bars":15,"last_bar_volume":35905.0,"baseline_avg":77108.357143,"bar_rvol":0.465643,"raw_accel":0.249435,"smooth_accel":-0.137542,"accel_momentum":0.004149,"rvol_3bar":[0.551897,0.355527,0.465643],"trend_3bar":"MIXED","projected_rvol":1.384405},"flow":{"window_s":30,"trades":261,"trade_rate":8.7,"buy_vol":30596.0,"sell_vol":24783.0,"unclassified_vol":0.0,"imbalance":0.104968,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":0.70104},"context":{"vwap":10.707411,"price_vs_vwap_pct":0.351052,"ema9":10.715061,"ema20":10.702252,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.784857,"dist_to_hod_atr":0.982183,"atr":0.086542,"spread_atr":0.115551,"own_change_pct":-0.55814,"rel_strength_pct":{"SPY":-0.582922,"IWM":-0.465287}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.048877},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4984bdfcb2e5","ts":"2026-09-21T13:46:02.268187+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3897,"target":8.82,"target_label":"prev_day_high","reward_risk":1.6,"pos_in_5d_range_pct":50.7,"room_to_5d_high_atr":0.83},"price":8.555,"vwap":8.5293,"ext_from_open_pct":-1.89,"max_ext_allowed_pct":3.0,"volume_pace":1.923,"trend":"flat","recent_slope_pct":0.2556,"volatility":"medium"},"price":8.555,"volume":{"bars":16,"last_bar_volume":20526.0,"baseline_avg":56792.933333,"bar_rvol":0.361418,"raw_accel":0.445673,"smooth_accel":-0.333384,"accel_momentum":0.047067,"rvol_3bar":[0.243538,0.125035,0.361418],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":3589.0,"sell_vol":12507.0,"unclassified_vol":0.0,"imbalance":-0.554051,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":0.070919},"context":{"vwap":8.529328,"price_vs_vwap_pct":0.300981,"ema9":8.502935,"ema20":8.515186,"ema_stack":false,"ema_warm":false,"hod":8.74,"dist_to_hod_pct":-2.116705,"dist_to_hod_atr":2.062665,"atr":0.08969,"spread_atr":0.111495,"own_change_pct":0.64744,"rel_strength_pct":{"SPY":0.58613,"IWM":0.747296}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.200244},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1808fc22e9ef","ts":"2026-09-21T13:46:02.268187+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":2.92,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.715,"vwap":5.6147,"ext_from_open_pct":3.16,"max_ext_allowed_pct":3.0,"volume_pace":2.403,"trend":"flat","recent_slope_pct":0.299,"volatility":"unknown"},"price":5.715,"volume":{"bars":16,"last_bar_volume":218239.0,"baseline_avg":180612.733333,"bar_rvol":1.208326,"raw_accel":-0.171083,"smooth_accel":0.368183,"accel_momentum":-0.055802,"rvol_3bar":[1.134161,1.506985,1.208326],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":15875.0,"sell_vol":42099.0,"unclassified_vol":0.0,"imbalance":-0.452341,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.70708},"context":{"vwap":5.614602,"price_vs_vwap_pct":1.788165,"ema9":5.659035,"ema20":5.625925,"ema_stack":true,"ema_warm":false,"hod":5.72,"dist_to_hod_pct":-0.087413,"dist_to_hod_atr":0.108073,"atr":0.046265,"spread_atr":0.216146,"own_change_pct":1.419698,"rel_strength_pct":{"SPY":1.358389,"IWM":1.519555}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.546575},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cd759576d172","ts":"2026-09-21T13:46:07.325243+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.51 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.3897,"target":8.82,"target_label":"prev_day_high","reward_risk":2.44,"pos_in_5d_range_pct":45.2,"room_to_5d_high_atr":0.92},"price":8.5148,"vwap":8.5293,"ext_from_open_pct":-2.35,"max_ext_allowed_pct":3.0,"volume_pace":1.915,"trend":"flat","recent_slope_pct":0.1614,"volatility":"medium"},"price":8.5148,"volume":{"bars":16,"last_bar_volume":20526.0,"baseline_avg":56792.933333,"bar_rvol":0.361418,"raw_accel":0.445673,"smooth_accel":-0.333384,"accel_momentum":0.047067,"rvol_3bar":[0.243538,0.125035,0.361418],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":2494.0,"sell_vol":12708.0,"unclassified_vol":0.0,"imbalance":-0.671885,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":2.101878},"context":{"vwap":8.529328,"price_vs_vwap_pct":-0.170334,"ema9":8.502935,"ema20":8.515186,"ema_stack":false,"ema_warm":false,"hod":8.74,"dist_to_hod_pct":-2.576659,"dist_to_hod_atr":2.510876,"atr":0.08969,"spread_atr":0.111495,"own_change_pct":0.64744,"rel_strength_pct":{"SPY":0.58613,"IWM":0.747296}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.242832},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"223b8f9862a3","ts":"2026-09-21T13:46:07.325243+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.27,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.705,"vwap":5.6153,"ext_from_open_pct":2.98,"max_ext_allowed_pct":3.0,"volume_pace":2.409,"trend":"flat","recent_slope_pct":0.2639,"volatility":"unknown"},"price":5.705,"volume":{"bars":16,"last_bar_volume":218239.0,"baseline_avg":180612.733333,"bar_rvol":1.208326,"raw_accel":-0.171083,"smooth_accel":0.368183,"accel_momentum":-0.055802,"rvol_3bar":[1.134161,1.506985,1.208326],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":28766.0,"sell_vol":50331.0,"unclassified_vol":0.0,"imbalance":-0.27264,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":0.158478},"context":{"vwap":5.614602,"price_vs_vwap_pct":1.610058,"ema9":5.659035,"ema20":5.625925,"ema_stack":true,"ema_warm":false,"hod":5.72,"dist_to_hod_pct":-0.262238,"dist_to_hod_atr":0.324219,"atr":0.046265,"spread_atr":0.216146,"own_change_pct":1.419698,"rel_strength_pct":{"SPY":1.358389,"IWM":1.519555}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.329438},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9666ce2e4410","ts":"2026-09-21T13:46:12.351506+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3897,"target":8.82,"target_label":"prev_day_high","reward_risk":1.7,"pos_in_5d_range_pct":49.8,"room_to_5d_high_atr":0.84},"price":8.5489,"vwap":8.5293,"ext_from_open_pct":-1.96,"max_ext_allowed_pct":3.0,"volume_pace":1.905,"trend":"flat","recent_slope_pct":0.2413,"volatility":"medium"},"price":8.5489,"volume":{"bars":16,"last_bar_volume":20526.0,"baseline_avg":56792.933333,"bar_rvol":0.361418,"raw_accel":0.445673,"smooth_accel":-0.333384,"accel_momentum":0.047067,"rvol_3bar":[0.243538,0.125035,0.361418],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":2616.0,"sell_vol":10143.0,"unclassified_vol":0.0,"imbalance":-0.589937,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":1.806597},"context":{"vwap":8.529328,"price_vs_vwap_pct":0.229463,"ema9":8.502935,"ema20":8.515186,"ema_stack":false,"ema_warm":false,"hod":8.74,"dist_to_hod_pct":-2.186499,"dist_to_hod_atr":2.130677,"atr":0.08969,"spread_atr":0.111495,"own_change_pct":0.64744,"rel_strength_pct":{"SPY":0.58613,"IWM":0.747296}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.213214},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"46f10f89f42c","ts":"2026-09-21T13:46:12.351506+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.85 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7046,"target":8.95,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":123.6,"room_to_5d_high_atr":-0.31},"price":8.845,"vwap":8.8758,"ext_from_open_pct":1.32,"max_ext_allowed_pct":4.0,"volume_pace":3.246,"trend":"flat","recent_slope_pct":-0.1923,"volatility":"high"},"price":8.845,"volume":{"bars":16,"last_bar_volume":90160.0,"baseline_avg":34829.333333,"bar_rvol":2.588623,"raw_accel":-0.119669,"smooth_accel":2.469501,"accel_momentum":-2.283616,"rvol_3bar":[1.116957,3.413672,2.588623],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":975.0,"sell_vol":4432.0,"unclassified_vol":0.0,"imbalance":-0.639356,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.140386},"context":{"vwap":8.875844,"price_vs_vwap_pct":-0.347505,"ema9":8.911065,"ema20":8.883203,"ema_stack":false,"ema_warm":false,"hod":9.07,"dist_to_hod_pct":-2.480706,"dist_to_hod_atr":1.734817,"atr":0.129697,"spread_atr":0.077103,"own_change_pct":0.101124,"rel_strength_pct":{"SPY":0.039814,"IWM":0.20098}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.655052},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e45e80add1ad","ts":"2026-09-21T13:46:12.351506+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.71,"vwap":5.6155,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":2.404,"trend":"flat","recent_slope_pct":0.2814,"volatility":"unknown"},"price":5.71,"volume":{"bars":16,"last_bar_volume":218239.0,"baseline_avg":180612.733333,"bar_rvol":1.208326,"raw_accel":-0.171083,"smooth_accel":0.368183,"accel_momentum":-0.055802,"rvol_3bar":[1.134161,1.506985,1.208326],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":149,"trade_rate":4.966667,"buy_vol":33841.0,"sell_vol":51206.0,"unclassified_vol":0.0,"imbalance":-0.204181,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":0.127002},"context":{"vwap":5.614602,"price_vs_vwap_pct":1.699111,"ema9":5.659035,"ema20":5.625925,"ema_stack":true,"ema_warm":false,"hod":5.72,"dist_to_hod_pct":-0.174825,"dist_to_hod_atr":0.216146,"atr":0.046265,"spread_atr":0.216146,"own_change_pct":1.419698,"rel_strength_pct":{"SPY":1.358389,"IWM":1.519555}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.246717},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d10d4f7470d1","ts":"2026-09-21T13:46:17.388753+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.92,"target":9.0078,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.3,"room_to_5d_high_atr":-0.8},"price":9.0078,"vwap":8.9658,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":4.0,"volume_pace":3.225,"trend":"flat","recent_slope_pct":-0.0326,"volatility":"medium"},"price":9.0078,"volume":{"bars":16,"last_bar_volume":117155.0,"baseline_avg":79479.533333,"bar_rvol":1.474027,"raw_accel":2.548216,"smooth_accel":1.105222,"accel_momentum":0.672147,"rvol_3bar":[1.183968,0.398777,1.474027],"trend_3bar":"MIXED","projected_rvol":0.203567},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":15192.0,"sell_vol":14996.0,"unclassified_vol":0.0,"imbalance":0.006493,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":0.243207},"context":{"vwap":8.965603,"price_vs_vwap_pct":0.470655,"ema9":9.00698,"ema20":8.974598,"ema_stack":true,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.630998,"dist_to_hod_atr":0.632767,"atr":0.090397,"spread_atr":0.110624,"own_change_pct":0.202957,"rel_strength_pct":{"SPY":0.141647,"IWM":0.302813}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.00957},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a25620e03dc0","ts":"2026-09-21T13:46:17.388753+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7025,"vwap":5.616,"ext_from_open_pct":2.93,"max_ext_allowed_pct":3.0,"volume_pace":2.407,"trend":"flat","recent_slope_pct":0.2551,"volatility":"unknown"},"price":5.7025,"volume":{"bars":16,"last_bar_volume":218239.0,"baseline_avg":180612.733333,"bar_rvol":1.208326,"raw_accel":-0.171083,"smooth_accel":0.368183,"accel_momentum":-0.055802,"rvol_3bar":[1.134161,1.506985,1.208326],"trend_3bar":"MIXED","projected_rvol":1.007549},"flow":{"window_s":30,"trades":154,"trade_rate":5.133333,"buy_vol":28693.0,"sell_vol":34459.0,"unclassified_vol":0.0,"imbalance":-0.091304,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":1.654392},"context":{"vwap":5.614602,"price_vs_vwap_pct":1.565531,"ema9":5.659035,"ema20":5.625925,"ema_stack":true,"ema_warm":false,"hod":5.72,"dist_to_hod_pct":-0.305944,"dist_to_hod_atr":0.378256,"atr":0.046265,"spread_atr":0.216146,"own_change_pct":1.419698,"rel_strength_pct":{"SPY":1.358389,"IWM":1.519555}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.110324},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e2d418ef411c","ts":"2026-09-21T13:46:17.388753+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.40x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2081,"target":5.48,"target_label":"premarket_high","reward_risk":2.13,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2522,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.399,"trend":"flat","recent_slope_pct":0.3772,"volatility":"medium"},"price":5.295,"volume":{"bars":15,"last_bar_volume":17.0,"baseline_avg":2452.142857,"bar_rvol":0.006933,"raw_accel":-0.995101,"smooth_accel":2.087631,"accel_momentum":-0.259895,"rvol_3bar":[2.361838,1.461763,0.006933],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":0,"trade_rate":0.0,"buy_vol":0.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":null,"bid":5.28,"ask":5.31,"spread_pct":0.566572,"quote_size_imbalance":null,"quote_age_s":52.356966},"context":{"vwap":5.251959,"price_vs_vwap_pct":0.819523,"ema9":5.254901,"ema20":5.251238,"ema_stack":true,"ema_warm":false,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":0.53445,"atr":0.046777,"spread_atr":0.64134,"own_change_pct":1.24283,"rel_strength_pct":{"SPY":1.18152,"IWM":1.342686}},"vas":{"raw":null,"score":null,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":null},"missing":["imbalance"],"volume_pressure":null},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread","not_decelerating"],"missing":["vas","imbalance"],"rules":{"vas":null,"imbalance":null,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"7e9472304f7e","ts":"2026-09-21T13:46:22.414871+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.92,"target":9.02,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.02,"vwap":8.9662,"ext_from_open_pct":0.0,"max_ext_allowed_pct":5.0,"volume_pace":3.234,"trend":"flat","recent_slope_pct":-0.0055,"volatility":"medium"},"price":9.02,"volume":{"bars":16,"last_bar_volume":117155.0,"baseline_avg":79479.533333,"bar_rvol":1.474027,"raw_accel":2.548216,"smooth_accel":1.105222,"accel_momentum":0.672147,"rvol_3bar":[1.183968,0.398777,1.474027],"trend_3bar":"MIXED","projected_rvol":0.510338},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":25102.0,"sell_vol":7566.0,"unclassified_vol":0.0,"imbalance":0.536794,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.288018},"context":{"vwap":8.965603,"price_vs_vwap_pct":0.606731,"ema9":9.00698,"ema20":8.974598,"ema_stack":true,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.496415,"dist_to_hod_atr":0.497807,"atr":0.090397,"spread_atr":0.110624,"own_change_pct":0.202957,"rel_strength_pct":{"SPY":0.141647,"IWM":0.302813}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.79125},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7f109390e2e6","ts":"2026-09-21T13:46:22.414871+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":2.92,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.715,"vwap":5.6164,"ext_from_open_pct":3.16,"max_ext_allowed_pct":3.0,"volume_pace":2.405,"trend":"flat","recent_slope_pct":0.299,"volatility":"unknown"},"price":5.715,"volume":{"bars":16,"last_bar_volume":218239.0,"baseline_avg":180612.733333,"bar_rvol":1.208326,"raw_accel":-0.171083,"smooth_accel":0.368183,"accel_momentum":-0.055802,"rvol_3bar":[1.134161,1.506985,1.208326],"trend_3bar":"MIXED","projected_rvol":0.979377},"flow":{"window_s":30,"trades":183,"trade_rate":6.1,"buy_vol":36677.0,"sell_vol":32574.0,"unclassified_vol":0.0,"imbalance":0.059248,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":2.017789},"context":{"vwap":5.614602,"price_vs_vwap_pct":1.788165,"ema9":5.659035,"ema20":5.625925,"ema_stack":true,"ema_warm":false,"hod":5.72,"dist_to_hod_pct":-0.087413,"dist_to_hod_atr":0.108073,"atr":0.046265,"spread_atr":0.216146,"own_change_pct":1.419698,"rel_strength_pct":{"SPY":1.358389,"IWM":1.519555}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.071591},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"75454fcb8cb6","ts":"2026-09-21T13:46:27.444542+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.27,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.705,"vwap":5.6194,"ext_from_open_pct":2.98,"max_ext_allowed_pct":3.0,"volume_pace":2.489,"trend":"flat","recent_slope_pct":0.2639,"volatility":"unknown"},"price":5.705,"volume":{"bars":16,"last_bar_volume":218239.0,"baseline_avg":180612.733333,"bar_rvol":1.208326,"raw_accel":-0.171083,"smooth_accel":0.368183,"accel_momentum":-0.055802,"rvol_3bar":[1.134161,1.506985,1.208326],"trend_3bar":"MIXED","projected_rvol":2.251461},"flow":{"window_s":30,"trades":313,"trade_rate":10.433333,"buy_vol":48720.0,"sell_vol":138262.0,"unclassified_vol":0.0,"imbalance":-0.47888,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":0.465162},"context":{"vwap":5.614602,"price_vs_vwap_pct":1.610058,"ema9":5.659035,"ema20":5.625925,"ema_stack":true,"ema_warm":false,"hod":5.72,"dist_to_hod_pct":-0.262238,"dist_to_hod_atr":0.324219,"atr":0.046265,"spread_atr":0.216146,"own_change_pct":1.419698,"rel_strength_pct":{"SPY":1.358389,"IWM":1.519555}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.578643},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"83f3a7a8067c","ts":"2026-09-21T13:46:57.599802+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.08% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":2.55,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3,"vwap":8.0406,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":11.339,"trend":"flat","recent_slope_pct":0.7578,"volatility":"unknown"},"price":8.3,"volume":{"bars":16,"last_bar_volume":25089.0,"baseline_avg":16103.066667,"bar_rvol":1.558026,"raw_accel":1.022817,"smooth_accel":6.533606,"accel_momentum":1.341646,"rvol_3bar":[0.282704,0.757789,1.558026],"trend_3bar":"ACCELERATING","projected_rvol":1.737706},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":7884.0,"sell_vol":2363.0,"unclassified_vol":0.0,"imbalance":0.538792,"bid":8.28,"ask":8.37,"spread_pct":1.081081,"quote_size_imbalance":null,"quote_age_s":0.167507},"context":{"vwap":8.015494,"price_vs_vwap_pct":3.549449,"ema9":8.116127,"ema20":8.042574,"ema_stack":true,"ema_warm":false,"hod":8.25,"dist_to_hod_pct":0.606061,"dist_to_hod_atr":-0.192035,"atr":0.260369,"spread_atr":0.345663,"own_change_pct":1.97896,"rel_strength_pct":{"SPY":1.917651,"IWM":2.078817}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.839452},"shadow":{"decision":"FAIL","failed":["spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"655087578d7e","ts":"2026-09-21T13:46:57.599802+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.3897,"target":8.82,"target_label":"prev_day_high","reward_risk":2.09,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":0.89},"price":8.5289,"vwap":8.5295,"ext_from_open_pct":-2.19,"max_ext_allowed_pct":3.0,"volume_pace":1.911,"trend":"flat","recent_slope_pct":0.1944,"volatility":"medium"},"price":8.5289,"volume":{"bars":16,"last_bar_volume":20526.0,"baseline_avg":56792.933333,"bar_rvol":0.361418,"raw_accel":0.445673,"smooth_accel":-0.333384,"accel_momentum":0.047067,"rvol_3bar":[0.243538,0.125035,0.361418],"trend_3bar":"MIXED","projected_rvol":0.821224},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":8152.0,"sell_vol":6369.0,"unclassified_vol":0.0,"imbalance":0.122788,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":1.844436},"context":{"vwap":8.529328,"price_vs_vwap_pct":-0.005022,"ema9":8.502935,"ema20":8.515186,"ema_stack":false,"ema_warm":false,"hod":8.74,"dist_to_hod_pct":-2.415332,"dist_to_hod_atr":2.353668,"atr":0.08969,"spread_atr":0.111495,"own_change_pct":0.64744,"rel_strength_pct":{"SPY":0.58613,"IWM":0.747296}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.044378},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8ffd7f4a914e","ts":"2026-09-21T13:47:02.623144+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.92,"target":9.025,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":126.8,"room_to_5d_high_atr":-0.85},"price":9.025,"vwap":8.9673,"ext_from_open_pct":0.06,"max_ext_allowed_pct":4.0,"volume_pace":3.168,"trend":"flat","recent_slope_pct":-0.0111,"volatility":"medium"},"price":9.025,"volume":{"bars":17,"last_bar_volume":41205.0,"baseline_avg":81834.25,"bar_rvol":0.503518,"raw_accel":-0.648286,"smooth_accel":0.119903,"accel_momentum":-0.985319,"rvol_3bar":[0.398777,1.474027,0.503518],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":9577.0,"sell_vol":4856.0,"unclassified_vol":0.0,"imbalance":0.327098,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":4.098506},"context":{"vwap":8.967314,"price_vs_vwap_pct":0.643287,"ema9":9.010584,"ema20":8.979398,"ema_stack":true,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.441258,"dist_to_hod_atr":0.460884,"atr":0.08679,"spread_atr":0.115221,"own_change_pct":0.166482,"rel_strength_pct":{"SPY":0.102564,"IWM":0.219052}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.164699},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"523d87436cfb","ts":"2026-09-21T13:47:07.651318+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":1.82,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.38,"vwap":8.0488,"ext_from_open_pct":4.62,"max_ext_allowed_pct":5.0,"volume_pace":11.49,"trend":"flat","recent_slope_pct":0.9947,"volatility":"unknown"},"price":8.38,"volume":{"bars":17,"last_bar_volume":27272.0,"baseline_avg":16664.6875,"bar_rvol":1.636514,"raw_accel":0.08701,"smooth_accel":5.709905,"accel_momentum":-0.823701,"rvol_3bar":[0.757789,1.558026,1.636514],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":9187.0,"sell_vol":2950.0,"unclassified_vol":0.0,"imbalance":0.513883,"bid":8.37,"ask":8.4,"spread_pct":0.357782,"quote_size_imbalance":null,"quote_age_s":0.758908},"context":{"vwap":8.042206,"price_vs_vwap_pct":4.200263,"ema9":8.160902,"ema20":8.0709,"ema_stack":true,"ema_warm":false,"hod":8.37,"dist_to_hod_pct":0.119474,"dist_to_hod_atr":-0.039384,"atr":0.253907,"spread_atr":0.118153,"own_change_pct":3.117002,"rel_strength_pct":{"SPY":3.053084,"IWM":3.169573}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.840977},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"90127e751c60","ts":"2026-09-21T13:47:07.651318+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.92,"target":9.065,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":8.9674,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":5.0,"volume_pace":3.158,"trend":"flat","recent_slope_pct":-0.0443,"volatility":"medium"},"price":9.01,"volume":{"bars":17,"last_bar_volume":41205.0,"baseline_avg":81834.25,"bar_rvol":0.503518,"raw_accel":-0.648286,"smooth_accel":0.119903,"accel_momentum":-0.985319,"rvol_3bar":[0.398777,1.474027,0.503518],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":10849.0,"sell_vol":5281.0,"unclassified_vol":0.0,"imbalance":0.345195,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":0.268436},"context":{"vwap":8.967314,"price_vs_vwap_pct":0.476013,"ema9":9.010584,"ema20":8.979398,"ema_stack":false,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.606729,"dist_to_hod_atr":0.633716,"atr":0.08679,"spread_atr":0.115221,"own_change_pct":0.166482,"rel_strength_pct":{"SPY":0.102564,"IWM":0.219052}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.173812},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"31b227a99a01","ts":"2026-09-21T13:47:07.651318+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3897,"target":8.82,"target_label":"prev_day_high","reward_risk":1.62,"pos_in_5d_range_pct":50.5,"room_to_5d_high_atr":0.83},"price":8.5537,"vwap":8.5295,"ext_from_open_pct":-1.91,"max_ext_allowed_pct":3.0,"volume_pace":1.895,"trend":"flat","recent_slope_pct":0.1011,"volatility":"medium"},"price":8.5537,"volume":{"bars":17,"last_bar_volume":44874.0,"baseline_avg":54526.25,"bar_rvol":0.82298,"raw_accel":1.186203,"smooth_accel":0.212591,"accel_momentum":0.545976,"rvol_3bar":[0.125035,0.361418,0.82298],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":5008.0,"sell_vol":5510.0,"unclassified_vol":0.0,"imbalance":-0.047728,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":1.8094},"context":{"vwap":8.529503,"price_vs_vwap_pct":0.283685,"ema9":8.508128,"ema20":8.516492,"ema_stack":false,"ema_warm":false,"hod":8.74,"dist_to_hod_pct":-2.131579,"dist_to_hod_atr":2.162386,"atr":0.086155,"spread_atr":0.11607,"own_change_pct":0.045748,"rel_strength_pct":{"SPY":-0.01817,"IWM":0.098319}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.039279},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"daf12967174e","ts":"2026-09-21T13:47:17.701219+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $8.01 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":1.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.385,"vwap":8.0519,"ext_from_open_pct":4.68,"max_ext_allowed_pct":4.0,"volume_pace":11.492,"trend":"flat","recent_slope_pct":1.0067,"volatility":"unknown"},"price":8.385,"volume":{"bars":17,"last_bar_volume":27272.0,"baseline_avg":16664.6875,"bar_rvol":1.636514,"raw_accel":0.08701,"smooth_accel":5.709905,"accel_momentum":-0.823701,"rvol_3bar":[0.757789,1.558026,1.636514],"trend_3bar":"ACCELERATING","projected_rvol":1.919892},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":6678.0,"sell_vol":3338.0,"unclassified_vol":0.0,"imbalance":0.333466,"bid":8.37,"ask":8.4,"spread_pct":0.357782,"quote_size_imbalance":null,"quote_age_s":10.808809},"context":{"vwap":8.042206,"price_vs_vwap_pct":4.262435,"ema9":8.160902,"ema20":8.0709,"ema_stack":true,"ema_warm":false,"hod":8.37,"dist_to_hod_pct":0.179211,"dist_to_hod_atr":-0.059077,"atr":0.253907,"spread_atr":0.118153,"own_change_pct":3.117002,"rel_strength_pct":{"SPY":3.053084,"IWM":3.169573}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.545723},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a34b7789b529","ts":"2026-09-21T13:47:17.701219+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9085,"target":9.065,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":124.1,"room_to_5d_high_atr":-0.77},"price":8.995,"vwap":8.9676,"ext_from_open_pct":-0.28,"max_ext_allowed_pct":4.0,"volume_pace":3.146,"trend":"flat","recent_slope_pct":-0.0776,"volatility":"medium"},"price":8.995,"volume":{"bars":17,"last_bar_volume":41205.0,"baseline_avg":81834.25,"bar_rvol":0.503518,"raw_accel":-0.648286,"smooth_accel":0.119903,"accel_momentum":-0.985319,"rvol_3bar":[0.398777,1.474027,0.503518],"trend_3bar":"MIXED","projected_rvol":0.427126},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":13080.0,"sell_vol":7637.0,"unclassified_vol":0.0,"imbalance":0.262731,"bid":8.99,"ask":9.0,"spread_pct":0.111173,"quote_size_imbalance":null,"quote_age_s":0.8418},"context":{"vwap":8.967314,"price_vs_vwap_pct":0.308739,"ema9":9.010584,"ema20":8.979398,"ema_stack":false,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.772201,"dist_to_hod_atr":0.806548,"atr":0.08679,"spread_atr":0.115221,"own_change_pct":0.166482,"rel_strength_pct":{"SPY":0.102564,"IWM":0.219052}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.13229},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cba1d8f6377e","ts":"2026-09-21T13:47:27.871477+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.15,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7084,"vwap":5.6228,"ext_from_open_pct":3.04,"max_ext_allowed_pct":3.0,"volume_pace":2.464,"trend":"flat","recent_slope_pct":0.1832,"volatility":"unknown"},"price":5.7084,"volume":{"bars":17,"last_bar_volume":327383.0,"baseline_avg":182964.375,"bar_rvol":1.789326,"raw_accel":0.500112,"smooth_accel":0.292782,"accel_momentum":-0.075401,"rvol_3bar":[1.506985,1.208326,1.789326],"trend_3bar":"MIXED","projected_rvol":0.186266},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":4037.0,"sell_vol":12746.0,"unclassified_vol":0.0,"imbalance":-0.518918,"bid":5.69,"ask":5.7,"spread_pct":0.175593,"quote_size_imbalance":null,"quote_age_s":1.662053},"context":{"vwap":5.622447,"price_vs_vwap_pct":1.528746,"ema9":5.667068,"ema20":5.632904,"ema_stack":true,"ema_warm":false,"hod":5.725,"dist_to_hod_pct":-0.289956,"dist_to_hod_atr":0.345399,"atr":0.04806,"spread_atr":0.208072,"own_change_pct":0.781609,"rel_strength_pct":{"SPY":0.717691,"IWM":0.83418}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.928514},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b6fe2fc30e69","ts":"2026-09-21T13:47:32.899286+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.695,"vwap":5.6229,"ext_from_open_pct":2.8,"max_ext_allowed_pct":3.0,"volume_pace":2.454,"trend":"flat","recent_slope_pct":0.1362,"volatility":"unknown"},"price":5.695,"volume":{"bars":17,"last_bar_volume":327383.0,"baseline_avg":182964.375,"bar_rvol":1.789326,"raw_accel":0.500112,"smooth_accel":0.292782,"accel_momentum":-0.075401,"rvol_3bar":[1.506985,1.208326,1.789326],"trend_3bar":"MIXED","projected_rvol":0.178732},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":3934.0,"sell_vol":11389.0,"unclassified_vol":0.0,"imbalance":-0.486524,"bid":5.69,"ask":5.7,"spread_pct":0.175593,"quote_size_imbalance":null,"quote_age_s":1.606486},"context":{"vwap":5.622447,"price_vs_vwap_pct":1.290415,"ema9":5.667068,"ema20":5.632904,"ema_stack":true,"ema_warm":false,"hod":5.725,"dist_to_hod_pct":-0.524017,"dist_to_hod_atr":0.624215,"atr":0.04806,"spread_atr":0.208072,"own_change_pct":0.781609,"rel_strength_pct":{"SPY":0.717691,"IWM":0.83418}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.870549},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9fae19152323","ts":"2026-09-21T13:47:37.924978+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":1.86,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.375,"vwap":8.0526,"ext_from_open_pct":4.56,"max_ext_allowed_pct":5.0,"volume_pace":11.302,"trend":"flat","recent_slope_pct":0.9827,"volatility":"unknown"},"price":8.375,"volume":{"bars":17,"last_bar_volume":27272.0,"baseline_avg":16664.6875,"bar_rvol":1.636514,"raw_accel":0.08701,"smooth_accel":5.709905,"accel_momentum":-0.823701,"rvol_3bar":[0.757789,1.558026,1.636514],"trend_3bar":"ACCELERATING","projected_rvol":0.969766},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":831.0,"sell_vol":2929.0,"unclassified_vol":0.0,"imbalance":-0.557979,"bid":8.35,"ask":8.4,"spread_pct":0.597015,"quote_size_imbalance":null,"quote_age_s":1.031687},"context":{"vwap":8.042206,"price_vs_vwap_pct":4.138091,"ema9":8.160902,"ema20":8.0709,"ema_stack":true,"ema_warm":false,"hod":8.37,"dist_to_hod_pct":0.059737,"dist_to_hod_atr":-0.019692,"atr":0.253907,"spread_atr":0.196922,"own_change_pct":3.117002,"rel_strength_pct":{"SPY":3.053084,"IWM":3.169573}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.91314},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"74a4e81ef21f","ts":"2026-09-21T13:47:42.973835+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.07% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":1.61,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.4107,"vwap":8.0579,"ext_from_open_pct":5.0,"max_ext_allowed_pct":4.0,"volume_pace":11.423,"trend":"flat","recent_slope_pct":1.0683,"volatility":"unknown"},"price":8.4107,"volume":{"bars":17,"last_bar_volume":27272.0,"baseline_avg":16664.6875,"bar_rvol":1.636514,"raw_accel":0.08701,"smooth_accel":5.709905,"accel_momentum":-0.823701,"rvol_3bar":[0.757789,1.558026,1.636514],"trend_3bar":"ACCELERATING","projected_rvol":1.253209},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":2546.0,"sell_vol":5771.0,"unclassified_vol":0.0,"imbalance":-0.38776,"bid":8.35,"ask":8.44,"spread_pct":1.072067,"quote_size_imbalance":null,"quote_age_s":1.123674},"context":{"vwap":8.042206,"price_vs_vwap_pct":4.581999,"ema9":8.160902,"ema20":8.0709,"ema_stack":true,"ema_warm":false,"hod":8.37,"dist_to_hod_pct":0.48626,"dist_to_hod_atr":-0.160295,"atr":0.253907,"spread_atr":0.35446,"own_change_pct":3.117002,"rel_strength_pct":{"SPY":3.053084,"IWM":3.169573}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.634575},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fdcb7410fefc","ts":"2026-09-21T13:47:53.054184+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.92,"target":9.0165,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":126.0,"room_to_5d_high_atr":-0.83},"price":9.0165,"vwap":8.9681,"ext_from_open_pct":-0.04,"max_ext_allowed_pct":5.0,"volume_pace":3.087,"trend":"flat","recent_slope_pct":-0.0299,"volatility":"medium"},"price":9.0165,"volume":{"bars":17,"last_bar_volume":41205.0,"baseline_avg":81834.25,"bar_rvol":0.503518,"raw_accel":-0.648286,"smooth_accel":0.119903,"accel_momentum":-0.985319,"rvol_3bar":[0.398777,1.474027,0.503518],"trend_3bar":"MIXED","projected_rvol":0.423074},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":17098.0,"sell_vol":1564.0,"unclassified_vol":0.0,"imbalance":0.832387,"bid":8.97,"ask":8.98,"spread_pct":0.111421,"quote_size_imbalance":null,"quote_age_s":1.062365},"context":{"vwap":8.967314,"price_vs_vwap_pct":0.548498,"ema9":9.010584,"ema20":8.979398,"ema_stack":true,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.535025,"dist_to_hod_atr":0.558822,"atr":0.08679,"spread_atr":0.115221,"own_change_pct":0.166482,"rel_strength_pct":{"SPY":0.102564,"IWM":0.219052}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.419121},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d43cf2e60ebf","ts":"2026-09-21T13:47:58.078444+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.8885,"target":8.995,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":122.3,"room_to_5d_high_atr":-0.71},"price":8.975,"vwap":8.9678,"ext_from_open_pct":-0.5,"max_ext_allowed_pct":5.0,"volume_pace":3.073,"trend":"flat","recent_slope_pct":-0.122,"volatility":"medium"},"price":8.975,"volume":{"bars":17,"last_bar_volume":41205.0,"baseline_avg":81834.25,"bar_rvol":0.503518,"raw_accel":-0.648286,"smooth_accel":0.119903,"accel_momentum":-0.985319,"rvol_3bar":[0.398777,1.474027,0.503518],"trend_3bar":"MIXED","projected_rvol":0.38929},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":17097.0,"sell_vol":493.0,"unclassified_vol":0.0,"imbalance":0.943945,"bid":8.97,"ask":8.98,"spread_pct":0.111421,"quote_size_imbalance":null,"quote_age_s":0.058587},"context":{"vwap":8.967314,"price_vs_vwap_pct":0.085706,"ema9":9.010584,"ema20":8.979398,"ema_stack":false,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.99283,"dist_to_hod_atr":1.03699,"atr":0.08679,"spread_atr":0.115221,"own_change_pct":0.166482,"rel_strength_pct":{"SPY":0.102564,"IWM":0.219052}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.475293},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6ffd0f1e24ca","ts":"2026-09-21T13:48:03.111406+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.07% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":1.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.4,"vwap":8.0631,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":11.394,"trend":"flat","recent_slope_pct":0.5649,"volatility":"unknown"},"price":8.4,"volume":{"bars":18,"last_bar_volume":19672.0,"baseline_avg":17288.647059,"bar_rvol":1.137857,"raw_accel":-0.278674,"smooth_accel":2.388672,"accel_momentum":-3.321233,"rvol_3bar":[1.558026,1.636514,1.137857],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":3650.0,"sell_vol":6242.0,"unclassified_vol":0.0,"imbalance":-0.26203,"bid":8.34,"ask":8.43,"spread_pct":1.073345,"quote_size_imbalance":null,"quote_age_s":0.451795},"context":{"vwap":8.06277,"price_vs_vwap_pct":4.182558,"ema9":8.206721,"ema20":8.101291,"ema_stack":true,"ema_warm":false,"hod":8.4399,"dist_to_hod_pct":-0.472754,"dist_to_hod_atr":0.161417,"atr":0.247185,"spread_atr":0.364099,"own_change_pct":3.580247,"rel_strength_pct":{"SPY":3.522843,"IWM":3.499562}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.298152},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9979efecd989","ts":"2026-09-21T13:48:03.111406+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.8836,"target":8.995,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":121.8,"room_to_5d_high_atr":-0.69},"price":8.9701,"vwap":8.968,"ext_from_open_pct":-0.55,"max_ext_allowed_pct":5.0,"volume_pace":3.059,"trend":"flat","recent_slope_pct":-0.1102,"volatility":"medium"},"price":8.9701,"volume":{"bars":18,"last_bar_volume":30840.0,"baseline_avg":79444.294118,"bar_rvol":0.388197,"raw_accel":-0.251547,"smooth_accel":0.246755,"accel_momentum":0.126852,"rvol_3bar":[1.474027,0.503518,0.388197],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":17122.0,"sell_vol":592.0,"unclassified_vol":0.0,"imbalance":0.93316,"bid":8.97,"ask":8.98,"spread_pct":0.111421,"quote_size_imbalance":null,"quote_age_s":0.060345},"context":{"vwap":8.968011,"price_vs_vwap_pct":0.023298,"ema9":9.009567,"ema20":8.981884,"ema_stack":false,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-1.046884,"dist_to_hod_atr":1.108769,"atr":0.08559,"spread_atr":0.116836,"own_change_pct":-0.160754,"rel_strength_pct":{"SPY":-0.218158,"IWM":-0.241439}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.36225},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"70582d06b0a3","ts":"2026-09-21T13:48:03.111406+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.8498,"target":8.28,"target_label":"ceiling","reward_risk":0.3,"pos_in_5d_range_pct":124.4,"room_to_5d_high_atr":-0.77},"price":8.18,"vwap":8.0928,"ext_from_open_pct":-0.12,"max_ext_allowed_pct":4.0,"volume_pace":1.873,"trend":"flat","recent_slope_pct":0.7099,"volatility":"high"},"price":8.18,"volume":{"bars":18,"last_bar_volume":18958.0,"baseline_avg":32497.411765,"bar_rvol":0.58337,"raw_accel":1.333478,"smooth_accel":-0.494414,"accel_momentum":0.127674,"rvol_3bar":[0.473868,0.136669,0.58337],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":3167.0,"sell_vol":1567.0,"unclassified_vol":0.0,"imbalance":0.337981,"bid":8.16,"ask":8.2,"spread_pct":0.488998,"quote_size_imbalance":null,"quote_age_s":1.999658},"context":{"vwap":8.092748,"price_vs_vwap_pct":1.078156,"ema9":8.056477,"ema20":8.078931,"ema_stack":false,"ema_warm":false,"hod":8.3788,"dist_to_hod_pct":-2.372655,"dist_to_hod_atr":1.369561,"atr":0.145156,"spread_atr":0.275566,"own_change_pct":3.315987,"rel_strength_pct":{"SPY":3.258584,"IWM":3.235303}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.197168},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6a002e76e1d6","ts":"2026-09-21T13:48:03.111406+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.36x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":10.6114,"target":11.0,"target_label":"premarket_high","reward_risk":2.63,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.7186,"vwap":10.7102,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":0.361,"trend":"flat","recent_slope_pct":0.0243,"volatility":"unknown"},"price":10.7186,"volume":{"bars":18,"last_bar_volume":37750.0,"baseline_avg":75289.294118,"bar_rvol":0.501399,"raw_accel":-0.383744,"smooth_accel":0.8246,"accel_momentum":-0.014954,"rvol_3bar":[1.38834,0.804253,0.501399],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":4683.0,"sell_vol":5950.0,"unclassified_vol":0.0,"imbalance":-0.119157,"bid":10.7,"ask":10.71,"spread_pct":0.093414,"quote_size_imbalance":null,"quote_age_s":0.293052},"context":{"vwap":10.710216,"price_vs_vwap_pct":0.078278,"ema9":10.720887,"ema20":10.708991,"ema_stack":false,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-1.028624,"dist_to_hod_atr":1.426639,"atr":0.078086,"spread_atr":0.128065,"own_change_pct":0.147664,"rel_strength_pct":{"SPY":0.09026,"IWM":0.066979}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.059745},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"884377269694","ts":"2026-09-21T13:48:08.139412+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.71 below VWAP $10.71","plan":{"state":"PASS","setup":"","stop":10.6029,"target":11.0,"target_label":"premarket_high","reward_risk":2.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.71,"vwap":10.7102,"ext_from_open_pct":0.09,"max_ext_allowed_pct":4.0,"volume_pace":0.36,"trend":"flat","recent_slope_pct":0.0082,"volatility":"unknown"},"price":10.71,"volume":{"bars":18,"last_bar_volume":37750.0,"baseline_avg":75289.294118,"bar_rvol":0.501399,"raw_accel":-0.383744,"smooth_accel":0.8246,"accel_momentum":-0.014954,"rvol_3bar":[1.38834,0.804253,0.501399],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":4772.0,"sell_vol":6840.0,"unclassified_vol":0.0,"imbalance":-0.178092,"bid":10.7,"ask":10.71,"spread_pct":0.093414,"quote_size_imbalance":null,"quote_age_s":1.301591},"context":{"vwap":10.710216,"price_vs_vwap_pct":-0.002019,"ema9":10.720887,"ema20":10.708991,"ema_stack":false,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-1.108033,"dist_to_hod_atr":1.536775,"atr":0.078086,"spread_atr":0.128065,"own_change_pct":0.147664,"rel_strength_pct":{"SPY":0.09026,"IWM":0.066979}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.089295},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0cd6056a2c47","ts":"2026-09-21T13:48:08.139412+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.2s, plan says WATCH; stop 5.59, target 6.07 (range_20d_high), R:R 3.94; breakout: 1-min close > 5.73 on >= 275879 sh","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.94,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.69,"vwap":5.6236,"ext_from_open_pct":2.71,"max_ext_allowed_pct":3.0,"volume_pace":2.402,"trend":"flat","recent_slope_pct":-0.0293,"volatility":"unknown"},"price":5.69,"volume":{"bars":18,"last_bar_volume":55730.0,"baseline_avg":191459.588235,"bar_rvol":0.29108,"raw_accel":-0.829771,"smooth_accel":-0.081886,"accel_momentum":-0.374668,"rvol_3bar":[1.208326,1.789326,0.29108],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":8158.0,"sell_vol":25183.0,"unclassified_vol":0.0,"imbalance":-0.510633,"bid":5.68,"ask":5.69,"spread_pct":0.175901,"quote_size_imbalance":null,"quote_age_s":4.361054},"context":{"vwap":5.623594,"price_vs_vwap_pct":1.18085,"ema9":5.669995,"ema20":5.637551,"ema_stack":true,"ema_warm":false,"hod":5.725,"dist_to_hod_pct":-0.611354,"dist_to_hod_atr":0.748338,"atr":0.04677,"spread_atr":0.213811,"own_change_pct":0.472149,"rel_strength_pct":{"SPY":0.414745,"IWM":0.391464}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.148635},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"12712ba733cc","ts":"2026-09-21T13:48:13.169741+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 40.3s, plan says PASS; stop 5.59, target 6.07 (range_20d_high), R:R 4.45; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":4.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.681,"vwap":5.6237,"ext_from_open_pct":2.55,"max_ext_allowed_pct":3.0,"volume_pace":2.393,"trend":"flat","recent_slope_pct":-0.061,"volatility":"unknown"},"price":5.681,"volume":{"bars":18,"last_bar_volume":55730.0,"baseline_avg":191459.588235,"bar_rvol":0.29108,"raw_accel":-0.829771,"smooth_accel":-0.081886,"accel_momentum":-0.374668,"rvol_3bar":[1.208326,1.789326,0.29108],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":3179.0,"sell_vol":15760.0,"unclassified_vol":0.0,"imbalance":-0.664291,"bid":5.68,"ask":5.69,"spread_pct":0.175901,"quote_size_imbalance":null,"quote_age_s":0.474241},"context":{"vwap":5.623594,"price_vs_vwap_pct":1.02081,"ema9":5.669995,"ema20":5.637551,"ema_stack":true,"ema_warm":false,"hod":5.725,"dist_to_hod_pct":-0.768559,"dist_to_hod_atr":0.940768,"atr":0.04677,"spread_atr":0.213811,"own_change_pct":0.472149,"rel_strength_pct":{"SPY":0.414745,"IWM":0.391464}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.193362},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"17a6d5f7e2c4","ts":"2026-09-21T13:48:18.192280+00:00","symbol":"KRRO","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.09,"target":10.56,"target_label":"ceiling","reward_risk":0.84,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.345,"vwap":10.2813,"ext_from_open_pct":2.22,"max_ext_allowed_pct":3.0,"volume_pace":0.977,"trend":"flat","recent_slope_pct":0.6882,"volatility":"unknown"},"price":10.345,"volume":{"bars":18,"last_bar_volume":554.0,"baseline_avg":2017.588235,"bar_rvol":0.274585,"raw_accel":-0.891394,"smooth_accel":0.00933,"accel_momentum":-0.227414,"rvol_3bar":[0.096687,2.79526,0.274585],"trend_3bar":"MIXED","projected_rvol":0.163468},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":607.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":10.3,"ask":10.39,"spread_pct":0.869986,"quote_size_imbalance":null,"quote_age_s":63.531264},"context":{"vwap":10.281167,"price_vs_vwap_pct":0.620873,"ema9":10.222014,"ema20":10.20034,"ema_stack":true,"ema_warm":false,"hod":10.77,"dist_to_hod_pct":-3.946147,"dist_to_hod_atr":1.377076,"atr":0.308625,"spread_atr":0.291616,"own_change_pct":1.921182,"rel_strength_pct":{"SPY":1.863778,"IWM":1.840497}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.274585},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9973a1d3d8a9","ts":"2026-09-21T13:48:18.192280+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.36x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":10.6117,"target":11.0,"target_label":"premarket_high","reward_risk":2.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.7189,"vwap":10.7102,"ext_from_open_pct":0.18,"max_ext_allowed_pct":4.0,"volume_pace":0.358,"trend":"flat","recent_slope_pct":0.0248,"volatility":"unknown"},"price":10.7189,"volume":{"bars":18,"last_bar_volume":37750.0,"baseline_avg":75289.294118,"bar_rvol":0.501399,"raw_accel":-0.383744,"smooth_accel":0.8246,"accel_momentum":-0.014954,"rvol_3bar":[1.38834,0.804253,0.501399],"trend_3bar":"DECELERATING","projected_rvol":0.325433},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":4947.0,"sell_vol":4509.0,"unclassified_vol":0.0,"imbalance":0.04632,"bid":10.7,"ask":10.72,"spread_pct":0.186741,"quote_size_imbalance":null,"quote_age_s":1.811606},"context":{"vwap":10.710216,"price_vs_vwap_pct":0.081079,"ema9":10.720887,"ema20":10.708991,"ema_stack":false,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-1.025854,"dist_to_hod_atr":1.422797,"atr":0.078086,"spread_atr":0.256129,"own_change_pct":0.147664,"rel_strength_pct":{"SPY":0.09026,"IWM":0.066979}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.023225},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"1c66e4085df0","ts":"2026-09-21T13:48:18.192280+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 45.3s, plan says WATCH; stop 5.59, target 6.07 (range_20d_high), R:R 3.69; breakout: 1-min close > 5.73 on >= 275879 sh","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.695,"vwap":5.6238,"ext_from_open_pct":2.8,"max_ext_allowed_pct":3.0,"volume_pace":2.387,"trend":"flat","recent_slope_pct":-0.0118,"volatility":"unknown"},"price":5.695,"volume":{"bars":18,"last_bar_volume":55730.0,"baseline_avg":191459.588235,"bar_rvol":0.29108,"raw_accel":-0.829771,"smooth_accel":-0.081886,"accel_momentum":-0.374668,"rvol_3bar":[1.208326,1.789326,0.29108],"trend_3bar":"MIXED","projected_rvol":0.183992},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":7474.0,"sell_vol":5307.0,"unclassified_vol":0.0,"imbalance":0.169549,"bid":5.69,"ask":5.7,"spread_pct":0.175593,"quote_size_imbalance":null,"quote_age_s":0.461684},"context":{"vwap":5.623594,"price_vs_vwap_pct":1.269761,"ema9":5.669995,"ema20":5.637551,"ema_stack":true,"ema_warm":false,"hod":5.725,"dist_to_hod_pct":-0.524017,"dist_to_hod_atr":0.641432,"atr":0.04677,"spread_atr":0.213811,"own_change_pct":0.472149,"rel_strength_pct":{"SPY":0.414745,"IWM":0.391464}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.049352},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8d063872736c","ts":"2026-09-21T13:48:28.253090+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.70 below VWAP $10.71","plan":{"state":"PASS","setup":"","stop":10.5881,"target":11.0,"target_label":"premarket_high","reward_risk":2.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.695,"vwap":10.7101,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.357,"trend":"flat","recent_slope_pct":-0.0198,"volatility":"unknown"},"price":10.695,"volume":{"bars":18,"last_bar_volume":37750.0,"baseline_avg":75289.294118,"bar_rvol":0.501399,"raw_accel":-0.383744,"smooth_accel":0.8246,"accel_momentum":-0.014954,"rvol_3bar":[1.38834,0.804253,0.501399],"trend_3bar":"DECELERATING","projected_rvol":0.532683},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":13427.0,"sell_vol":5539.0,"unclassified_vol":0.0,"imbalance":0.415902,"bid":10.69,"ask":10.7,"spread_pct":0.093502,"quote_size_imbalance":null,"quote_age_s":0.084248},"context":{"vwap":10.710216,"price_vs_vwap_pct":-0.142072,"ema9":10.720887,"ema20":10.708991,"ema_stack":false,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-1.246537,"dist_to_hod_atr":1.728872,"atr":0.078086,"spread_atr":0.128065,"own_change_pct":0.147664,"rel_strength_pct":{"SPY":0.09026,"IWM":0.066979}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.208533},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"1f98e7f1c25f","ts":"2026-09-21T13:48:38.307079+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.35x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":10.6112,"target":11.0,"target_label":"premarket_high","reward_risk":2.63,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.7184,"vwap":10.7103,"ext_from_open_pct":0.17,"max_ext_allowed_pct":4.0,"volume_pace":0.354,"trend":"flat","recent_slope_pct":0.0239,"volatility":"unknown"},"price":10.7184,"volume":{"bars":18,"last_bar_volume":37750.0,"baseline_avg":75289.294118,"bar_rvol":0.501399,"raw_accel":-0.383744,"smooth_accel":0.8246,"accel_momentum":-0.014954,"rvol_3bar":[1.38834,0.804253,0.501399],"trend_3bar":"DECELERATING","projected_rvol":0.405379},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":10364.0,"sell_vol":4635.0,"unclassified_vol":0.0,"imbalance":0.381959,"bid":10.69,"ask":10.7,"spread_pct":0.093502,"quote_size_imbalance":null,"quote_age_s":10.138237},"context":{"vwap":10.710216,"price_vs_vwap_pct":0.076411,"ema9":10.720887,"ema20":10.708991,"ema_stack":false,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-1.030471,"dist_to_hod_atr":1.429201,"atr":0.078086,"spread_atr":0.128065,"own_change_pct":0.147664,"rel_strength_pct":{"SPY":0.09026,"IWM":0.066979}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.191514},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"169c1e3f8179","ts":"2026-09-21T13:48:43.335368+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.70 below VWAP $10.71","plan":{"state":"PASS","setup":"","stop":10.5881,"target":11.0,"target_label":"premarket_high","reward_risk":2.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.695,"vwap":10.7101,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.353,"trend":"flat","recent_slope_pct":-0.0198,"volatility":"unknown"},"price":10.695,"volume":{"bars":18,"last_bar_volume":37750.0,"baseline_avg":75289.294118,"bar_rvol":0.501399,"raw_accel":-0.383744,"smooth_accel":0.8246,"accel_momentum":-0.014954,"rvol_3bar":[1.38834,0.804253,0.501399],"trend_3bar":"DECELERATING","projected_rvol":0.362921},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":10061.0,"sell_vol":4586.0,"unclassified_vol":0.0,"imbalance":0.373797,"bid":10.69,"ask":10.7,"spread_pct":0.093502,"quote_size_imbalance":null,"quote_age_s":15.166526},"context":{"vwap":10.710216,"price_vs_vwap_pct":-0.142072,"ema9":10.720887,"ema20":10.708991,"ema_stack":false,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-1.246537,"dist_to_hod_atr":1.728872,"atr":0.078086,"spread_atr":0.128065,"own_change_pct":0.147664,"rel_strength_pct":{"SPY":0.09026,"IWM":0.066979}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.187421},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"07f79126945a","ts":"2026-09-21T13:48:53.383646+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.35x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":10.6227,"target":11.0,"target_label":"premarket_high","reward_risk":2.52,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.73,"vwap":10.7104,"ext_from_open_pct":0.28,"max_ext_allowed_pct":4.0,"volume_pace":0.352,"trend":"flat","recent_slope_pct":0.0455,"volatility":"unknown"},"price":10.73,"volume":{"bars":18,"last_bar_volume":37750.0,"baseline_avg":75289.294118,"bar_rvol":0.501399,"raw_accel":-0.383744,"smooth_accel":0.8246,"accel_momentum":-0.014954,"rvol_3bar":[1.38834,0.804253,0.501399],"trend_3bar":"DECELERATING","projected_rvol":0.400272},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":13464.0,"sell_vol":3659.0,"unclassified_vol":0.0,"imbalance":0.572622,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.379924},"context":{"vwap":10.710216,"price_vs_vwap_pct":0.184719,"ema9":10.720887,"ema20":10.708991,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.923361,"dist_to_hod_atr":1.280646,"atr":0.078086,"spread_atr":0.128065,"own_change_pct":0.147664,"rel_strength_pct":{"SPY":0.09026,"IWM":0.066979}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.287112},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"39b8e39da1a9","ts":"2026-09-21T13:49:03.447999+00:00","symbol":"SECZ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.21,"target":12.0,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":115.1,"room_to_5d_high_atr":-0.67},"price":11.62,"vwap":11.5443,"ext_from_open_pct":-0.43,"max_ext_allowed_pct":4.0,"volume_pace":0.773,"trend":"flat","recent_slope_pct":0.6893,"volatility":"high"},"price":11.62,"volume":{"bars":19,"last_bar_volume":16712.0,"baseline_avg":43697.5,"bar_rvol":0.382448,"raw_accel":-0.320346,"smooth_accel":0.047777,"accel_momentum":-0.030358,"rvol_3bar":[0.742941,0.548598,0.382448],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":851.0,"sell_vol":1650.0,"unclassified_vol":0.0,"imbalance":-0.319472,"bid":11.54,"ask":11.62,"spread_pct":0.690846,"quote_size_imbalance":null,"quote_age_s":3.453465},"context":{"vwap":11.544302,"price_vs_vwap_pct":0.655717,"ema9":11.475868,"ema20":11.484404,"ema_stack":false,"ema_warm":false,"hod":11.98,"dist_to_hod_pct":-3.005008,"dist_to_hod_atr":1.448048,"atr":0.248611,"spread_atr":0.321788,"own_change_pct":2.464727,"rel_strength_pct":{"SPY":2.415808,"IWM":2.382276}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.122181},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"00fe05f82d20","ts":"2026-09-21T13:49:03.447999+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.52 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.3897,"target":8.82,"target_label":"prev_day_high","reward_risk":2.4,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":0.92},"price":8.5161,"vwap":8.5301,"ext_from_open_pct":-2.34,"max_ext_allowed_pct":3.0,"volume_pace":1.795,"trend":"flat","recent_slope_pct":-0.0723,"volatility":"medium"},"price":8.5161,"volume":{"bars":19,"last_bar_volume":43636.0,"baseline_avg":51297.277778,"bar_rvol":0.850649,"raw_accel":2.402598,"smooth_accel":1.169266,"accel_momentum":0.296605,"rvol_3bar":[0.82298,0.112253,0.850649],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":156,"trade_rate":5.2,"buy_vol":9474.0,"sell_vol":31325.0,"unclassified_vol":0.0,"imbalance":-0.535577,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.00861},"context":{"vwap":8.530058,"price_vs_vwap_pct":-0.163628,"ema9":8.518602,"ema20":8.52028,"ema_stack":false,"ema_warm":false,"hod":8.74,"dist_to_hod_pct":-2.561785,"dist_to_hod_atr":2.876295,"atr":0.077843,"spread_atr":0.128463,"own_change_pct":0.293772,"rel_strength_pct":{"SPY":0.244853,"IWM":0.211322}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.455588},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cafee16422ed","ts":"2026-09-21T13:49:08.481275+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.3897,"target":8.82,"target_label":"prev_day_high","reward_risk":1.92,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":0.87},"price":8.5373,"vwap":8.5301,"ext_from_open_pct":-2.1,"max_ext_allowed_pct":3.0,"volume_pace":1.787,"trend":"flat","recent_slope_pct":-0.0226,"volatility":"medium"},"price":8.5373,"volume":{"bars":19,"last_bar_volume":43636.0,"baseline_avg":51297.277778,"bar_rvol":0.850649,"raw_accel":2.402598,"smooth_accel":1.169266,"accel_momentum":0.296605,"rvol_3bar":[0.82298,0.112253,0.850649],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":120,"trade_rate":4.0,"buy_vol":3826.0,"sell_vol":30106.0,"unclassified_vol":0.0,"imbalance":-0.77449,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.79072},"context":{"vwap":8.530058,"price_vs_vwap_pct":0.084905,"ema9":8.518602,"ema20":8.52028,"ema_stack":false,"ema_warm":false,"hod":8.74,"dist_to_hod_pct":-2.319222,"dist_to_hod_atr":2.603953,"atr":0.077843,"spread_atr":0.128463,"own_change_pct":0.293772,"rel_strength_pct":{"SPY":0.244853,"IWM":0.211322}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.65882},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3218da1b089b","ts":"2026-09-21T13:49:13.507263+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 100.6s, plan says PASS; stop 5.59, target 6.07 (range_20d_high), R:R 4.21; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":4.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.685,"vwap":5.6253,"ext_from_open_pct":2.62,"max_ext_allowed_pct":4.0,"volume_pace":2.324,"trend":"flat","recent_slope_pct":-0.1041,"volatility":"unknown"},"price":5.685,"volume":{"bars":19,"last_bar_volume":27191.0,"baseline_avg":183919.055556,"bar_rvol":0.147842,"raw_accel":-0.512094,"smooth_accel":-0.394642,"accel_momentum":-0.312756,"rvol_3bar":[1.789326,0.29108,0.147842],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":142,"trade_rate":4.733333,"buy_vol":45187.0,"sell_vol":19478.0,"unclassified_vol":0.0,"imbalance":0.397572,"bid":5.68,"ask":5.69,"spread_pct":0.175901,"quote_size_imbalance":null,"quote_age_s":1.439792},"context":{"vwap":5.624174,"price_vs_vwap_pct":1.081502,"ema9":5.675976,"ema20":5.643489,"ema_stack":true,"ema_warm":false,"hod":5.725,"dist_to_hod_pct":-0.69869,"dist_to_hod_atr":0.885076,"atr":0.045194,"spread_atr":0.221269,"own_change_pct":0.616064,"rel_strength_pct":{"SPY":0.567145,"IWM":0.533613}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.058778},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"78bb79ae9655","ts":"2026-09-21T13:49:18.535413+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.58,"target":9.74,"target_label":"premarket_high","reward_risk":0.14,"pos_in_5d_range_pct":112.5,"room_to_5d_high_atr":-0.13},"price":9.72,"vwap":9.6852,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":1.794,"trend":"flat","recent_slope_pct":0.1033,"volatility":"medium"},"price":9.72,"volume":{"bars":19,"last_bar_volume":6930.0,"baseline_avg":28897.611111,"bar_rvol":0.239812,"raw_accel":-0.583534,"smooth_accel":-0.120034,"accel_momentum":0.038258,"rvol_3bar":[0.783131,0.561808,0.239812],"trend_3bar":"DECELERATING","projected_rvol":5.668101},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":20078.0,"sell_vol":34051.0,"unclassified_vol":0.0,"imbalance":-0.258143,"bid":9.72,"ask":9.73,"spread_pct":0.102828,"quote_size_imbalance":null,"quote_age_s":0.223467},"context":{"vwap":9.683537,"price_vs_vwap_pct":0.376542,"ema9":9.660853,"ema20":9.664124,"ema_stack":false,"ema_warm":false,"hod":9.83,"dist_to_hod_pct":-1.119023,"dist_to_hod_atr":1.880578,"atr":0.058493,"spread_atr":0.170962,"own_change_pct":0.676379,"rel_strength_pct":{"SPY":0.62746,"IWM":0.593928}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.061906},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"9377b76e2a95","ts":"2026-09-21T13:49:23.562319+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.50 below VWAP $11.54","plan":{"state":"PASS","setup":"","stop":11.21,"target":12.0,"target_label":"premarket_high","reward_risk":1.72,"pos_in_5d_range_pct":111.8,"room_to_5d_high_atr":-0.53},"price":11.5,"vwap":11.5441,"ext_from_open_pct":-1.46,"max_ext_allowed_pct":3.0,"volume_pace":0.768,"trend":"flat","recent_slope_pct":0.4822,"volatility":"high"},"price":11.5,"volume":{"bars":19,"last_bar_volume":16712.0,"baseline_avg":43697.5,"bar_rvol":0.382448,"raw_accel":-0.320346,"smooth_accel":0.047777,"accel_momentum":-0.030358,"rvol_3bar":[0.742941,0.548598,0.382448],"trend_3bar":"DECELERATING","projected_rvol":0.539445},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":3293.0,"sell_vol":6024.0,"unclassified_vol":0.0,"imbalance":-0.29312,"bid":11.46,"ask":11.54,"spread_pct":0.695652,"quote_size_imbalance":null,"quote_age_s":2.224893},"context":{"vwap":11.544302,"price_vs_vwap_pct":-0.383757,"ema9":11.475868,"ema20":11.484404,"ema_stack":false,"ema_warm":false,"hod":11.98,"dist_to_hod_pct":-4.006678,"dist_to_hod_atr":1.930731,"atr":0.248611,"spread_atr":0.321788,"own_change_pct":2.464727,"rel_strength_pct":{"SPY":2.415808,"IWM":2.382276}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.112103},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"970511f579f7","ts":"2026-09-21T13:49:23.562319+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.3897,"target":8.82,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":0.88},"price":8.53,"vwap":8.5301,"ext_from_open_pct":-2.18,"max_ext_allowed_pct":3.0,"volume_pace":1.764,"trend":"flat","recent_slope_pct":-0.0397,"volatility":"medium"},"price":8.53,"volume":{"bars":19,"last_bar_volume":43636.0,"baseline_avg":51297.277778,"bar_rvol":0.850649,"raw_accel":2.402598,"smooth_accel":1.169266,"accel_momentum":0.296605,"rvol_3bar":[0.82298,0.112253,0.850649],"trend_3bar":"MIXED","projected_rvol":0.043684},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1218.0,"sell_vol":232.0,"unclassified_vol":0.0,"imbalance":0.68,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":2.099611},"context":{"vwap":8.530058,"price_vs_vwap_pct":-0.000675,"ema9":8.518602,"ema20":8.52028,"ema_stack":false,"ema_warm":false,"hod":8.74,"dist_to_hod_pct":-2.402746,"dist_to_hod_atr":2.697731,"atr":0.077843,"spread_atr":0.128463,"own_change_pct":0.293772,"rel_strength_pct":{"SPY":0.244853,"IWM":0.211322}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.578442},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"336397a4358d","ts":"2026-09-21T13:49:28.586840+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.3897,"target":8.82,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":0.87},"price":8.535,"vwap":8.5301,"ext_from_open_pct":-2.12,"max_ext_allowed_pct":3.0,"volume_pace":1.756,"trend":"flat","recent_slope_pct":-0.028,"volatility":"medium"},"price":8.535,"volume":{"bars":19,"last_bar_volume":43636.0,"baseline_avg":51297.277778,"bar_rvol":0.850649,"raw_accel":2.402598,"smooth_accel":1.169266,"accel_momentum":0.296605,"rvol_3bar":[0.82298,0.112253,0.850649],"trend_3bar":"MIXED","projected_rvol":0.040138},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":954.0,"sell_vol":227.0,"unclassified_vol":0.0,"imbalance":0.61558,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.050074},"context":{"vwap":8.530058,"price_vs_vwap_pct":0.057942,"ema9":8.518602,"ema20":8.52028,"ema_stack":false,"ema_warm":false,"hod":8.74,"dist_to_hod_pct":-2.345538,"dist_to_hod_atr":2.6335,"atr":0.077843,"spread_atr":0.128463,"own_change_pct":0.293772,"rel_strength_pct":{"SPY":0.244853,"IWM":0.211322}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.523643},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"91cce7efc928","ts":"2026-09-21T13:49:33.617556+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.3897,"target":8.82,"target_label":"prev_day_high","reward_risk":2.18,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":0.9},"price":8.525,"vwap":8.53,"ext_from_open_pct":-2.24,"max_ext_allowed_pct":4.0,"volume_pace":1.754,"trend":"flat","recent_slope_pct":-0.0514,"volatility":"medium"},"price":8.525,"volume":{"bars":19,"last_bar_volume":43636.0,"baseline_avg":51297.277778,"bar_rvol":0.850649,"raw_accel":2.402598,"smooth_accel":1.169266,"accel_momentum":0.296605,"rvol_3bar":[0.82298,0.112253,0.850649],"trend_3bar":"MIXED","projected_rvol":0.128699},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2369.0,"sell_vol":629.0,"unclassified_vol":0.0,"imbalance":0.580387,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":0.090164},"context":{"vwap":8.530058,"price_vs_vwap_pct":-0.059291,"ema9":8.518602,"ema20":8.52028,"ema_stack":false,"ema_warm":false,"hod":8.74,"dist_to_hod_pct":-2.459954,"dist_to_hod_atr":2.761963,"atr":0.077843,"spread_atr":0.128463,"own_change_pct":0.293772,"rel_strength_pct":{"SPY":0.244853,"IWM":0.211322}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.493706},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f51d087cd11e","ts":"2026-09-21T13:49:43.663285+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.8885,"target":8.995,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":122.3,"room_to_5d_high_atr":-0.71},"price":8.975,"vwap":8.9684,"ext_from_open_pct":-0.5,"max_ext_allowed_pct":3.0,"volume_pace":2.866,"trend":"flat","recent_slope_pct":-0.1777,"volatility":"medium"},"price":8.975,"volume":{"bars":19,"last_bar_volume":14864.0,"baseline_avg":76744.055556,"bar_rvol":0.193683,"raw_accel":-0.518029,"smooth_accel":-0.648045,"accel_momentum":-0.894799,"rvol_3bar":[0.503518,0.388197,0.193683],"trend_3bar":"DECELERATING","projected_rvol":0.324755},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":1735.0,"sell_vol":10881.0,"unclassified_vol":0.0,"imbalance":-0.724952,"bid":8.97,"ask":8.98,"spread_pct":0.111421,"quote_size_imbalance":null,"quote_age_s":0.124498},"context":{"vwap":8.968192,"price_vs_vwap_pct":0.075914,"ema9":9.004654,"ema20":8.982181,"ema_stack":false,"ema_warm":false,"hod":9.065,"dist_to_hod_pct":-0.99283,"dist_to_hod_atr":1.097489,"atr":0.082005,"spread_atr":0.121943,"own_change_pct":-0.608407,"rel_strength_pct":{"SPY":-0.657326,"IWM":-0.690857}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.140411},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"2e8bc47628e8","ts":"2026-09-21T13:49:43.663285+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 130.8s, plan says WATCH; stop 5.59, target 6.07 (range_20d_high), R:R 3.93; breakout: 1-min close > 5.73 on >= 263505 sh","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.93,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.6901,"vwap":5.6268,"ext_from_open_pct":2.71,"max_ext_allowed_pct":3.0,"volume_pace":2.32,"trend":"flat","recent_slope_pct":-0.0862,"volatility":"unknown"},"price":5.6901,"volume":{"bars":19,"last_bar_volume":27191.0,"baseline_avg":183919.055556,"bar_rvol":0.147842,"raw_accel":-0.512094,"smooth_accel":-0.394642,"accel_momentum":-0.312756,"rvol_3bar":[1.789326,0.29108,0.147842],"trend_3bar":"DECELERATING","projected_rvol":1.054879},"flow":{"window_s":30,"trades":157,"trade_rate":5.233333,"buy_vol":56400.0,"sell_vol":25703.0,"unclassified_vol":0.0,"imbalance":0.373884,"bid":5.69,"ask":5.7,"spread_pct":0.175593,"quote_size_imbalance":null,"quote_age_s":1.714019},"context":{"vwap":5.624174,"price_vs_vwap_pct":1.172182,"ema9":5.675976,"ema20":5.643489,"ema_stack":true,"ema_warm":false,"hod":5.725,"dist_to_hod_pct":-0.609607,"dist_to_hod_atr":0.772229,"atr":0.045194,"spread_atr":0.221269,"own_change_pct":0.616064,"rel_strength_pct":{"SPY":0.567145,"IWM":0.533613}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.055276},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"3a8f65fc86ae","ts":"2026-09-21T13:49:48.928918+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.35x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":10.6524,"target":11.0,"target_label":"premarket_high","reward_risk":2.23,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.76,"vwap":10.7122,"ext_from_open_pct":0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.353,"trend":"flat","recent_slope_pct":0.0184,"volatility":"unknown"},"price":10.76,"volume":{"bars":19,"last_bar_volume":27095.0,"baseline_avg":73203.777778,"bar_rvol":0.370131,"raw_accel":-0.282252,"smooth_accel":-0.248861,"accel_momentum":-1.073461,"rvol_3bar":[0.804253,0.501399,0.370131],"trend_3bar":"DECELERATING","projected_rvol":1.165599},"flow":{"window_s":30,"trades":195,"trade_rate":6.5,"buy_vol":26254.0,"sell_vol":20339.0,"unclassified_vol":0.0,"imbalance":0.12695,"bid":10.76,"ask":10.77,"spread_pct":0.092894,"quote_size_imbalance":null,"quote_age_s":0.140821},"context":{"vwap":10.710305,"price_vs_vwap_pct":0.463996,"ema9":10.72047,"ema20":10.709925,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.646353,"dist_to_hod_atr":0.92443,"atr":0.075722,"spread_atr":0.132061,"own_change_pct":0.175701,"rel_strength_pct":{"SPY":0.126782,"IWM":0.093251}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.046988},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"3cd9d7f8b8c1","ts":"2026-09-21T13:49:58.983369+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.71,"vwap":5.6279,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":2.315,"trend":"flat","recent_slope_pct":-0.0163,"volatility":"unknown"},"price":5.71,"volume":{"bars":19,"last_bar_volume":27191.0,"baseline_avg":183919.055556,"bar_rvol":0.147842,"raw_accel":-0.512094,"smooth_accel":-0.394642,"accel_momentum":-0.312756,"rvol_3bar":[1.789326,0.29108,0.147842],"trend_3bar":"DECELERATING","projected_rvol":0.990881},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":19868.0,"sell_vol":28273.0,"unclassified_vol":0.0,"imbalance":-0.174591,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":0.902144},"context":{"vwap":5.624174,"price_vs_vwap_pct":1.526012,"ema9":5.675976,"ema20":5.643489,"ema_stack":true,"ema_warm":false,"hod":5.725,"dist_to_hod_pct":-0.262009,"dist_to_hod_atr":0.331903,"atr":0.045194,"spread_atr":0.221269,"own_change_pct":0.616064,"rel_strength_pct":{"SPY":0.567145,"IWM":0.533613}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.025812},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"4ab969675172","ts":"2026-09-21T13:50:04.012683+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7796,"target":8.95,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":133.8,"room_to_5d_high_atr":-0.45},"price":8.92,"vwap":8.8753,"ext_from_open_pct":2.18,"max_ext_allowed_pct":3.0,"volume_pace":2.853,"trend":"flat","recent_slope_pct":0.2515,"volatility":"high"},"price":8.92,"volume":{"bars":20,"last_bar_volume":11617.0,"baseline_avg":34274.473684,"bar_rvol":0.33894,"raw_accel":0.355761,"smooth_accel":-0.780215,"accel_momentum":0.048778,"rvol_3bar":[0.672111,0.214163,0.33894],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":7803.0,"sell_vol":3390.0,"unclassified_vol":0.0,"imbalance":0.394264,"bid":8.9,"ask":8.94,"spread_pct":0.44843,"quote_size_imbalance":null,"quote_age_s":1.300666},"context":{"vwap":8.874878,"price_vs_vwap_pct":0.50842,"ema9":8.88524,"ema20":8.876902,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.653804,"dist_to_hod_atr":1.320253,"atr":0.113615,"spread_atr":0.352067,"own_change_pct":0.281849,"rel_strength_pct":{"SPY":0.260332,"IWM":0.255546}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.133632},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"387c55e89502","ts":"2026-09-21T13:50:04.012683+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.35x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":10.6772,"target":11.0,"target_label":"premarket_high","reward_risk":1.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.785,"vwap":10.7127,"ext_from_open_pct":0.79,"max_ext_allowed_pct":3.0,"volume_pace":0.35,"trend":"flat","recent_slope_pct":0.1622,"volatility":"unknown"},"price":10.785,"volume":{"bars":20,"last_bar_volume":74975.0,"baseline_avg":70777.0,"bar_rvol":1.059313,"raw_accel":1.767116,"smooth_accel":-0.302299,"accel_momentum":-0.053438,"rvol_3bar":[0.501399,0.370131,1.059313],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":195,"trade_rate":6.5,"buy_vol":28850.0,"sell_vol":11480.0,"unclassified_vol":0.0,"imbalance":0.430697,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.457538},"context":{"vwap":10.71251,"price_vs_vwap_pct":0.676686,"ema9":10.730376,"ema20":10.715647,"ema_stack":true,"ema_warm":true,"hod":10.83,"dist_to_hod_pct":-0.415512,"dist_to_hod_atr":0.606825,"atr":0.074156,"spread_atr":0.13485,"own_change_pct":0.748363,"rel_strength_pct":{"SPY":0.726847,"IWM":0.72206}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.456243},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c295a9c97789","ts":"2026-09-21T13:50:09.083733+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.47,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7,"vwap":5.6285,"ext_from_open_pct":2.89,"max_ext_allowed_pct":3.0,"volume_pace":2.318,"trend":"flat","recent_slope_pct":0.0437,"volatility":"unknown"},"price":5.7,"volume":{"bars":20,"last_bar_volume":179254.0,"baseline_avg":175670.210526,"bar_rvol":1.020401,"raw_accel":3.081603,"smooth_accel":-0.675889,"accel_momentum":-0.281247,"rvol_3bar":[0.29108,0.147842,1.020401],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":33914.0,"sell_vol":46490.0,"unclassified_vol":0.0,"imbalance":-0.15641,"bid":5.69,"ask":5.7,"spread_pct":0.175593,"quote_size_imbalance":null,"quote_age_s":0.124205},"context":{"vwap":5.627784,"price_vs_vwap_pct":1.2832,"ema9":5.681781,"ema20":5.649347,"ema_stack":true,"ema_warm":true,"hod":5.725,"dist_to_hod_pct":-0.436681,"dist_to_hod_atr":0.557751,"atr":0.044823,"spread_atr":0.2231,"own_change_pct":0.410089,"rel_strength_pct":{"SPY":0.388572,"IWM":0.383785}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.159601},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6572b0df143e","ts":"2026-09-21T13:50:19.199308+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.8885,"target":8.995,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":122.3,"room_to_5d_high_atr":-0.71},"price":8.975,"vwap":8.9684,"ext_from_open_pct":-0.5,"max_ext_allowed_pct":3.0,"volume_pace":2.791,"trend":"flat","recent_slope_pct":-0.1332,"volatility":"medium"},"price":8.975,"volume":{"bars":20,"last_bar_volume":20724.0,"baseline_avg":73487.210526,"bar_rvol":0.282008,"raw_accel":0.128033,"smooth_accel":-0.652896,"accel_momentum":-0.004852,"rvol_3bar":[0.388197,0.193683,0.282008],"trend_3bar":"MIXED","projected_rvol":0.071188},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":900.0,"sell_vol":1512.0,"unclassified_vol":0.0,"imbalance":-0.253731,"bid":8.97,"ask":8.98,"spread_pct":0.111421,"quote_size_imbalance":null,"quote_age_s":0.353927},"context":{"vwap":8.968392,"price_vs_vwap_pct":0.073677,"ema9":9.000863,"ema20":8.982516,"ema_stack":false,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.99283,"dist_to_hod_atr":1.139169,"atr":0.079005,"spread_atr":0.126574,"own_change_pct":-0.214325,"rel_strength_pct":{"SPY":-0.235842,"IWM":-0.240629}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.071554},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e670947af531","ts":"2026-09-21T13:50:24.235803+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"held 80.8s, plan says WATCH; stop 7.85, target 8.45 (premarket_high), R:R 0.56; R:R 0.56 < 2.0 at 8.23; breakout: 1-min close > 8.29 on >= 44197 sh","plan":{"state":"WATCH","setup":"","stop":7.8498,"target":8.45,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":127.2,"room_to_5d_high_atr":-0.86},"price":8.2339,"vwap":8.097,"ext_from_open_pct":0.54,"max_ext_allowed_pct":3.0,"volume_pace":1.731,"trend":"flat","recent_slope_pct":0.3003,"volatility":"high"},"price":8.2339,"volume":{"bars":20,"last_bar_volume":14406.0,"baseline_avg":30256.947368,"bar_rvol":0.476122,"raw_accel":0.904488,"smooth_accel":0.200756,"accel_momentum":0.852354,"rvol_3bar":[0.58337,0.109245,0.476122],"trend_3bar":"MIXED","projected_rvol":0.635019},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":4084.0,"sell_vol":3692.0,"unclassified_vol":0.0,"imbalance":0.050412,"bid":8.19,"ask":8.22,"spread_pct":0.365631,"quote_size_imbalance":null,"quote_age_s":0.370324},"context":{"vwap":8.095344,"price_vs_vwap_pct":1.711554,"ema9":8.111929,"ema20":8.102595,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-1.729365,"dist_to_hod_atr":1.012399,"atr":0.143125,"spread_atr":0.209607,"own_change_pct":3.745271,"rel_strength_pct":{"SPY":3.723755,"IWM":3.718968}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.024002},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8d4c01be8d35","ts":"2026-09-21T13:50:29.357569+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"held 85.9s, plan says PASS; stop 7.85, target 8.28 (ceiling), R:R 0.16; R:R 0.16 < 2.0 at 8.22; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.8498,"target":8.28,"target_label":"ceiling","reward_risk":0.16,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.84},"price":8.22,"vwap":8.0971,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":1.726,"trend":"flat","recent_slope_pct":0.2665,"volatility":"high"},"price":8.22,"volume":{"bars":20,"last_bar_volume":14406.0,"baseline_avg":30256.947368,"bar_rvol":0.476122,"raw_accel":0.904488,"smooth_accel":0.200756,"accel_momentum":0.852354,"rvol_3bar":[0.58337,0.109245,0.476122],"trend_3bar":"MIXED","projected_rvol":0.583809},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":4812.0,"sell_vol":3834.0,"unclassified_vol":0.0,"imbalance":0.113116,"bid":8.19,"ask":8.24,"spread_pct":0.608643,"quote_size_imbalance":null,"quote_age_s":0.291993},"context":{"vwap":8.095344,"price_vs_vwap_pct":1.539851,"ema9":8.111929,"ema20":8.102595,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-1.895259,"dist_to_hod_atr":1.109517,"atr":0.143125,"spread_atr":0.349344,"own_change_pct":3.745271,"rel_strength_pct":{"SPY":3.723755,"IWM":3.718968}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.053857},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a27d55d85657","ts":"2026-09-21T13:50:29.357569+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.91 below VWAP $10.71","plan":{"state":"PASS","setup":"","stop":9.8109,"target":10.615,"target_label":"prev_day_high","reward_risk":7.11,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.91,"vwap":10.7086,"ext_from_open_pct":-7.38,"max_ext_allowed_pct":3.0,"volume_pace":0.345,"trend":"flat","recent_slope_pct":-1.4911,"volatility":"unknown"},"price":9.91,"volume":{"bars":20,"last_bar_volume":74975.0,"baseline_avg":70777.0,"bar_rvol":1.059313,"raw_accel":1.767116,"smooth_accel":-0.302299,"accel_momentum":-0.053438,"rvol_3bar":[0.501399,0.370131,1.059313],"trend_3bar":"MIXED","projected_rvol":0.320352},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":6364.0,"sell_vol":4730.0,"unclassified_vol":0.0,"imbalance":0.147287,"bid":10.77,"ask":10.78,"spread_pct":0.092807,"quote_size_imbalance":null,"quote_age_s":0.372059},"context":{"vwap":10.71251,"price_vs_vwap_pct":-7.491335,"ema9":10.730376,"ema20":10.715647,"ema_stack":false,"ema_warm":true,"hod":10.83,"dist_to_hod_pct":-8.494922,"dist_to_hod_atr":12.406201,"atr":0.074156,"spread_atr":0.13485,"own_change_pct":0.748363,"rel_strength_pct":{"SPY":0.726847,"IWM":0.72206}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.156023},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"201078dc3808","ts":"2026-09-21T13:50:34.433564+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.2,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7069,"vwap":5.6298,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":2.312,"trend":"flat","recent_slope_pct":0.0679,"volatility":"unknown"},"price":5.7069,"volume":{"bars":20,"last_bar_volume":179254.0,"baseline_avg":175670.210526,"bar_rvol":1.020401,"raw_accel":3.081603,"smooth_accel":-0.675889,"accel_momentum":-0.281247,"rvol_3bar":[0.29108,0.147842,1.020401],"trend_3bar":"MIXED","projected_rvol":0.971901},"flow":{"window_s":30,"trades":170,"trade_rate":5.666667,"buy_vol":43987.0,"sell_vol":43868.0,"unclassified_vol":0.0,"imbalance":0.001355,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":0.28775},"context":{"vwap":5.627784,"price_vs_vwap_pct":1.405806,"ema9":5.681781,"ema20":5.649347,"ema_stack":true,"ema_warm":true,"hod":5.725,"dist_to_hod_pct":-0.316157,"dist_to_hod_atr":0.403812,"atr":0.044823,"spread_atr":0.2231,"own_change_pct":0.410089,"rel_strength_pct":{"SPY":0.388572,"IWM":0.383785}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.001382},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5ccffed0976b","ts":"2026-09-21T13:50:39.554399+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.68,"target":11.0,"target_label":"premarket_high","reward_risk":1.46,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.81,"vwap":10.7065,"ext_from_open_pct":1.03,"max_ext_allowed_pct":3.0,"volume_pace":0.35,"trend":"flat","recent_slope_pct":0.2086,"volatility":"unknown"},"price":10.81,"volume":{"bars":20,"last_bar_volume":74975.0,"baseline_avg":70777.0,"bar_rvol":1.059313,"raw_accel":1.767116,"smooth_accel":-0.302299,"accel_momentum":-0.053438,"rvol_3bar":[0.501399,0.370131,1.059313],"trend_3bar":"MIXED","projected_rvol":0.985276},"flow":{"window_s":30,"trades":221,"trade_rate":7.366667,"buy_vol":21692.0,"sell_vol":18228.0,"unclassified_vol":0.0,"imbalance":0.086774,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":0.246555},"context":{"vwap":10.71251,"price_vs_vwap_pct":0.910058,"ema9":10.730376,"ema20":10.715647,"ema_stack":true,"ema_warm":true,"hod":10.83,"dist_to_hod_pct":-0.184672,"dist_to_hod_atr":0.2697,"atr":0.074156,"spread_atr":0.13485,"own_change_pct":0.748363,"rel_strength_pct":{"SPY":0.726847,"IWM":0.72206}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.09192},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"898aa86f0258","ts":"2026-09-21T13:50:39.554399+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.33,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7036,"vwap":5.6299,"ext_from_open_pct":2.95,"max_ext_allowed_pct":3.0,"volume_pace":2.305,"trend":"flat","recent_slope_pct":0.0563,"volatility":"unknown"},"price":5.7036,"volume":{"bars":20,"last_bar_volume":179254.0,"baseline_avg":175670.210526,"bar_rvol":1.020401,"raw_accel":3.081603,"smooth_accel":-0.675889,"accel_momentum":-0.281247,"rvol_3bar":[0.29108,0.147842,1.020401],"trend_3bar":"MIXED","projected_rvol":0.884423},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":39750.0,"sell_vol":28987.0,"unclassified_vol":0.0,"imbalance":0.156582,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":1.471193},"context":{"vwap":5.627784,"price_vs_vwap_pct":1.347168,"ema9":5.681781,"ema20":5.649347,"ema_stack":true,"ema_warm":true,"hod":5.725,"dist_to_hod_pct":-0.373799,"dist_to_hod_atr":0.477435,"atr":0.044823,"spread_atr":0.2231,"own_change_pct":0.410089,"rel_strength_pct":{"SPY":0.388572,"IWM":0.383785}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.159777},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"32a099e9e6ad","ts":"2026-09-21T13:50:44.579121+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.96 below VWAP $8.97","plan":{"state":"PASS","setup":"","stop":8.8785,"target":8.995,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":121.4,"room_to_5d_high_atr":-0.68},"price":8.965,"vwap":8.9684,"ext_from_open_pct":-0.61,"max_ext_allowed_pct":3.0,"volume_pace":2.74,"trend":"flat","recent_slope_pct":-0.1555,"volatility":"medium"},"price":8.965,"volume":{"bars":20,"last_bar_volume":20724.0,"baseline_avg":73487.210526,"bar_rvol":0.282008,"raw_accel":0.128033,"smooth_accel":-0.652896,"accel_momentum":-0.004852,"rvol_3bar":[0.388197,0.193683,0.282008],"trend_3bar":"MIXED","projected_rvol":0.089029},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":746.0,"sell_vol":3474.0,"unclassified_vol":0.0,"imbalance":-0.646445,"bid":8.96,"ask":8.97,"spread_pct":0.111545,"quote_size_imbalance":null,"quote_age_s":2.220565},"context":{"vwap":8.968392,"price_vs_vwap_pct":-0.037826,"ema9":9.000863,"ema20":8.982516,"ema_stack":false,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-1.103144,"dist_to_hod_atr":1.265743,"atr":0.079005,"spread_atr":0.126574,"own_change_pct":-0.214325,"rel_strength_pct":{"SPY":-0.235842,"IWM":-0.240629}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.182303},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6048316dfa23","ts":"2026-09-21T13:50:44.579121+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.12,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7091,"vwap":5.63,"ext_from_open_pct":3.05,"max_ext_allowed_pct":3.0,"volume_pace":2.297,"trend":"flat","recent_slope_pct":0.0756,"volatility":"unknown"},"price":5.7091,"volume":{"bars":20,"last_bar_volume":179254.0,"baseline_avg":175670.210526,"bar_rvol":1.020401,"raw_accel":3.081603,"smooth_accel":-0.675889,"accel_momentum":-0.281247,"rvol_3bar":[0.29108,0.147842,1.020401],"trend_3bar":"MIXED","projected_rvol":0.800457},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":39793.0,"sell_vol":29399.0,"unclassified_vol":0.0,"imbalance":0.15022,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":0.378938},"context":{"vwap":5.627784,"price_vs_vwap_pct":1.444898,"ema9":5.681781,"ema20":5.649347,"ema_stack":true,"ema_warm":true,"hod":5.725,"dist_to_hod_pct":-0.277729,"dist_to_hod_atr":0.35473,"atr":0.044823,"spread_atr":0.2231,"own_change_pct":0.410089,"rel_strength_pct":{"SPY":0.388572,"IWM":0.383785}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.153284},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"09197d1ecea1","ts":"2026-09-21T13:50:54.640963+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":2.33,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.32,"vwap":8.1271,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":11.701,"trend":"flat","recent_slope_pct":0.0891,"volatility":"unknown"},"price":8.32,"volume":{"bars":20,"last_bar_volume":20588.0,"baseline_avg":17810.052632,"bar_rvol":1.155976,"raw_accel":-0.17024,"smooth_accel":0.004756,"accel_momentum":-0.688841,"rvol_3bar":[1.137857,1.424254,1.155976],"trend_3bar":"MIXED","projected_rvol":0.889927},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":1310.0,"sell_vol":5601.0,"unclassified_vol":0.0,"imbalance":-0.620894,"bid":8.35,"ask":8.42,"spread_pct":0.834824,"quote_size_imbalance":null,"quote_age_s":1.344215},"context":{"vwap":8.116008,"price_vs_vwap_pct":2.513457,"ema9":8.316502,"ema20":8.175819,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.030303,"dist_to_hod_atr":1.102958,"atr":0.23573,"spread_atr":0.29695,"own_change_pct":3.216019,"rel_strength_pct":{"SPY":3.194503,"IWM":3.189716}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.717739},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"57aada9cf4e4","ts":"2026-09-21T13:50:54.640963+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.8948,"target":8.995,"target_label":"premarket_high","reward_risk":0.16,"pos_in_5d_range_pct":122.8,"room_to_5d_high_atr":-0.73},"price":8.9813,"vwap":8.9684,"ext_from_open_pct":-0.43,"max_ext_allowed_pct":3.0,"volume_pace":2.72,"trend":"flat","recent_slope_pct":-0.1192,"volatility":"medium"},"price":8.9813,"volume":{"bars":20,"last_bar_volume":20724.0,"baseline_avg":73487.210526,"bar_rvol":0.282008,"raw_accel":0.128033,"smooth_accel":-0.652896,"accel_momentum":-0.004852,"rvol_3bar":[0.388197,0.193683,0.282008],"trend_3bar":"MIXED","projected_rvol":0.085844},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":815.0,"sell_vol":2107.0,"unclassified_vol":0.0,"imbalance":-0.442163,"bid":8.96,"ask":8.97,"spread_pct":0.111545,"quote_size_imbalance":null,"quote_age_s":1.258118},"context":{"vwap":8.968392,"price_vs_vwap_pct":0.143924,"ema9":9.000863,"ema20":8.982516,"ema_stack":false,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.923331,"dist_to_hod_atr":1.059427,"atr":0.079005,"spread_atr":0.126574,"own_change_pct":-0.214325,"rel_strength_pct":{"SPY":-0.235842,"IWM":-0.240629}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.124694},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e450d9679bd3","ts":"2026-09-21T13:50:54.640963+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":10.658,"target":11.0,"target_label":"premarket_high","reward_risk":2.18,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.7657,"vwap":10.7055,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":0.347,"trend":"flat","recent_slope_pct":0.1263,"volatility":"unknown"},"price":10.7657,"volume":{"bars":20,"last_bar_volume":74975.0,"baseline_avg":70777.0,"bar_rvol":1.059313,"raw_accel":1.767116,"smooth_accel":-0.302299,"accel_momentum":-0.053438,"rvol_3bar":[0.501399,0.370131,1.059313],"trend_3bar":"MIXED","projected_rvol":0.770626},"flow":{"window_s":30,"trades":221,"trade_rate":7.366667,"buy_vol":20168.0,"sell_vol":18553.0,"unclassified_vol":0.0,"imbalance":0.041709,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":0.18217},"context":{"vwap":10.71251,"price_vs_vwap_pct":0.496522,"ema9":10.730376,"ema20":10.715647,"ema_stack":true,"ema_warm":true,"hod":10.83,"dist_to_hod_pct":-0.593721,"dist_to_hod_atr":0.867086,"atr":0.074156,"spread_atr":0.13485,"own_change_pct":0.748363,"rel_strength_pct":{"SPY":0.726847,"IWM":0.72206}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.044182},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c12db5fffd33","ts":"2026-09-21T13:50:54.640963+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.47,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7,"vwap":5.6301,"ext_from_open_pct":2.89,"max_ext_allowed_pct":3.0,"volume_pace":2.285,"trend":"flat","recent_slope_pct":0.0437,"volatility":"unknown"},"price":5.7,"volume":{"bars":20,"last_bar_volume":179254.0,"baseline_avg":175670.210526,"bar_rvol":1.020401,"raw_accel":3.081603,"smooth_accel":-0.675889,"accel_momentum":-0.281247,"rvol_3bar":[0.29108,0.147842,1.020401],"trend_3bar":"MIXED","projected_rvol":0.720372},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":48567.0,"sell_vol":28274.0,"unclassified_vol":0.0,"imbalance":0.264091,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":3.729419},"context":{"vwap":5.627784,"price_vs_vwap_pct":1.2832,"ema9":5.681781,"ema20":5.649347,"ema_stack":true,"ema_warm":true,"hod":5.725,"dist_to_hod_pct":-0.436681,"dist_to_hod_atr":0.557751,"atr":0.044823,"spread_atr":0.2231,"own_change_pct":0.410089,"rel_strength_pct":{"SPY":0.388572,"IWM":0.383785}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.269478},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bbb836efe740","ts":"2026-09-21T13:50:59.734128+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $8.01 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":1.97,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.36,"vwap":8.1278,"ext_from_open_pct":4.37,"max_ext_allowed_pct":4.0,"volume_pace":11.66,"trend":"flat","recent_slope_pct":0.184,"volatility":"unknown"},"price":8.36,"volume":{"bars":20,"last_bar_volume":20588.0,"baseline_avg":17810.052632,"bar_rvol":1.155976,"raw_accel":-0.17024,"smooth_accel":0.004756,"accel_momentum":-0.688841,"rvol_3bar":[1.137857,1.424254,1.155976],"trend_3bar":"MIXED","projected_rvol":0.824933},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":1421.0,"sell_vol":3563.0,"unclassified_vol":0.0,"imbalance":-0.429775,"bid":8.35,"ask":8.42,"spread_pct":0.834824,"quote_size_imbalance":null,"quote_age_s":6.43738},"context":{"vwap":8.116008,"price_vs_vwap_pct":3.00631,"ema9":8.316502,"ema20":8.175819,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.564103,"dist_to_hod_atr":0.933272,"atr":0.23573,"spread_atr":0.29695,"own_change_pct":3.216019,"rel_strength_pct":{"SPY":3.194503,"IWM":3.189716}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.49681},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"544ed18cb137","ts":"2026-09-21T13:50:59.734128+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.96 below VWAP $8.97","plan":{"state":"PASS","setup":"","stop":8.8735,"target":8.995,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":120.9,"room_to_5d_high_atr":-0.66},"price":8.96,"vwap":8.9684,"ext_from_open_pct":-0.67,"max_ext_allowed_pct":3.0,"volume_pace":2.709,"trend":"flat","recent_slope_pct":-0.1666,"volatility":"medium"},"price":8.96,"volume":{"bars":20,"last_bar_volume":20724.0,"baseline_avg":73487.210526,"bar_rvol":0.282008,"raw_accel":0.128033,"smooth_accel":-0.652896,"accel_momentum":-0.004852,"rvol_3bar":[0.388197,0.193683,0.282008],"trend_3bar":"MIXED","projected_rvol":0.081915},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":867.0,"sell_vol":2129.0,"unclassified_vol":0.0,"imbalance":-0.421228,"bid":8.96,"ask":8.97,"spread_pct":0.111545,"quote_size_imbalance":null,"quote_age_s":0.818859},"context":{"vwap":8.968392,"price_vs_vwap_pct":-0.093577,"ema9":9.000863,"ema20":8.982516,"ema_stack":false,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-1.158301,"dist_to_hod_atr":1.32903,"atr":0.079005,"spread_atr":0.126574,"own_change_pct":-0.214325,"rel_strength_pct":{"SPY":-0.235842,"IWM":-0.240629}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.11879},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b28ef1320657","ts":"2026-09-21T13:50:59.734128+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.68,"target":11.0,"target_label":"premarket_high","reward_risk":1.23,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.8234,"vwap":10.7059,"ext_from_open_pct":1.15,"max_ext_allowed_pct":3.0,"volume_pace":0.346,"trend":"flat","recent_slope_pct":0.2335,"volatility":"unknown"},"price":10.8234,"volume":{"bars":20,"last_bar_volume":74975.0,"baseline_avg":70777.0,"bar_rvol":1.059313,"raw_accel":1.767116,"smooth_accel":-0.302299,"accel_momentum":-0.053438,"rvol_3bar":[0.501399,0.370131,1.059313],"trend_3bar":"MIXED","projected_rvol":0.73512},"flow":{"window_s":30,"trades":222,"trade_rate":7.4,"buy_vol":20626.0,"sell_vol":20079.0,"unclassified_vol":0.0,"imbalance":0.013438,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":1.86887},"context":{"vwap":10.71251,"price_vs_vwap_pct":1.035145,"ema9":10.730376,"ema20":10.715647,"ema_stack":true,"ema_warm":true,"hod":10.83,"dist_to_hod_pct":-0.060942,"dist_to_hod_atr":0.089001,"atr":0.074156,"spread_atr":0.13485,"own_change_pct":0.748363,"rel_strength_pct":{"SPY":0.726847,"IWM":0.72206}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.014235},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a509fa39e624","ts":"2026-09-21T13:51:04.799577+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":2.33,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.32,"vwap":8.1284,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":11.644,"trend":"flat","recent_slope_pct":-0.3563,"volatility":"unknown"},"price":8.32,"volume":{"bars":21,"last_bar_volume":14627.0,"baseline_avg":17948.95,"bar_rvol":0.814922,"raw_accel":-0.289538,"smooth_accel":-0.166674,"accel_momentum":-0.171429,"rvol_3bar":[1.424254,1.155976,0.814922],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":995.0,"sell_vol":4016.0,"unclassified_vol":0.0,"imbalance":-0.602874,"bid":8.32,"ask":8.4,"spread_pct":0.956938,"quote_size_imbalance":null,"quote_age_s":3.541667},"context":{"vwap":8.127779,"price_vs_vwap_pct":2.364992,"ema9":8.325201,"ema20":8.19336,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.030303,"dist_to_hod_atr":1.09821,"atr":0.236749,"spread_atr":0.337911,"own_change_pct":1.457542,"rel_strength_pct":{"SPY":1.461662,"IWM":1.387397}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.491295},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"32fc01da07dd","ts":"2026-09-21T13:51:04.799577+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.8835,"target":8.995,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":121.8,"room_to_5d_high_atr":-0.69},"price":8.97,"vwap":8.9684,"ext_from_open_pct":-0.55,"max_ext_allowed_pct":4.0,"volume_pace":2.703,"trend":"flat","recent_slope_pct":-0.1069,"volatility":"medium"},"price":8.97,"volume":{"bars":21,"last_bar_volume":5993.0,"baseline_avg":70849.05,"bar_rvol":0.084588,"raw_accel":-0.710818,"smooth_accel":-0.780227,"accel_momentum":-0.127331,"rvol_3bar":[0.193683,0.282008,0.084588],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":2892.0,"sell_vol":1901.0,"unclassified_vol":0.0,"imbalance":0.20676,"bid":8.96,"ask":8.97,"spread_pct":0.111545,"quote_size_imbalance":null,"quote_age_s":3.773951},"context":{"vwap":8.968422,"price_vs_vwap_pct":0.017596,"ema9":8.99269,"ema20":8.980372,"ema_stack":false,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-1.047987,"dist_to_hod_atr":1.23921,"atr":0.076662,"spread_atr":0.130443,"own_change_pct":-0.830105,"rel_strength_pct":{"SPY":-0.825986,"IWM":-0.90025}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.017489},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b1c586edaf2b","ts":"2026-09-21T13:51:09.839251+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.01 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":2.03,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3534,"vwap":8.1288,"ext_from_open_pct":4.29,"max_ext_allowed_pct":4.0,"volume_pace":11.62,"trend":"flat","recent_slope_pct":-0.2768,"volatility":"unknown"},"price":8.3534,"volume":{"bars":21,"last_bar_volume":14627.0,"baseline_avg":17948.95,"bar_rvol":0.814922,"raw_accel":-0.289538,"smooth_accel":-0.166674,"accel_momentum":-0.171429,"rvol_3bar":[1.424254,1.155976,0.814922],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":1073.0,"sell_vol":4488.0,"unclassified_vol":0.0,"imbalance":-0.614098,"bid":8.32,"ask":8.4,"spread_pct":0.956938,"quote_size_imbalance":null,"quote_age_s":4.251881},"context":{"vwap":8.127779,"price_vs_vwap_pct":2.775928,"ema9":8.325201,"ema20":8.19336,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.641026,"dist_to_hod_atr":0.957132,"atr":0.236749,"spread_atr":0.337911,"own_change_pct":1.457542,"rel_strength_pct":{"SPY":1.461662,"IWM":1.387397}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.500442},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"48e447061f73","ts":"2026-09-21T13:51:09.839251+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.96 below VWAP $8.97","plan":{"state":"PASS","setup":"","stop":8.8735,"target":8.995,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":120.9,"room_to_5d_high_atr":-0.66},"price":8.96,"vwap":8.9684,"ext_from_open_pct":-0.67,"max_ext_allowed_pct":4.0,"volume_pace":2.692,"trend":"flat","recent_slope_pct":-0.1292,"volatility":"medium"},"price":8.96,"volume":{"bars":21,"last_bar_volume":5993.0,"baseline_avg":70849.05,"bar_rvol":0.084588,"raw_accel":-0.710818,"smooth_accel":-0.780227,"accel_momentum":-0.127331,"rvol_3bar":[0.193683,0.282008,0.084588],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":2581.0,"sell_vol":1389.0,"unclassified_vol":0.0,"imbalance":0.300252,"bid":8.96,"ask":8.97,"spread_pct":0.111545,"quote_size_imbalance":null,"quote_age_s":1.521587},"context":{"vwap":8.968422,"price_vs_vwap_pct":-0.093906,"ema9":8.99269,"ema20":8.980372,"ema_stack":false,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-1.158301,"dist_to_hod_atr":1.369653,"atr":0.076662,"spread_atr":0.130443,"own_change_pct":-0.830105,"rel_strength_pct":{"SPY":-0.825986,"IWM":-0.90025}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.025398},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"efd1c5b05edf","ts":"2026-09-21T13:51:09.839251+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.71,"vwap":5.6302,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":2.261,"trend":"flat","recent_slope_pct":0.0997,"volatility":"unknown"},"price":5.71,"volume":{"bars":21,"last_bar_volume":116362.0,"baseline_avg":175849.4,"bar_rvol":0.661714,"raw_accel":-0.350854,"smooth_accel":-0.463198,"accel_momentum":0.212691,"rvol_3bar":[0.147842,1.020401,0.661714],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":12933.0,"sell_vol":4606.0,"unclassified_vol":0.0,"imbalance":0.474771,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":1.074569},"context":{"vwap":5.630111,"price_vs_vwap_pct":1.418961,"ema9":5.685444,"ema20":5.654181,"ema_stack":true,"ema_warm":true,"hod":5.725,"dist_to_hod_pct":-0.262009,"dist_to_hod_atr":0.349129,"atr":0.042964,"spread_atr":0.232752,"own_change_pct":-0.260717,"rel_strength_pct":{"SPY":-0.256598,"IWM":-0.330862}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.314162},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0e7b3a5ff13c","ts":"2026-09-21T13:51:14.863666+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.5935,"target":6.07,"target_label":"range_20d_high","reward_risk":3.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.695,"vwap":5.6307,"ext_from_open_pct":2.8,"max_ext_allowed_pct":3.0,"volume_pace":2.269,"trend":"flat","recent_slope_pct":0.047,"volatility":"unknown"},"price":5.695,"volume":{"bars":21,"last_bar_volume":116362.0,"baseline_avg":175849.4,"bar_rvol":0.661714,"raw_accel":-0.350854,"smooth_accel":-0.463198,"accel_momentum":0.212691,"rvol_3bar":[0.147842,1.020401,0.661714],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":13569.0,"sell_vol":29692.0,"unclassified_vol":0.0,"imbalance":-0.372691,"bid":5.69,"ask":5.7,"spread_pct":0.175593,"quote_size_imbalance":null,"quote_age_s":1.402332},"context":{"vwap":5.630111,"price_vs_vwap_pct":1.152536,"ema9":5.685444,"ema20":5.654181,"ema_stack":true,"ema_warm":true,"hod":5.725,"dist_to_hod_pct":-0.524017,"dist_to_hod_atr":0.698257,"atr":0.042964,"spread_atr":0.232752,"own_change_pct":-0.260717,"rel_strength_pct":{"SPY":-0.256598,"IWM":-0.330862}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.246615},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"68b5df1e8be6","ts":"2026-09-21T13:51:24.934828+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.8956,"target":8.995,"target_label":"premarket_high","reward_risk":0.15,"pos_in_5d_range_pct":122.9,"room_to_5d_high_atr":-0.73},"price":8.9821,"vwap":8.9685,"ext_from_open_pct":-0.42,"max_ext_allowed_pct":3.0,"volume_pace":2.696,"trend":"flat","recent_slope_pct":-0.0799,"volatility":"medium"},"price":8.9821,"volume":{"bars":21,"last_bar_volume":5993.0,"baseline_avg":70849.05,"bar_rvol":0.084588,"raw_accel":-0.710818,"smooth_accel":-0.780227,"accel_momentum":-0.127331,"rvol_3bar":[0.193683,0.282008,0.084588],"trend_3bar":"MIXED","projected_rvol":0.720397},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":7225.0,"sell_vol":14234.0,"unclassified_vol":0.0,"imbalance":-0.326623,"bid":8.98,"ask":8.99,"spread_pct":0.111297,"quote_size_imbalance":null,"quote_age_s":0.088007},"context":{"vwap":8.968422,"price_vs_vwap_pct":0.152514,"ema9":8.99269,"ema20":8.980372,"ema_stack":false,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.914506,"dist_to_hod_atr":1.081373,"atr":0.076662,"spread_atr":0.130443,"own_change_pct":-0.830105,"rel_strength_pct":{"SPY":-0.825986,"IWM":-0.90025}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.027628},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"639eb2e802af","ts":"2026-09-21T13:51:29.996810+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":1.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3633,"vwap":8.1292,"ext_from_open_pct":4.41,"max_ext_allowed_pct":5.0,"volume_pace":11.454,"trend":"flat","recent_slope_pct":-0.2532,"volatility":"unknown"},"price":8.3633,"volume":{"bars":21,"last_bar_volume":14627.0,"baseline_avg":17948.95,"bar_rvol":0.814922,"raw_accel":-0.289538,"smooth_accel":-0.166674,"accel_momentum":-0.171429,"rvol_3bar":[1.424254,1.155976,0.814922],"trend_3bar":"DECELERATING","projected_rvol":0.247283},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":418.0,"sell_vol":1801.0,"unclassified_vol":0.0,"imbalance":-0.623254,"bid":8.32,"ask":8.4,"spread_pct":0.956938,"quote_size_imbalance":null,"quote_age_s":3.653036},"context":{"vwap":8.127779,"price_vs_vwap_pct":2.897733,"ema9":8.325201,"ema20":8.19336,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.525641,"dist_to_hod_atr":0.915316,"atr":0.236749,"spread_atr":0.337911,"own_change_pct":1.457542,"rel_strength_pct":{"SPY":1.461662,"IWM":1.387397}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.507903},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"4a2b0a784c7b","ts":"2026-09-21T13:51:40.064650+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.67 below VWAP $9.69","plan":{"state":"PASS","setup":"","stop":9.5723,"target":9.74,"target_label":"premarket_high","reward_risk":0.7,"pos_in_5d_range_pct":100.2,"room_to_5d_high_atr":-0.0},"price":9.6708,"vwap":9.687,"ext_from_open_pct":-0.2,"max_ext_allowed_pct":3.0,"volume_pace":1.761,"trend":"flat","recent_slope_pct":0.0275,"volatility":"medium"},"price":9.6708,"volume":{"bars":21,"last_bar_volume":28615.0,"baseline_avg":30103.15,"bar_rvol":0.950565,"raw_accel":-0.618345,"smooth_accel":1.033917,"accel_momentum":0.07206,"rvol_3bar":[0.239812,2.702673,0.950565],"trend_3bar":"MIXED","projected_rvol":0.284361},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":2165.0,"sell_vol":1177.0,"unclassified_vol":0.0,"imbalance":0.295631,"bid":9.7,"ask":9.71,"spread_pct":0.10304,"quote_size_imbalance":null,"quote_age_s":0.307936},"context":{"vwap":9.686995,"price_vs_vwap_pct":-0.167187,"ema9":9.677346,"ema20":9.671924,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.619532,"dist_to_hod_atr":2.791644,"atr":0.057027,"spread_atr":0.175355,"own_change_pct":0.310238,"rel_strength_pct":{"SPY":0.314357,"IWM":0.240093}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.281017},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"69754d565fa5","ts":"2026-09-21T13:51:45.124258+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $8.01 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":1.97,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.36,"vwap":8.1293,"ext_from_open_pct":4.37,"max_ext_allowed_pct":4.0,"volume_pace":11.328,"trend":"flat","recent_slope_pct":-0.2611,"volatility":"unknown"},"price":8.36,"volume":{"bars":21,"last_bar_volume":14627.0,"baseline_avg":17948.95,"bar_rvol":0.814922,"raw_accel":-0.289538,"smooth_accel":-0.166674,"accel_momentum":-0.171429,"rvol_3bar":[1.424254,1.155976,0.814922],"trend_3bar":"DECELERATING","projected_rvol":0.18246},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":317.0,"sell_vol":418.0,"unclassified_vol":0.0,"imbalance":-0.137415,"bid":8.32,"ask":8.4,"spread_pct":0.956938,"quote_size_imbalance":null,"quote_age_s":18.780484},"context":{"vwap":8.127779,"price_vs_vwap_pct":2.857131,"ema9":8.325201,"ema20":8.19336,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.564103,"dist_to_hod_atr":0.929254,"atr":0.236749,"spread_atr":0.337911,"own_change_pct":1.457542,"rel_strength_pct":{"SPY":1.461662,"IWM":1.387397}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.111983},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0662c72b9fa4","ts":"2026-09-21T13:51:45.124258+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.58,"target":9.74,"target_label":"premarket_high","reward_risk":0.28,"pos_in_5d_range_pct":108.8,"room_to_5d_high_atr":-0.09},"price":9.705,"vwap":9.6871,"ext_from_open_pct":0.15,"max_ext_allowed_pct":3.0,"volume_pace":1.755,"trend":"flat","recent_slope_pct":0.098,"volatility":"medium"},"price":9.705,"volume":{"bars":21,"last_bar_volume":28615.0,"baseline_avg":30103.15,"bar_rvol":0.950565,"raw_accel":-0.618345,"smooth_accel":1.033917,"accel_momentum":0.07206,"rvol_3bar":[0.239812,2.702673,0.950565],"trend_3bar":"MIXED","projected_rvol":0.273811},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2248.0,"sell_vol":1577.0,"unclassified_vol":0.0,"imbalance":0.175425,"bid":9.7,"ask":9.71,"spread_pct":0.10304,"quote_size_imbalance":null,"quote_age_s":0.497428},"context":{"vwap":9.686995,"price_vs_vwap_pct":0.185864,"ema9":9.677346,"ema20":9.671924,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.271617,"dist_to_hod_atr":2.191931,"atr":0.057027,"spread_atr":0.175355,"own_change_pct":0.310238,"rel_strength_pct":{"SPY":0.314357,"IWM":0.240093}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.166753},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0b298023fe04","ts":"2026-09-21T13:51:50.183324+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":2.28,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3256,"vwap":8.1292,"ext_from_open_pct":3.94,"max_ext_allowed_pct":4.0,"volume_pace":11.285,"trend":"flat","recent_slope_pct":-0.343,"volatility":"unknown"},"price":8.3256,"volume":{"bars":21,"last_bar_volume":14627.0,"baseline_avg":17948.95,"bar_rvol":0.814922,"raw_accel":-0.289538,"smooth_accel":-0.166674,"accel_momentum":-0.171429,"rvol_3bar":[1.424254,1.155976,0.814922],"trend_3bar":"DECELERATING","projected_rvol":0.164732},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":113.0,"sell_vol":424.0,"unclassified_vol":0.0,"imbalance":-0.579143,"bid":8.32,"ask":8.36,"spread_pct":0.479616,"quote_size_imbalance":null,"quote_age_s":1.224266},"context":{"vwap":8.127779,"price_vs_vwap_pct":2.433891,"ema9":8.325201,"ema20":8.19336,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.965035,"dist_to_hod_atr":1.074556,"atr":0.236749,"spread_atr":0.168955,"own_change_pct":1.457542,"rel_strength_pct":{"SPY":1.461662,"IWM":1.387397}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.471957},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ca0257a7a498","ts":"2026-09-21T13:51:55.207291+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":2.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.315,"vwap":8.1297,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":11.268,"trend":"flat","recent_slope_pct":-0.3683,"volatility":"unknown"},"price":8.315,"volume":{"bars":21,"last_bar_volume":14627.0,"baseline_avg":17948.95,"bar_rvol":0.814922,"raw_accel":-0.289538,"smooth_accel":-0.166674,"accel_momentum":-0.171429,"rvol_3bar":[1.424254,1.155976,0.814922],"trend_3bar":"DECELERATING","projected_rvol":0.202298},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":287.0,"sell_vol":916.0,"unclassified_vol":0.0,"imbalance":-0.52286,"bid":8.28,"ask":8.35,"spread_pct":0.841852,"quote_size_imbalance":null,"quote_age_s":3.959014},"context":{"vwap":8.127779,"price_vs_vwap_pct":2.303474,"ema9":8.325201,"ema20":8.19336,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.088578,"dist_to_hod_atr":1.119329,"atr":0.236749,"spread_atr":0.295672,"own_change_pct":1.457542,"rel_strength_pct":{"SPY":1.461662,"IWM":1.387397}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.42609},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"c67cdad8706d","ts":"2026-09-21T13:52:00.267615+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.18,"target":5.31,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":89.9,"room_to_5d_high_atr":0.32},"price":5.24,"vwap":5.2536,"ext_from_open_pct":-1.5,"max_ext_allowed_pct":3.0,"volume_pace":0.382,"trend":"flat","recent_slope_pct":-0.1754,"volatility":"medium"},"price":5.24,"volume":{"bars":21,"last_bar_volume":1404.0,"baseline_avg":1946.55,"bar_rvol":0.721276,"raw_accel":0.181818,"smooth_accel":1.202139,"accel_momentum":-2.436341,"rvol_3bar":[0.758428,0.598045,0.721276],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1611.0,"sell_vol":2844.0,"unclassified_vol":0.0,"imbalance":-0.276768,"bid":5.22,"ask":5.25,"spread_pct":0.573066,"quote_size_imbalance":null,"quote_age_s":1.835502},"context":{"vwap":5.25474,"price_vs_vwap_pct":-0.280503,"ema9":5.26484,"ema20":5.260126,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.503759,"dist_to_hod_atr":2.124924,"atr":0.037648,"spread_atr":0.796847,"own_change_pct":-0.704438,"rel_strength_pct":{"SPY":-0.706394,"IWM":-0.757037}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.199626},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ac169dcb08c1","ts":"2026-09-21T13:52:10.395300+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 45.5s, plan says WATCH; stop 8.93, target 9.02 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.02; breakout: 1-min close > 9.07 on >= 102345 sh","plan":{"state":"WATCH","setup":"","stop":8.9335,"target":9.02,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.02,"vwap":8.9694,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":2.737,"trend":"flat","recent_slope_pct":0.0766,"volatility":"medium"},"price":9.02,"volume":{"bars":22,"last_bar_volume":78091.0,"baseline_avg":46264.05,"bar_rvol":1.687941,"raw_accel":5.751765,"smooth_accel":0.205951,"accel_momentum":0.986178,"rvol_3bar":[0.282008,0.084588,1.687941],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":163,"trade_rate":5.433333,"buy_vol":39773.0,"sell_vol":18678.0,"unclassified_vol":0.0,"imbalance":0.360901,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.009307},"context":{"vwap":8.968929,"price_vs_vwap_pct":0.569423,"ema9":8.991052,"ema20":8.980765,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.496415,"dist_to_hod_atr":0.601947,"atr":0.074757,"spread_atr":0.133766,"own_change_pct":-0.448753,"rel_strength_pct":{"SPY":-0.450709,"IWM":-0.501352}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.609179},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"74060733ff33","ts":"2026-09-21T13:52:10.395300+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 55.5s, plan says PASS; stop 5.63, target 6.07 (range_20d_high), R:R 6.72; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6311,"target":6.07,"target_label":"range_20d_high","reward_risk":6.72,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.688,"vwap":5.6324,"ext_from_open_pct":2.67,"max_ext_allowed_pct":4.0,"volume_pace":2.228,"trend":"flat","recent_slope_pct":-0.0418,"volatility":"unknown"},"price":5.688,"volume":{"bars":22,"last_bar_volume":89709.0,"baseline_avg":151143.3,"bar_rvol":0.593536,"raw_accel":-0.229052,"smooth_accel":-0.060879,"accel_momentum":0.402319,"rvol_3bar":[1.020401,0.661714,0.593536],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":40043.0,"sell_vol":8600.0,"unclassified_vol":0.0,"imbalance":0.646403,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.074848},"context":{"vwap":5.63179,"price_vs_vwap_pct":0.998082,"ema9":5.689356,"ema20":5.659021,"ema_stack":false,"ema_warm":true,"hod":5.725,"dist_to_hod_pct":-0.646288,"dist_to_hod_atr":0.886784,"atr":0.041724,"spread_atr":0.239671,"own_change_pct":0.101769,"rel_strength_pct":{"SPY":0.099813,"IWM":0.04917}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.383664},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"71012b30c06c","ts":"2026-09-21T13:52:15.509859+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 60.6s, plan says WATCH; stop 5.66, target 6.07 (range_20d_high), R:R 5.83; breakout: 1-min close > 5.73 on >= 253845 sh","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":5.83,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.72,"vwap":5.633,"ext_from_open_pct":3.25,"max_ext_allowed_pct":4.0,"volume_pace":2.235,"trend":"flat","recent_slope_pct":0.0705,"volatility":"unknown"},"price":5.72,"volume":{"bars":22,"last_bar_volume":89709.0,"baseline_avg":151143.3,"bar_rvol":0.593536,"raw_accel":-0.229052,"smooth_accel":-0.060879,"accel_momentum":0.402319,"rvol_3bar":[1.020401,0.661714,0.593536],"trend_3bar":"DECELERATING","projected_rvol":1.496282},"flow":{"window_s":30,"trades":125,"trade_rate":4.166667,"buy_vol":58860.0,"sell_vol":14644.0,"unclassified_vol":0.0,"imbalance":0.601545,"bid":5.72,"ask":5.73,"spread_pct":0.174672,"quote_size_imbalance":null,"quote_age_s":0.182167},"context":{"vwap":5.63179,"price_vs_vwap_pct":1.566285,"ema9":5.689356,"ema20":5.659021,"ema_stack":true,"ema_warm":true,"hod":5.725,"dist_to_hod_pct":-0.087336,"dist_to_hod_atr":0.119836,"atr":0.041724,"spread_atr":0.239671,"own_change_pct":0.101769,"rel_strength_pct":{"SPY":0.099813,"IWM":0.04917}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.357039},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"75ae8b6702dd","ts":"2026-09-21T13:52:30.864805+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":5.83,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.72,"vwap":5.6336,"ext_from_open_pct":3.25,"max_ext_allowed_pct":3.0,"volume_pace":2.225,"trend":"flat","recent_slope_pct":0.0705,"volatility":"unknown"},"price":5.72,"volume":{"bars":22,"last_bar_volume":89709.0,"baseline_avg":151143.3,"bar_rvol":0.593536,"raw_accel":-0.229052,"smooth_accel":-0.060879,"accel_momentum":0.402319,"rvol_3bar":[1.020401,0.661714,0.593536],"trend_3bar":"DECELERATING","projected_rvol":1.077889},"flow":{"window_s":30,"trades":160,"trade_rate":5.333333,"buy_vol":57603.0,"sell_vol":26203.0,"unclassified_vol":0.0,"imbalance":0.374675,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.869554},"context":{"vwap":5.63179,"price_vs_vwap_pct":1.566285,"ema9":5.689356,"ema20":5.659021,"ema_stack":true,"ema_warm":true,"hod":5.725,"dist_to_hod_pct":-0.087336,"dist_to_hod_atr":0.119836,"atr":0.041724,"spread_atr":0.239671,"own_change_pct":0.101769,"rel_strength_pct":{"SPY":0.099813,"IWM":0.04917}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.222383},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"21b5f203e5f0","ts":"2026-09-21T13:52:56.193560+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.2022,"target":5.31,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":92.9,"room_to_5d_high_atr":0.23},"price":5.2622,"vwap":5.2536,"ext_from_open_pct":-1.09,"max_ext_allowed_pct":4.0,"volume_pace":0.367,"trend":"flat","recent_slope_pct":-0.0603,"volatility":"medium"},"price":5.2622,"volume":{"bars":22,"last_bar_volume":4539.0,"baseline_avg":1366.45,"bar_rvol":3.321746,"raw_accel":2.232906,"smooth_accel":1.337266,"accel_momentum":0.135127,"rvol_3bar":[0.598045,0.721276,3.321746],"trend_3bar":"ACCELERATING","projected_rvol":0.035944},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":16.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":5.22,"ask":5.25,"spread_pct":0.573066,"quote_size_imbalance":null,"quote_age_s":2.141387},"context":{"vwap":5.253586,"price_vs_vwap_pct":0.163966,"ema9":5.259872,"ema20":5.258209,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.086466,"dist_to_hod_atr":1.528439,"atr":0.037816,"spread_atr":0.793307,"own_change_pct":-0.757576,"rel_strength_pct":{"SPY":-0.759531,"IWM":-0.810174}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.321746},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2eedd3ab9c86","ts":"2026-09-21T13:53:01.307522+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 96.4s, plan says PASS; stop 8.92, target 9.06 (ceiling), R:R 0.64; R:R 0.64 < 2.0 at 9.01; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9235,"target":9.065,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":8.9696,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":3.0,"volume_pace":2.651,"trend":"flat","recent_slope_pct":0.1097,"volatility":"medium"},"price":9.01,"volume":{"bars":23,"last_bar_volume":25469.0,"baseline_avg":46778.45,"bar_rvol":0.54446,"raw_accel":-0.673855,"smooth_accel":0.649199,"accel_momentum":0.443248,"rvol_3bar":[0.084588,1.687941,0.54446],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":1820.0,"sell_vol":3283.0,"unclassified_vol":0.0,"imbalance":-0.286694,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":1.42941},"context":{"vwap":8.969571,"price_vs_vwap_pct":0.450732,"ema9":8.994842,"ema20":8.983549,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.606729,"dist_to_hod_atr":0.755238,"atr":0.072825,"spread_atr":0.137316,"own_change_pct":0.049969,"rel_strength_pct":{"SPY":-0.000882,"IWM":0.037035}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.156094},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5ae9348fbf77","ts":"2026-09-21T13:53:06.373939+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.175,"target":5.31,"target_label":"ceiling","reward_risk":1.25,"pos_in_5d_range_pct":89.3,"room_to_5d_high_atr":0.35},"price":5.235,"vwap":5.2535,"ext_from_open_pct":-1.6,"max_ext_allowed_pct":4.0,"volume_pace":0.365,"trend":"flat","recent_slope_pct":-0.0718,"volatility":"medium"},"price":5.235,"volume":{"bars":23,"last_bar_volume":46.0,"baseline_avg":1546.05,"bar_rvol":0.029753,"raw_accel":-0.989866,"smooth_accel":0.582299,"accel_momentum":-0.754968,"rvol_3bar":[0.721276,3.321746,0.029753],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":17.0,"sell_vol":110.0,"unclassified_vol":0.0,"imbalance":-0.732283,"bid":5.22,"ask":5.25,"spread_pct":0.573066,"quote_size_imbalance":null,"quote_age_s":1.158841},"context":{"vwap":5.253585,"price_vs_vwap_pct":-0.353767,"ema9":5.260337,"ema20":5.258589,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.597744,"dist_to_hod_atr":2.293698,"atr":0.037058,"spread_atr":0.809541,"own_change_pct":-0.337121,"rel_strength_pct":{"SPY":-0.387973,"IWM":-0.350055}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.021788},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8fe2623ed35f","ts":"2026-09-21T13:53:11.449233+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 106.5s, plan says WATCH; stop 8.93, target 9.02 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.02; breakout: 1-min close > 9.07 on >= 99557 sh","plan":{"state":"WATCH","setup":"","stop":8.9285,"target":9.015,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":8.9697,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":2.64,"trend":"flat","recent_slope_pct":0.1208,"volatility":"medium"},"price":9.015,"volume":{"bars":23,"last_bar_volume":25469.0,"baseline_avg":46778.45,"bar_rvol":0.54446,"raw_accel":-0.673855,"smooth_accel":0.649199,"accel_momentum":0.443248,"rvol_3bar":[0.084588,1.687941,0.54446],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":4191.0,"sell_vol":2535.0,"unclassified_vol":0.0,"imbalance":0.246209,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":1.8e-05},"context":{"vwap":8.969571,"price_vs_vwap_pct":0.506476,"ema9":8.994842,"ema20":8.983549,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.551572,"dist_to_hod_atr":0.68658,"atr":0.072825,"spread_atr":0.137316,"own_change_pct":0.049969,"rel_strength_pct":{"SPY":-0.000882,"IWM":0.037035}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.134051},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5d37254192e6","ts":"2026-09-21T13:53:11.449233+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":5.43,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7238,"vwap":5.6352,"ext_from_open_pct":3.32,"max_ext_allowed_pct":4.0,"volume_pace":2.201,"trend":"flat","recent_slope_pct":0.0991,"volatility":"unknown"},"price":5.7238,"volume":{"bars":23,"last_bar_volume":96216.0,"baseline_avg":145769.8,"bar_rvol":0.660054,"raw_accel":0.072535,"smooth_accel":0.152997,"accel_momentum":0.213876,"rvol_3bar":[0.661714,0.593536,0.660054],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":64331.0,"sell_vol":5309.0,"unclassified_vol":0.0,"imbalance":0.84753,"bid":5.72,"ask":5.73,"spread_pct":0.174672,"quote_size_imbalance":null,"quote_age_s":0.950765},"context":{"vwap":5.63382,"price_vs_vwap_pct":1.59714,"ema9":5.695304,"ema20":5.664743,"ema_stack":true,"ema_warm":true,"hod":5.73,"dist_to_hod_pct":-0.108202,"dist_to_hod_atr":0.148526,"atr":0.041744,"spread_atr":0.239558,"own_change_pct":0.658254,"rel_strength_pct":{"SPY":0.607402,"IWM":0.645319}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.559416},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"156d4e96ea43","ts":"2026-09-21T13:53:11.449233+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.2015,"target":5.31,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":92.8,"room_to_5d_high_atr":0.23},"price":5.2615,"vwap":5.2536,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":4.0,"volume_pace":0.364,"trend":"flat","recent_slope_pct":0.0291,"volatility":"medium"},"price":5.2615,"volume":{"bars":23,"last_bar_volume":46.0,"baseline_avg":1546.05,"bar_rvol":0.029753,"raw_accel":-0.989866,"smooth_accel":0.582299,"accel_momentum":-0.754968,"rvol_3bar":[0.721276,3.321746,0.029753],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":18.0,"sell_vol":110.0,"unclassified_vol":0.0,"imbalance":-0.71875,"bid":5.22,"ask":5.25,"spread_pct":0.573066,"quote_size_imbalance":null,"quote_age_s":1.75958},"context":{"vwap":5.253585,"price_vs_vwap_pct":0.15065,"ema9":5.260337,"ema20":5.258589,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.099624,"dist_to_hod_atr":1.578604,"atr":0.037058,"spread_atr":0.809541,"own_change_pct":-0.337121,"rel_strength_pct":{"SPY":-0.387973,"IWM":-0.350055}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.021385},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c177dbcde6d9","ts":"2026-09-21T13:53:16.559230+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.18,"target":5.31,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":89.9,"room_to_5d_high_atr":0.32},"price":5.24,"vwap":5.2536,"ext_from_open_pct":-1.5,"max_ext_allowed_pct":4.0,"volume_pace":0.363,"trend":"flat","recent_slope_pct":-0.0527,"volatility":"medium"},"price":5.24,"volume":{"bars":23,"last_bar_volume":46.0,"baseline_avg":1546.05,"bar_rvol":0.029753,"raw_accel":-0.989866,"smooth_accel":0.582299,"accel_momentum":-0.754968,"rvol_3bar":[0.721276,3.321746,0.029753],"trend_3bar":"MIXED","projected_rvol":0.358574},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":21.0,"sell_vol":148.0,"unclassified_vol":0.0,"imbalance":-0.751479,"bid":5.22,"ask":5.25,"spread_pct":0.573066,"quote_size_imbalance":null,"quote_age_s":1.016554},"context":{"vwap":5.253585,"price_vs_vwap_pct":-0.258594,"ema9":5.260337,"ema20":5.258589,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.503759,"dist_to_hod_atr":2.158775,"atr":0.037058,"spread_atr":0.809541,"own_change_pct":-0.337121,"rel_strength_pct":{"SPY":-0.387973,"IWM":-0.350055}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.022359},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"859abde267e1","ts":"2026-09-21T13:53:21.647258+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.8498,"target":8.28,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":121.9,"room_to_5d_high_atr":-0.69},"price":8.13,"vwap":8.0988,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":3.0,"volume_pace":1.554,"trend":"flat","recent_slope_pct":-0.2439,"volatility":"high"},"price":8.13,"volume":{"bars":23,"last_bar_volume":6795.0,"baseline_avg":20388.1,"bar_rvol":0.333283,"raw_accel":0.333131,"smooth_accel":-0.35404,"accel_momentum":-0.512608,"rvol_3bar":[0.484788,0.130652,0.333283],"trend_3bar":"MIXED","projected_rvol":0.111613},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":260.0,"sell_vol":992.0,"unclassified_vol":0.0,"imbalance":-0.584665,"bid":8.1,"ask":8.16,"spread_pct":0.738007,"quote_size_imbalance":null,"quote_age_s":0.591603},"context":{"vwap":8.098701,"price_vs_vwap_pct":0.386475,"ema9":8.134601,"ema20":8.117105,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.969399,"dist_to_hod_atr":1.962622,"atr":0.126769,"spread_atr":0.473301,"own_change_pct":0.004902,"rel_strength_pct":{"SPY":-0.045949,"IWM":-0.008032}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.194859},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c9770b7f252e","ts":"2026-09-21T13:53:26.719460+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":5.31,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.725,"vwap":5.6353,"ext_from_open_pct":3.34,"max_ext_allowed_pct":3.0,"volume_pace":2.18,"trend":"flat","recent_slope_pct":0.1033,"volatility":"unknown"},"price":5.725,"volume":{"bars":23,"last_bar_volume":96216.0,"baseline_avg":145769.8,"bar_rvol":0.660054,"raw_accel":0.072535,"smooth_accel":0.152997,"accel_momentum":0.213876,"rvol_3bar":[0.661714,0.593536,0.660054],"trend_3bar":"MIXED","projected_rvol":1.003715},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":61559.0,"sell_vol":4099.0,"unclassified_vol":0.0,"imbalance":0.875141,"bid":5.72,"ask":5.73,"spread_pct":0.174672,"quote_size_imbalance":null,"quote_age_s":1.400164},"context":{"vwap":5.63382,"price_vs_vwap_pct":1.618439,"ema9":5.695304,"ema20":5.664743,"ema_stack":true,"ema_warm":true,"hod":5.73,"dist_to_hod_pct":-0.08726,"dist_to_hod_atr":0.119779,"atr":0.041744,"spread_atr":0.239558,"own_change_pct":0.658254,"rel_strength_pct":{"SPY":0.607402,"IWM":0.645319}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.577641},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f268631e94e5","ts":"2026-09-21T13:53:26.719460+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.18,"target":5.31,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":92.6,"room_to_5d_high_atr":0.24},"price":5.26,"vwap":5.2535,"ext_from_open_pct":-1.13,"max_ext_allowed_pct":4.0,"volume_pace":0.369,"trend":"flat","recent_slope_pct":0.0234,"volatility":"medium"},"price":5.26,"volume":{"bars":23,"last_bar_volume":46.0,"baseline_avg":1546.05,"bar_rvol":0.029753,"raw_accel":-0.989866,"smooth_accel":0.582299,"accel_momentum":-0.754968,"rvol_3bar":[0.721276,3.321746,0.029753],"trend_3bar":"MIXED","projected_rvol":1.795223},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":1088.0,"sell_vol":148.0,"unclassified_vol":0.0,"imbalance":0.760518,"bid":5.24,"ask":5.28,"spread_pct":0.760456,"quote_size_imbalance":null,"quote_age_s":0.416409},"context":{"vwap":5.253585,"price_vs_vwap_pct":0.122098,"ema9":5.260337,"ema20":5.258589,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.12782,"dist_to_hod_atr":1.619081,"atr":0.037058,"spread_atr":1.079387,"own_change_pct":-0.337121,"rel_strength_pct":{"SPY":-0.387973,"IWM":-0.350055}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.022628},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"246d8eb53ff8","ts":"2026-09-21T13:53:31.815439+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 126.9s, plan says PASS; stop 8.92, target 9.06 (ceiling), R:R 0.64; R:R 0.64 < 2.0 at 9.01; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9235,"target":9.065,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":8.9698,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":4.0,"volume_pace":2.61,"trend":"flat","recent_slope_pct":0.1097,"volatility":"medium"},"price":9.01,"volume":{"bars":23,"last_bar_volume":25469.0,"baseline_avg":46778.45,"bar_rvol":0.54446,"raw_accel":-0.673855,"smooth_accel":0.649199,"accel_momentum":0.443248,"rvol_3bar":[0.084588,1.687941,0.54446],"trend_3bar":"MIXED","projected_rvol":0.390976},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":7481.0,"sell_vol":2024.0,"unclassified_vol":0.0,"imbalance":0.574119,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":2.702565},"context":{"vwap":8.969571,"price_vs_vwap_pct":0.450732,"ema9":8.994842,"ema20":8.983549,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.606729,"dist_to_hod_atr":0.755238,"atr":0.072825,"spread_atr":0.137316,"own_change_pct":0.049969,"rel_strength_pct":{"SPY":-0.000882,"IWM":0.037035}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.312585},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ecf7ad7b4bc5","ts":"2026-09-21T13:53:52.126414+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.6578,"target":6.07,"target_label":"range_20d_high","reward_risk":6.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.715,"vwap":5.6362,"ext_from_open_pct":3.16,"max_ext_allowed_pct":4.0,"volume_pace":2.166,"trend":"flat","recent_slope_pct":0.0683,"volatility":"unknown"},"price":5.715,"volume":{"bars":23,"last_bar_volume":96216.0,"baseline_avg":145769.8,"bar_rvol":0.660054,"raw_accel":0.072535,"smooth_accel":0.152997,"accel_momentum":0.213876,"rvol_3bar":[0.661714,0.593536,0.660054],"trend_3bar":"MIXED","projected_rvol":0.874599},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":6961.0,"sell_vol":41935.0,"unclassified_vol":0.0,"imbalance":-0.715273,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.037294},"context":{"vwap":5.63382,"price_vs_vwap_pct":1.44094,"ema9":5.695304,"ema20":5.664743,"ema_stack":true,"ema_warm":true,"hod":5.73,"dist_to_hod_pct":-0.26178,"dist_to_hod_atr":0.359337,"atr":0.041744,"spread_atr":0.239558,"own_change_pct":0.658254,"rel_strength_pct":{"SPY":0.607402,"IWM":0.645319}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.472119},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c76f6d1efc5b","ts":"2026-09-21T13:53:57.199292+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.69 below VWAP $9.69","plan":{"state":"PASS","setup":"","stop":9.58,"target":9.74,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":105.0,"room_to_5d_high_atr":-0.05},"price":9.69,"vwap":9.692,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":1.923,"trend":"flat","recent_slope_pct":-0.0464,"volatility":"medium"},"price":9.69,"volume":{"bars":23,"last_bar_volume":117780.0,"baseline_avg":21587.75,"bar_rvol":5.455872,"raw_accel":17.609575,"smooth_accel":0.549774,"accel_momentum":-0.78572,"rvol_3bar":[0.950565,0.25321,5.455872],"trend_3bar":"MIXED","projected_rvol":0.666567},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":2717.0,"sell_vol":4348.0,"unclassified_vol":0.0,"imbalance":-0.230856,"bid":9.68,"ask":9.69,"spread_pct":0.103252,"quote_size_imbalance":null,"quote_age_s":0.153094},"context":{"vwap":9.691875,"price_vs_vwap_pct":-0.019348,"ema9":9.681941,"ema20":9.675038,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.424212,"dist_to_hod_atr":2.42591,"atr":0.05771,"spread_atr":0.173279,"own_change_pct":0.361944,"rel_strength_pct":{"SPY":0.311093,"IWM":0.34901}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-1.259523},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"00e52b937e2a","ts":"2026-09-21T13:53:57.199292+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.6578,"target":6.07,"target_label":"range_20d_high","reward_risk":6.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.715,"vwap":5.6361,"ext_from_open_pct":3.16,"max_ext_allowed_pct":3.0,"volume_pace":2.159,"trend":"flat","recent_slope_pct":0.0683,"volatility":"unknown"},"price":5.715,"volume":{"bars":23,"last_bar_volume":96216.0,"baseline_avg":145769.8,"bar_rvol":0.660054,"raw_accel":0.072535,"smooth_accel":0.152997,"accel_momentum":0.213876,"rvol_3bar":[0.661714,0.593536,0.660054],"trend_3bar":"MIXED","projected_rvol":0.808647},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":7110.0,"sell_vol":40068.0,"unclassified_vol":0.0,"imbalance":-0.698588,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":1.322741},"context":{"vwap":5.63382,"price_vs_vwap_pct":1.44094,"ema9":5.695304,"ema20":5.664743,"ema_stack":true,"ema_warm":true,"hod":5.73,"dist_to_hod_pct":-0.26178,"dist_to_hod_atr":0.359337,"atr":0.041744,"spread_atr":0.239558,"own_change_pct":0.658254,"rel_strength_pct":{"SPY":0.607402,"IWM":0.645319}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.461106},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9056ef844800","ts":"2026-09-21T13:54:02.229679+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $8.01 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.26,"target":9.09,"target_label":"range_20d_high","reward_risk":4.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.42,"vwap":8.1377,"ext_from_open_pct":5.12,"max_ext_allowed_pct":4.0,"volume_pace":10.595,"trend":"flat","recent_slope_pct":0.2484,"volatility":"unknown"},"price":8.42,"volume":{"bars":24,"last_bar_volume":1238.0,"baseline_avg":11396.1,"bar_rvol":0.108634,"raw_accel":-0.877231,"smooth_accel":-0.749313,"accel_momentum":-0.186321,"rvol_3bar":[0.307044,0.861247,0.108634],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":387.0,"sell_vol":75.0,"unclassified_vol":0.0,"imbalance":0.675325,"bid":8.36,"ask":8.44,"spread_pct":0.952381,"quote_size_imbalance":null,"quote_age_s":3.208261},"context":{"vwap":8.137652,"price_vs_vwap_pct":3.469649,"ema9":8.348699,"ema20":8.239267,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-1.864802,"dist_to_hod_atr":0.735883,"atr":0.217426,"spread_atr":0.367942,"own_change_pct":-1.782864,"rel_strength_pct":{"SPY":-1.838865,"IWM":-1.763583}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.073363},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9973adaf11fb","ts":"2026-09-21T13:54:02.229679+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.34x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":9.9,"target":11.0,"target_label":"premarket_high","reward_risk":0.12,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.88,"vwap":10.721,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":0.342,"trend":"flat","recent_slope_pct":0.1397,"volatility":"unknown"},"price":10.88,"volume":{"bars":24,"last_bar_volume":50158.0,"baseline_avg":56310.2,"bar_rvol":0.890744,"raw_accel":0.184005,"smooth_accel":0.196089,"accel_momentum":-0.131919,"rvol_3bar":[1.740867,0.766072,0.890744],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":176,"trade_rate":5.866667,"buy_vol":33439.0,"sell_vol":9409.0,"unclassified_vol":0.0,"imbalance":0.56082,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.139959},"context":{"vwap":10.720476,"price_vs_vwap_pct":1.488035,"ema9":10.811558,"ema20":10.764782,"ema_stack":true,"ema_warm":true,"hod":10.9,"dist_to_hod_pct":-0.183486,"dist_to_hod_atr":0.152382,"atr":0.131249,"spread_atr":0.076191,"own_change_pct":1.537486,"rel_strength_pct":{"SPY":1.481484,"IWM":1.556767}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.499547},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7e351cd126e1","ts":"2026-09-21T13:54:07.270989+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.24,"target":9.09,"target_label":"range_20d_high","reward_risk":4.31,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.4,"vwap":8.1384,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":10.586,"trend":"flat","recent_slope_pct":0.2008,"volatility":"unknown"},"price":8.4,"volume":{"bars":24,"last_bar_volume":1238.0,"baseline_avg":11396.1,"bar_rvol":0.108634,"raw_accel":-0.877231,"smooth_accel":-0.749313,"accel_momentum":-0.186321,"rvol_3bar":[0.307044,0.861247,0.108634],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":392.0,"sell_vol":1114.0,"unclassified_vol":0.0,"imbalance":-0.479416,"bid":8.36,"ask":8.44,"spread_pct":0.952381,"quote_size_imbalance":null,"quote_age_s":8.249571},"context":{"vwap":8.137652,"price_vs_vwap_pct":3.223878,"ema9":8.348699,"ema20":8.239267,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.097902,"dist_to_hod_atr":0.827869,"atr":0.217426,"spread_atr":0.367942,"own_change_pct":-1.782864,"rel_strength_pct":{"SPY":-1.838865,"IWM":-1.763583}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.052081},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"78a36d3a6a46","ts":"2026-09-21T13:54:07.270989+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.58,"target":9.74,"target_label":"premarket_high","reward_risk":0.22,"pos_in_5d_range_pct":110.3,"room_to_5d_high_atr":-0.1},"price":9.711,"vwap":9.6919,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":1.912,"trend":"flat","recent_slope_pct":0.0366,"volatility":"medium"},"price":9.711,"volume":{"bars":24,"last_bar_volume":13918.0,"baseline_avg":26728.95,"bar_rvol":0.520709,"raw_accel":-0.881831,"smooth_accel":0.248876,"accel_momentum":-0.300898,"rvol_3bar":[0.25321,5.455872,0.520709],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":1722.0,"sell_vol":3498.0,"unclassified_vol":0.0,"imbalance":-0.34023,"bid":9.67,"ask":9.68,"spread_pct":0.103359,"quote_size_imbalance":null,"quote_age_s":0.639352},"context":{"vwap":9.691932,"price_vs_vwap_pct":0.196743,"ema9":9.682553,"ema20":9.675987,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.21058,"dist_to_hod_atr":2.135257,"atr":0.055731,"spread_atr":0.179433,"own_change_pct":0.103359,"rel_strength_pct":{"SPY":0.047358,"IWM":0.12264}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.177161},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"994e51856fcd","ts":"2026-09-21T13:54:12.303009+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.67 below VWAP $9.69","plan":{"state":"PASS","setup":"","stop":9.5715,"target":9.74,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":100.0,"room_to_5d_high_atr":0.0},"price":9.67,"vwap":9.6919,"ext_from_open_pct":-0.21,"max_ext_allowed_pct":3.0,"volume_pace":1.906,"trend":"flat","recent_slope_pct":-0.048,"volatility":"medium"},"price":9.67,"volume":{"bars":24,"last_bar_volume":13918.0,"baseline_avg":26728.95,"bar_rvol":0.520709,"raw_accel":-0.881831,"smooth_accel":0.248876,"accel_momentum":-0.300898,"rvol_3bar":[0.25321,5.455872,0.520709],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":1817.0,"sell_vol":3520.0,"unclassified_vol":0.0,"imbalance":-0.319093,"bid":9.67,"ask":9.68,"spread_pct":0.103359,"quote_size_imbalance":null,"quote_age_s":0.000831},"context":{"vwap":9.691932,"price_vs_vwap_pct":-0.226289,"ema9":9.682553,"ema20":9.675987,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.62767,"dist_to_hod_atr":2.870934,"atr":0.055731,"spread_atr":0.179433,"own_change_pct":0.103359,"rel_strength_pct":{"SPY":0.047358,"IWM":0.12264}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.166155},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"deaf73bb8847","ts":"2026-09-21T13:54:12.303009+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":5.18,"target":5.31,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":92.6,"room_to_5d_high_atr":0.24},"price":5.26,"vwap":5.2535,"ext_from_open_pct":-1.13,"max_ext_allowed_pct":3.0,"volume_pace":0.357,"trend":"flat","recent_slope_pct":0.0468,"volatility":"medium"},"price":5.26,"volume":{"bars":24,"last_bar_volume":1246.0,"baseline_avg":1517.25,"bar_rvol":0.821223,"raw_accel":2.28489,"smooth_accel":0.415979,"accel_momentum":-0.16632,"rvol_3bar":[3.321746,0.029753,0.821223],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":10.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":5.24,"ask":5.28,"spread_pct":0.760456,"quote_size_imbalance":null,"quote_age_s":45.999958},"context":{"vwap":5.253547,"price_vs_vwap_pct":0.122828,"ema9":5.26027,"ema20":5.258724,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.12782,"dist_to_hod_atr":1.650441,"atr":0.036354,"spread_atr":1.100294,"own_change_pct":-0.189753,"rel_strength_pct":{"SPY":-0.245754,"IWM":-0.170472}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.821223},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a30f8b21b950","ts":"2026-09-21T13:54:17.333525+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7296,"target":8.95,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.36},"price":8.87,"vwap":8.8778,"ext_from_open_pct":1.6,"max_ext_allowed_pct":3.0,"volume_pace":2.568,"trend":"flat","recent_slope_pct":-0.1234,"volatility":"high"},"price":8.87,"volume":{"bars":24,"last_bar_volume":3398.0,"baseline_avg":25318.65,"bar_rvol":0.134209,"raw_accel":-0.533242,"smooth_accel":-0.330232,"accel_momentum":-0.239695,"rvol_3bar":[0.529253,0.27385,0.134209],"trend_3bar":"DECELERATING","projected_rvol":3.217781},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":12435.0,"sell_vol":12277.0,"unclassified_vol":0.0,"imbalance":0.006394,"bid":8.86,"ask":8.91,"spread_pct":0.562746,"quote_size_imbalance":null,"quote_age_s":0.654313},"context":{"vwap":8.877879,"price_vs_vwap_pct":-0.088747,"ema9":8.905954,"ema20":8.891436,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.205072,"dist_to_hod_atr":1.958324,"atr":0.102128,"spread_atr":0.489581,"own_change_pct":0.33935,"rel_strength_pct":{"SPY":0.283349,"IWM":0.358631}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.000858},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"4fc5e397c157","ts":"2026-09-21T13:54:17.333525+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.6479,"target":6.07,"target_label":"range_20d_high","reward_risk":6.4,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.705,"vwap":5.6366,"ext_from_open_pct":2.98,"max_ext_allowed_pct":3.0,"volume_pace":2.141,"trend":"flat","recent_slope_pct":0.0434,"volatility":"unknown"},"price":5.705,"volume":{"bars":24,"last_bar_volume":112766.0,"baseline_avg":143948.2,"bar_rvol":0.783379,"raw_accel":0.172009,"smooth_accel":-0.074707,"accel_momentum":-0.227704,"rvol_3bar":[0.593536,0.660054,0.783379],"trend_3bar":"ACCELERATING","projected_rvol":0.487285},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":6715.0,"sell_vol":20868.0,"unclassified_vol":0.0,"imbalance":-0.513106,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":1.578341},"context":{"vwap":5.636202,"price_vs_vwap_pct":1.22065,"ema9":5.700244,"ema20":5.670005,"ema_stack":true,"ema_warm":true,"hod":5.73,"dist_to_hod_pct":-0.4363,"dist_to_hod_atr":0.611818,"atr":0.040862,"spread_atr":0.244727,"own_change_pct":0.352638,"rel_strength_pct":{"SPY":0.296637,"IWM":0.371919}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.401956},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b4a8aeb9f2cf","ts":"2026-09-21T13:54:22.391622+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 177.5s, plan says WATCH; stop 8.93, target 9.02 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.02; breakout: 1-min close > 9.07 on >= 96660 sh","plan":{"state":"WATCH","setup":"","stop":8.9334,"target":9.0199,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.0199,"vwap":8.9703,"ext_from_open_pct":-0.0,"max_ext_allowed_pct":4.0,"volume_pace":2.552,"trend":"flat","recent_slope_pct":0.1449,"volatility":"medium"},"price":9.0199,"volume":{"bars":24,"last_bar_volume":20032.0,"baseline_avg":44682.55,"bar_rvol":0.448318,"raw_accel":-0.213475,"smooth_accel":1.972319,"accel_momentum":1.32312,"rvol_3bar":[1.687941,0.54446,0.448318],"trend_3bar":"DECELERATING","projected_rvol":0.546379},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":6506.0,"sell_vol":3349.0,"unclassified_vol":0.0,"imbalance":0.320345,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.741075},"context":{"vwap":8.970031,"price_vs_vwap_pct":0.555951,"ema9":8.994873,"ema20":8.98464,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.497518,"dist_to_hod_atr":0.640287,"atr":0.070437,"spread_atr":0.14197,"own_change_pct":0.111297,"rel_strength_pct":{"SPY":0.055296,"IWM":0.130578}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.143616},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"4147b644741a","ts":"2026-09-21T13:54:22.391622+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.6578,"target":6.07,"target_label":"range_20d_high","reward_risk":6.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.715,"vwap":5.6368,"ext_from_open_pct":3.16,"max_ext_allowed_pct":3.0,"volume_pace":2.139,"trend":"flat","recent_slope_pct":0.0784,"volatility":"unknown"},"price":5.715,"volume":{"bars":24,"last_bar_volume":112766.0,"baseline_avg":143948.2,"bar_rvol":0.783379,"raw_accel":0.172009,"smooth_accel":-0.074707,"accel_momentum":-0.227704,"rvol_3bar":[0.593536,0.660054,0.783379],"trend_3bar":"ACCELERATING","projected_rvol":0.566357},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":14455.0,"sell_vol":17976.0,"unclassified_vol":0.0,"imbalance":-0.108569,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.278017},"context":{"vwap":5.636202,"price_vs_vwap_pct":1.398074,"ema9":5.700244,"ema20":5.670005,"ema_stack":true,"ema_warm":true,"hod":5.73,"dist_to_hod_pct":-0.26178,"dist_to_hod_atr":0.367091,"atr":0.040862,"spread_atr":0.244727,"own_change_pct":0.352638,"rel_strength_pct":{"SPY":0.296637,"IWM":0.371919}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.085051},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0c885256437a","ts":"2026-09-21T13:54:27.455352+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.2517,"target":6.55,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":99.7,"room_to_5d_high_atr":0.01},"price":6.415,"vwap":6.4104,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":2.236,"trend":"flat","recent_slope_pct":0.2735,"volatility":"high"},"price":6.415,"volume":{"bars":24,"last_bar_volume":33543.0,"baseline_avg":30743.25,"bar_rvol":1.091069,"raw_accel":-0.715503,"smooth_accel":14.01889,"accel_momentum":0.566123,"rvol_3bar":[0.598392,4.434569,1.091069],"trend_3bar":"MIXED","projected_rvol":0.048337},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":101.0,"sell_vol":579.0,"unclassified_vol":0.0,"imbalance":-0.702941,"bid":6.4,"ask":6.43,"spread_pct":0.467654,"quote_size_imbalance":null,"quote_age_s":2.268106},"context":{"vwap":6.410436,"price_vs_vwap_pct":0.071193,"ema9":6.388295,"ema20":6.399639,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-2.80303,"dist_to_hod_atr":2.151643,"atr":0.085981,"spread_atr":0.348915,"own_change_pct":0.84192,"rel_strength_pct":{"SPY":0.785919,"IWM":0.861201}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.766957},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a27c7321bbf1","ts":"2026-09-21T13:54:32.515379+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $8.01 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.26,"target":9.09,"target_label":"range_20d_high","reward_risk":4.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.42,"vwap":8.1385,"ext_from_open_pct":5.12,"max_ext_allowed_pct":4.0,"volume_pace":10.411,"trend":"flat","recent_slope_pct":0.2484,"volatility":"unknown"},"price":8.42,"volume":{"bars":24,"last_bar_volume":1238.0,"baseline_avg":11396.1,"bar_rvol":0.108634,"raw_accel":-0.877231,"smooth_accel":-0.749313,"accel_momentum":-0.186321,"rvol_3bar":[0.307044,0.861247,0.108634],"trend_3bar":"MIXED","projected_rvol":0.209851},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":91.0,"sell_vol":1187.0,"unclassified_vol":0.0,"imbalance":-0.85759,"bid":8.35,"ask":8.43,"spread_pct":0.953516,"quote_size_imbalance":null,"quote_age_s":13.088475},"context":{"vwap":8.137652,"price_vs_vwap_pct":3.469649,"ema9":8.348699,"ema20":8.239267,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-1.864802,"dist_to_hod_atr":0.735883,"atr":0.217426,"spread_atr":0.367942,"own_change_pct":-1.782864,"rel_strength_pct":{"SPY":-1.838865,"IWM":-1.763583}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.093163},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ba692089b352","ts":"2026-09-21T13:54:32.515379+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.41 below VWAP $6.41","plan":{"state":"PASS","setup":"","stop":6.2465,"target":6.42,"target_label":"prev_day_high","reward_risk":0.06,"pos_in_5d_range_pct":99.4,"room_to_5d_high_atr":0.02},"price":6.4098,"vwap":6.4104,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":2.228,"trend":"flat","recent_slope_pct":0.2573,"volatility":"high"},"price":6.4098,"volume":{"bars":24,"last_bar_volume":33543.0,"baseline_avg":30743.25,"bar_rvol":1.091069,"raw_accel":-0.715503,"smooth_accel":14.01889,"accel_momentum":0.566123,"rvol_3bar":[0.598392,4.434569,1.091069],"trend_3bar":"MIXED","projected_rvol":0.041235},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":103.0,"sell_vol":584.0,"unclassified_vol":0.0,"imbalance":-0.700146,"bid":6.4,"ask":6.43,"spread_pct":0.467654,"quote_size_imbalance":null,"quote_age_s":2.517327},"context":{"vwap":6.410436,"price_vs_vwap_pct":-0.009925,"ema9":6.388295,"ema20":6.399639,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-2.881818,"dist_to_hod_atr":2.212121,"atr":0.085981,"spread_atr":0.348915,"own_change_pct":0.84192,"rel_strength_pct":{"SPY":0.785919,"IWM":0.861201}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.763907},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dba6690337b6","ts":"2026-09-21T13:54:42.651237+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":5.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7195,"vwap":5.6371,"ext_from_open_pct":3.24,"max_ext_allowed_pct":4.0,"volume_pace":2.119,"trend":"flat","recent_slope_pct":0.0942,"volatility":"unknown"},"price":5.7195,"volume":{"bars":24,"last_bar_volume":112766.0,"baseline_avg":143948.2,"bar_rvol":0.783379,"raw_accel":0.172009,"smooth_accel":-0.074707,"accel_momentum":-0.227704,"rvol_3bar":[0.593536,0.660054,0.783379],"trend_3bar":"ACCELERATING","projected_rvol":0.462023},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":23353.0,"sell_vol":10054.0,"unclassified_vol":0.0,"imbalance":0.39809,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":1.331553},"context":{"vwap":5.636202,"price_vs_vwap_pct":1.477915,"ema9":5.700244,"ema20":5.670005,"ema_stack":true,"ema_warm":true,"hod":5.73,"dist_to_hod_pct":-0.183246,"dist_to_hod_atr":0.256963,"atr":0.040862,"spread_atr":0.244727,"own_change_pct":0.352638,"rel_strength_pct":{"SPY":0.296637,"IWM":0.371919}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.311856},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cbf750764376","ts":"2026-09-21T13:54:42.651237+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.36x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2,"target":5.48,"target_label":"premarket_high","reward_risk":2.5,"pos_in_5d_range_pct":95.3,"room_to_5d_high_atr":0.15},"price":5.28,"vwap":5.2539,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.356,"trend":"flat","recent_slope_pct":0.1228,"volatility":"medium"},"price":5.28,"volume":{"bars":24,"last_bar_volume":1246.0,"baseline_avg":1517.25,"bar_rvol":0.821223,"raw_accel":2.28489,"smooth_accel":0.415979,"accel_momentum":-0.16632,"rvol_3bar":[3.321746,0.029753,0.821223],"trend_3bar":"MIXED","projected_rvol":0.737105},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":710.0,"sell_vol":75.0,"unclassified_vol":0.0,"imbalance":0.808917,"bid":5.24,"ask":5.28,"spread_pct":0.760456,"quote_size_imbalance":null,"quote_age_s":0.741662},"context":{"vwap":5.253547,"price_vs_vwap_pct":0.503523,"ema9":5.26027,"ema20":5.258724,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.75188,"dist_to_hod_atr":1.100294,"atr":0.036354,"spread_atr":1.100294,"own_change_pct":-0.189753,"rel_strength_pct":{"SPY":-0.245754,"IWM":-0.170472}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.664301},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e27e9c3a62bf","ts":"2026-09-21T13:54:47.711541+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 202.8s, plan says PASS; stop 8.92, target 9.06 (ceiling), R:R 0.64; R:R 0.64 < 2.0 at 9.01; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9235,"target":9.065,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":8.9705,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":3.0,"volume_pace":2.529,"trend":"flat","recent_slope_pct":0.1229,"volatility":"medium"},"price":9.01,"volume":{"bars":24,"last_bar_volume":20032.0,"baseline_avg":44682.55,"bar_rvol":0.448318,"raw_accel":-0.213475,"smooth_accel":1.972319,"accel_momentum":1.32312,"rvol_3bar":[1.687941,0.54446,0.448318],"trend_3bar":"DECELERATING","projected_rvol":0.620834},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":8621.0,"sell_vol":10925.0,"unclassified_vol":0.0,"imbalance":-0.117876,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.34316},"context":{"vwap":8.970031,"price_vs_vwap_pct":0.445584,"ema9":8.994873,"ema20":8.98464,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.606729,"dist_to_hod_atr":0.780837,"atr":0.070437,"spread_atr":0.14197,"own_change_pct":0.111297,"rel_strength_pct":{"SPY":0.055296,"IWM":0.130578}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.052846},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"eb4ea738ff13","ts":"2026-09-21T13:54:47.711541+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.6595,"target":6.07,"target_label":"range_20d_high","reward_risk":6.18,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7167,"vwap":5.6371,"ext_from_open_pct":3.19,"max_ext_allowed_pct":3.0,"volume_pace":2.112,"trend":"flat","recent_slope_pct":0.0844,"volatility":"unknown"},"price":5.7167,"volume":{"bars":24,"last_bar_volume":112766.0,"baseline_avg":143948.2,"bar_rvol":0.783379,"raw_accel":0.172009,"smooth_accel":-0.074707,"accel_momentum":-0.227704,"rvol_3bar":[0.593536,0.660054,0.783379],"trend_3bar":"ACCELERATING","projected_rvol":0.422062},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":21882.0,"sell_vol":6166.0,"unclassified_vol":0.0,"imbalance":0.560325,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.504055},"context":{"vwap":5.636202,"price_vs_vwap_pct":1.428237,"ema9":5.700244,"ema20":5.670005,"ema_stack":true,"ema_warm":true,"hod":5.73,"dist_to_hod_pct":-0.232112,"dist_to_hod_atr":0.325487,"atr":0.040862,"spread_atr":0.244727,"own_change_pct":0.352638,"rel_strength_pct":{"SPY":0.296637,"IWM":0.371919}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.438947},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5cea4125e5cd","ts":"2026-09-21T13:54:52.735221+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":5.31,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.725,"vwap":5.6373,"ext_from_open_pct":3.34,"max_ext_allowed_pct":4.0,"volume_pace":2.107,"trend":"flat","recent_slope_pct":0.1134,"volatility":"unknown"},"price":5.725,"volume":{"bars":24,"last_bar_volume":112766.0,"baseline_avg":143948.2,"bar_rvol":0.783379,"raw_accel":0.172009,"smooth_accel":-0.074707,"accel_momentum":-0.227704,"rvol_3bar":[0.593536,0.660054,0.783379],"trend_3bar":"ACCELERATING","projected_rvol":0.408705},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":16997.0,"sell_vol":4187.0,"unclassified_vol":0.0,"imbalance":0.604702,"bid":5.72,"ask":5.73,"spread_pct":0.174672,"quote_size_imbalance":null,"quote_age_s":3.949303},"context":{"vwap":5.636202,"price_vs_vwap_pct":1.575499,"ema9":5.700244,"ema20":5.670005,"ema_stack":true,"ema_warm":true,"hod":5.73,"dist_to_hod_pct":-0.08726,"dist_to_hod_atr":0.122364,"atr":0.040862,"spread_atr":0.244727,"own_change_pct":0.352638,"rel_strength_pct":{"SPY":0.296637,"IWM":0.371919}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.473711},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"62d94a0a3bf7","ts":"2026-09-21T13:54:52.735221+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.35x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.18,"target":5.31,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":92.6,"room_to_5d_high_atr":0.24},"price":5.26,"vwap":5.2538,"ext_from_open_pct":-1.13,"max_ext_allowed_pct":3.0,"volume_pace":0.353,"trend":"flat","recent_slope_pct":0.0468,"volatility":"medium"},"price":5.26,"volume":{"bars":24,"last_bar_volume":1246.0,"baseline_avg":1517.25,"bar_rvol":0.821223,"raw_accel":2.28489,"smooth_accel":0.415979,"accel_momentum":-0.16632,"rvol_3bar":[3.321746,0.029753,0.821223],"trend_3bar":"MIXED","projected_rvol":0.603656},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":710.0,"sell_vol":85.0,"unclassified_vol":0.0,"imbalance":0.786164,"bid":5.24,"ask":5.28,"spread_pct":0.760456,"quote_size_imbalance":null,"quote_age_s":5.668942},"context":{"vwap":5.253547,"price_vs_vwap_pct":0.122828,"ema9":5.26027,"ema20":5.258724,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.12782,"dist_to_hod_atr":1.650441,"atr":0.036354,"spread_atr":1.100294,"own_change_pct":-0.189753,"rel_strength_pct":{"SPY":-0.245754,"IWM":-0.170472}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.645615},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"16e287b70f74","ts":"2026-09-21T13:55:02.859410+00:00","symbol":"KRRO","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.17 below VWAP $10.28","plan":{"state":"PASS","setup":"","stop":10.0683,"target":10.56,"target_label":"ceiling","reward_risk":3.83,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.17,"vwap":10.2831,"ext_from_open_pct":0.49,"max_ext_allowed_pct":3.0,"volume_pace":0.852,"trend":"flat","recent_slope_pct":-0.2919,"volatility":"unknown"},"price":10.17,"volume":{"bars":25,"last_bar_volume":997.0,"baseline_avg":1227.7,"bar_rvol":0.812088,"raw_accel":2.248351,"smooth_accel":-0.522694,"accel_momentum":0.171178,"rvol_3bar":[0.242328,0.242261,0.812088],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1076.0,"sell_vol":1224.0,"unclassified_vol":0.0,"imbalance":-0.064348,"bid":10.18,"ask":10.21,"spread_pct":0.294262,"quote_size_imbalance":null,"quote_age_s":0.286109},"context":{"vwap":10.285723,"price_vs_vwap_pct":-1.12508,"ema9":10.290635,"ema20":10.256258,"ema_stack":false,"ema_warm":true,"hod":10.77,"dist_to_hod_pct":-5.571031,"dist_to_hod_atr":3.121838,"atr":0.192194,"spread_atr":0.156092,"own_change_pct":-0.332869,"rel_strength_pct":{"SPY":-0.398056,"IWM":-0.383709}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.052256},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"490468e3d770","ts":"2026-09-21T13:55:02.859410+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.35x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":9.9,"target":11.0,"target_label":"premarket_high","reward_risk":0.07,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.925,"vwap":10.7295,"ext_from_open_pct":2.1,"max_ext_allowed_pct":3.0,"volume_pace":0.345,"trend":"flat","recent_slope_pct":0.1744,"volatility":"unknown"},"price":10.925,"volume":{"bars":25,"last_bar_volume":79040.0,"baseline_avg":49651.8,"bar_rvol":1.591886,"raw_accel":0.57582,"smooth_accel":-0.214083,"accel_momentum":-0.410172,"rvol_3bar":[0.766072,0.890744,1.591886],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":211,"trade_rate":7.033333,"buy_vol":26132.0,"sell_vol":9296.0,"unclassified_vol":0.0,"imbalance":0.475217,"bid":10.92,"ask":10.93,"spread_pct":0.091533,"quote_size_imbalance":null,"quote_age_s":0.165469},"context":{"vwap":10.727658,"price_vs_vwap_pct":1.839564,"ema9":10.834246,"ema20":10.780041,"ema_stack":true,"ema_warm":true,"hod":10.93,"dist_to_hod_pct":-0.045746,"dist_to_hod_atr":0.037696,"atr":0.132638,"spread_atr":0.075393,"own_change_pct":1.439183,"rel_strength_pct":{"SPY":1.373996,"IWM":1.388343}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.756492},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ae9f058c50fd","ts":"2026-09-21T13:55:07.973949+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.2517,"target":6.55,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":99.7,"room_to_5d_high_atr":0.01},"price":6.415,"vwap":6.4104,"ext_from_open_pct":0.39,"max_ext_allowed_pct":3.0,"volume_pace":2.177,"trend":"flat","recent_slope_pct":0.13,"volatility":"high"},"price":6.415,"volume":{"bars":25,"last_bar_volume":697.0,"baseline_avg":31493.1,"bar_rvol":0.022132,"raw_accel":-0.979221,"smooth_accel":5.272386,"accel_momentum":-8.746504,"rvol_3bar":[4.434569,1.091069,0.022132],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":124.0,"sell_vol":578.0,"unclassified_vol":0.0,"imbalance":-0.646724,"bid":6.4,"ask":6.43,"spread_pct":0.467654,"quote_size_imbalance":null,"quote_age_s":0.014088},"context":{"vwap":6.410435,"price_vs_vwap_pct":0.071212,"ema9":6.391296,"ema20":6.399988,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-2.80303,"dist_to_hod_atr":2.283043,"atr":0.081032,"spread_atr":0.370223,"own_change_pct":0.78382,"rel_strength_pct":{"SPY":0.718633,"IWM":0.73298}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.014313},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"db6fbdd3b264","ts":"2026-09-21T13:55:07.973949+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 223.0s, plan says WATCH; stop 8.93, target 9.02 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.02; breakout: 1-min close > 9.07 on >= 94218 sh","plan":{"state":"WATCH","setup":"","stop":8.9285,"target":9.015,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":8.9706,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":2.5,"trend":"flat","recent_slope_pct":0.0733,"volatility":"medium"},"price":9.015,"volume":{"bars":25,"last_bar_volume":23742.0,"baseline_avg":43183.45,"bar_rvol":0.549794,"raw_accel":0.185204,"smooth_accel":-0.339335,"accel_momentum":-2.311654,"rvol_3bar":[0.54446,0.448318,0.549794],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":749.0,"sell_vol":6303.0,"unclassified_vol":0.0,"imbalance":-0.787578,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":2.132077},"context":{"vwap":8.97061,"price_vs_vwap_pct":0.494837,"ema9":8.998899,"ema20":8.987531,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.551572,"dist_to_hod_atr":0.740205,"atr":0.067549,"spread_atr":0.148041,"own_change_pct":0.326074,"rel_strength_pct":{"SPY":0.260886,"IWM":0.275234}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.433006},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4df57c00404b","ts":"2026-09-21T13:55:13.048290+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":5.83,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.72,"vwap":5.6378,"ext_from_open_pct":3.25,"max_ext_allowed_pct":3.0,"volume_pace":2.093,"trend":"flat","recent_slope_pct":0.0453,"volatility":"unknown"},"price":5.72,"volume":{"bars":25,"last_bar_volume":67173.0,"baseline_avg":142413.45,"bar_rvol":0.471676,"raw_accel":-0.404315,"smooth_accel":-0.283319,"accel_momentum":-0.208612,"rvol_3bar":[0.660054,0.783379,0.471676],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":114,"trade_rate":3.8,"buy_vol":19356.0,"sell_vol":13212.0,"unclassified_vol":0.0,"imbalance":0.188651,"bid":5.72,"ask":5.73,"spread_pct":0.174672,"quote_size_imbalance":null,"quote_age_s":0.461103},"context":{"vwap":5.637535,"price_vs_vwap_pct":1.462789,"ema9":5.703195,"ema20":5.67429,"ema_stack":true,"ema_warm":true,"hod":5.73,"dist_to_hod_pct":-0.17452,"dist_to_hod_atr":0.250311,"atr":0.03995,"spread_atr":0.250311,"own_change_pct":0.175285,"rel_strength_pct":{"SPY":0.110097,"IWM":0.124445}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.088982},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8d91a1e2a915","ts":"2026-09-21T13:55:23.188289+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.40 below VWAP $6.41","plan":{"state":"PASS","setup":"","stop":6.2372,"target":6.42,"target_label":"prev_day_high","reward_risk":0.12,"pos_in_5d_range_pct":98.9,"room_to_5d_high_atr":0.03},"price":6.4005,"vwap":6.4104,"ext_from_open_pct":0.16,"max_ext_allowed_pct":3.0,"volume_pace":2.157,"trend":"flat","recent_slope_pct":0.0848,"volatility":"high"},"price":6.4005,"volume":{"bars":25,"last_bar_volume":697.0,"baseline_avg":31493.1,"bar_rvol":0.022132,"raw_accel":-0.979221,"smooth_accel":5.272386,"accel_momentum":-8.746504,"rvol_3bar":[4.434569,1.091069,0.022132],"trend_3bar":"DECELERATING","projected_rvol":0.115354},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":227.0,"sell_vol":1187.0,"unclassified_vol":0.0,"imbalance":-0.678925,"bid":6.4,"ask":6.43,"spread_pct":0.467654,"quote_size_imbalance":null,"quote_age_s":15.228428},"context":{"vwap":6.410435,"price_vs_vwap_pct":-0.154981,"ema9":6.391296,"ema20":6.399988,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-3.022727,"dist_to_hod_atr":2.461985,"atr":0.081032,"spread_atr":0.370223,"own_change_pct":0.78382,"rel_strength_pct":{"SPY":0.718633,"IWM":0.73298}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.015026},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"eba310a1dd9e","ts":"2026-09-21T13:55:28.252775+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.2531,"target":6.55,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":99.8,"room_to_5d_high_atr":0.01},"price":6.4164,"vwap":6.4104,"ext_from_open_pct":0.41,"max_ext_allowed_pct":3.0,"volume_pace":2.152,"trend":"flat","recent_slope_pct":0.1344,"volatility":"high"},"price":6.4164,"volume":{"bars":25,"last_bar_volume":697.0,"baseline_avg":31493.1,"bar_rvol":0.022132,"raw_accel":-0.979221,"smooth_accel":5.272386,"accel_momentum":-8.746504,"rvol_3bar":[4.434569,1.091069,0.022132],"trend_3bar":"DECELERATING","projected_rvol":0.143026},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":228.0,"sell_vol":1893.0,"unclassified_vol":0.0,"imbalance":-0.785007,"bid":6.4,"ask":6.42,"spread_pct":0.312012,"quote_size_imbalance":null,"quote_age_s":0.886547},"context":{"vwap":6.410435,"price_vs_vwap_pct":0.093052,"ema9":6.391296,"ema20":6.399988,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-2.781818,"dist_to_hod_atr":2.265766,"atr":0.081032,"spread_atr":0.246815,"own_change_pct":0.78382,"rel_strength_pct":{"SPY":0.718633,"IWM":0.73298}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.017374},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"f7df38bfd9e2","ts":"2026-09-21T13:55:28.252775+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 243.3s, plan says PASS; stop 8.92, target 9.06 (ceiling), R:R 0.62; R:R 0.62 < 2.0 at 9.01; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9245,"target":9.065,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.011,"vwap":8.971,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":4.0,"volume_pace":2.49,"trend":"flat","recent_slope_pct":0.0644,"volatility":"medium"},"price":9.011,"volume":{"bars":25,"last_bar_volume":23742.0,"baseline_avg":43183.45,"bar_rvol":0.549794,"raw_accel":0.185204,"smooth_accel":-0.339335,"accel_momentum":-2.311654,"rvol_3bar":[0.54446,0.448318,0.549794],"trend_3bar":"MIXED","projected_rvol":0.799343},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":11832.0,"sell_vol":4907.0,"unclassified_vol":0.0,"imbalance":0.413705,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.32764},"context":{"vwap":8.97061,"price_vs_vwap_pct":0.450247,"ema9":8.998899,"ema20":8.987531,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.595698,"dist_to_hod_atr":0.799422,"atr":0.067549,"spread_atr":0.148041,"own_change_pct":0.326074,"rel_strength_pct":{"SPY":0.260886,"IWM":0.275234}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.227452},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1637ad862741","ts":"2026-09-21T13:55:33.311896+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.40 below VWAP $6.41","plan":{"state":"PASS","setup":"","stop":6.2367,"target":6.42,"target_label":"prev_day_high","reward_risk":0.12,"pos_in_5d_range_pct":98.9,"room_to_5d_high_atr":0.03},"price":6.4,"vwap":6.4104,"ext_from_open_pct":0.16,"max_ext_allowed_pct":3.0,"volume_pace":2.147,"trend":"flat","recent_slope_pct":0.0832,"volatility":"high"},"price":6.4,"volume":{"bars":25,"last_bar_volume":697.0,"baseline_avg":31493.1,"bar_rvol":0.022132,"raw_accel":-0.979221,"smooth_accel":5.272386,"accel_momentum":-8.746504,"rvol_3bar":[4.434569,1.091069,0.022132],"trend_3bar":"DECELERATING","projected_rvol":0.170433},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":109.0,"sell_vol":2184.0,"unclassified_vol":0.0,"imbalance":-0.904928,"bid":6.4,"ask":6.42,"spread_pct":0.312012,"quote_size_imbalance":null,"quote_age_s":0.2952},"context":{"vwap":6.410435,"price_vs_vwap_pct":-0.162781,"ema9":6.391296,"ema20":6.399988,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-3.030303,"dist_to_hod_atr":2.468155,"atr":0.081032,"spread_atr":0.246815,"own_change_pct":0.78382,"rel_strength_pct":{"SPY":0.718633,"IWM":0.73298}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.020028},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"5b7979344164","ts":"2026-09-21T13:55:33.311896+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 248.4s, plan says WATCH; stop 8.93, target 9.02 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.02; breakout: 1-min close > 9.07 on >= 94218 sh","plan":{"state":"WATCH","setup":"","stop":8.9285,"target":9.015,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":8.9711,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":2.487,"trend":"flat","recent_slope_pct":0.0733,"volatility":"medium"},"price":9.015,"volume":{"bars":25,"last_bar_volume":23742.0,"baseline_avg":43183.45,"bar_rvol":0.549794,"raw_accel":0.185204,"smooth_accel":-0.339335,"accel_momentum":-2.311654,"rvol_3bar":[0.54446,0.448318,0.549794],"trend_3bar":"MIXED","projected_rvol":0.816004},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":11635.0,"sell_vol":7846.0,"unclassified_vol":0.0,"imbalance":0.194497,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":2.746835},"context":{"vwap":8.97061,"price_vs_vwap_pct":0.494837,"ema9":8.998899,"ema20":8.987531,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.551572,"dist_to_hod_atr":0.740205,"atr":0.067549,"spread_atr":0.148041,"own_change_pct":0.326074,"rel_strength_pct":{"SPY":0.260886,"IWM":0.275234}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.106933},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e4107a20780c","ts":"2026-09-21T13:55:38.351146+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.2517,"target":6.55,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":99.7,"room_to_5d_high_atr":0.01},"price":6.415,"vwap":6.4105,"ext_from_open_pct":0.39,"max_ext_allowed_pct":3.0,"volume_pace":2.143,"trend":"flat","recent_slope_pct":0.13,"volatility":"high"},"price":6.415,"volume":{"bars":25,"last_bar_volume":697.0,"baseline_avg":31493.1,"bar_rvol":0.022132,"raw_accel":-0.979221,"smooth_accel":5.272386,"accel_momentum":-8.746504,"rvol_3bar":[4.434569,1.091069,0.022132],"trend_3bar":"DECELERATING","projected_rvol":0.211625},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":404.0,"sell_vol":3164.0,"unclassified_vol":0.0,"imbalance":-0.773543,"bid":6.4,"ask":6.42,"spread_pct":0.312012,"quote_size_imbalance":null,"quote_age_s":0.121635},"context":{"vwap":6.410435,"price_vs_vwap_pct":0.071212,"ema9":6.391296,"ema20":6.399988,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-2.80303,"dist_to_hod_atr":2.283043,"atr":0.081032,"spread_atr":0.246815,"own_change_pct":0.78382,"rel_strength_pct":{"SPY":0.718633,"IWM":0.73298}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.01712},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b053bdac4d6a","ts":"2026-09-21T13:55:38.351146+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 253.4s, plan says PASS; stop 8.92, target 9.06 (ceiling), R:R 0.64; R:R 0.64 < 2.0 at 9.01; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9235,"target":9.065,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":8.9711,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":3.0,"volume_pace":2.479,"trend":"flat","recent_slope_pct":0.0622,"volatility":"medium"},"price":9.01,"volume":{"bars":25,"last_bar_volume":23742.0,"baseline_avg":43183.45,"bar_rvol":0.549794,"raw_accel":0.185204,"smooth_accel":-0.339335,"accel_momentum":-2.311654,"rvol_3bar":[0.54446,0.448318,0.549794],"trend_3bar":"MIXED","projected_rvol":0.719905},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":11737.0,"sell_vol":6993.0,"unclassified_vol":0.0,"imbalance":0.253284,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.197305},"context":{"vwap":8.97061,"price_vs_vwap_pct":0.439099,"ema9":8.998899,"ema20":8.987531,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.606729,"dist_to_hod_atr":0.814226,"atr":0.067549,"spread_atr":0.148041,"own_change_pct":0.326074,"rel_strength_pct":{"SPY":0.260886,"IWM":0.275234}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.139254},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bb4dc6bb1e79","ts":"2026-09-21T13:55:48.412997+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.41 below VWAP $6.41","plan":{"state":"PASS","setup":"","stop":6.2467,"target":6.55,"target_label":"ceiling","reward_risk":0.86,"pos_in_5d_range_pct":99.4,"room_to_5d_high_atr":0.02},"price":6.41,"vwap":6.4104,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":2.13,"trend":"flat","recent_slope_pct":0.1144,"volatility":"high"},"price":6.41,"volume":{"bars":25,"last_bar_volume":697.0,"baseline_avg":31493.1,"bar_rvol":0.022132,"raw_accel":-0.979221,"smooth_accel":5.272386,"accel_momentum":-8.746504,"rvol_3bar":[4.434569,1.091069,0.022132],"trend_3bar":"DECELERATING","projected_rvol":0.175552},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":302.0,"sell_vol":3364.0,"unclassified_vol":0.0,"imbalance":-0.835243,"bid":6.41,"ask":6.42,"spread_pct":0.155885,"quote_size_imbalance":null,"quote_age_s":0.154656},"context":{"vwap":6.410435,"price_vs_vwap_pct":-0.006786,"ema9":6.391296,"ema20":6.399988,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-2.878788,"dist_to_hod_atr":2.344747,"atr":0.081032,"spread_atr":0.123408,"own_change_pct":0.78382,"rel_strength_pct":{"SPY":0.718633,"IWM":0.73298}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.018485},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"32dd8aac21a0","ts":"2026-09-21T13:55:58.465382+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.2567,"target":6.55,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":100.0,"room_to_5d_high_atr":0.0},"price":6.42,"vwap":6.4105,"ext_from_open_pct":0.47,"max_ext_allowed_pct":3.0,"volume_pace":2.118,"trend":"flat","recent_slope_pct":0.1456,"volatility":"high"},"price":6.42,"volume":{"bars":25,"last_bar_volume":697.0,"baseline_avg":31493.1,"bar_rvol":0.022132,"raw_accel":-0.979221,"smooth_accel":5.272386,"accel_momentum":-8.746504,"rvol_3bar":[4.434569,1.091069,0.022132],"trend_3bar":"DECELERATING","projected_rvol":0.175674},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":807.0,"sell_vol":2463.0,"unclassified_vol":0.0,"imbalance":-0.506422,"bid":6.41,"ask":6.43,"spread_pct":0.311526,"quote_size_imbalance":null,"quote_age_s":0.850059},"context":{"vwap":6.410435,"price_vs_vwap_pct":0.14921,"ema9":6.391296,"ema20":6.399988,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-2.727273,"dist_to_hod_atr":2.221339,"atr":0.081032,"spread_atr":0.246815,"own_change_pct":0.78382,"rel_strength_pct":{"SPY":0.718633,"IWM":0.73298}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.011208},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"6441b4b37a0c","ts":"2026-09-21T13:56:03.492518+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.25,"target":8.76,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":115.2,"room_to_5d_high_atr":-0.48},"price":8.545,"vwap":8.5288,"ext_from_open_pct":-0.87,"max_ext_allowed_pct":3.0,"volume_pace":1.761,"trend":"flat","recent_slope_pct":0.1466,"volatility":"medium"},"price":8.545,"volume":{"bars":26,"last_bar_volume":590.0,"baseline_avg":2885.9,"bar_rvol":0.204442,"raw_accel":-0.925155,"smooth_accel":0.058816,"accel_momentum":-0.845978,"rvol_3bar":[0.102536,3.129851,0.204442],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":235.0,"sell_vol":224.0,"unclassified_vol":0.0,"imbalance":0.023965,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":1.978463},"context":{"vwap":8.528826,"price_vs_vwap_pct":0.189642,"ema9":8.487843,"ema20":8.464358,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.213873,"dist_to_hod_atr":1.419673,"atr":0.073961,"spread_atr":0.135207,"own_change_pct":0.588928,"rel_strength_pct":{"SPY":0.540482,"IWM":0.620471}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.004899},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"46c2094efad9","ts":"2026-09-21T13:56:08.518878+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.51 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.25,"target":8.56,"target_label":"ceiling","reward_risk":0.19,"pos_in_5d_range_pct":112.6,"room_to_5d_high_atr":-0.4},"price":8.5115,"vwap":8.5288,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":3.0,"volume_pace":1.756,"trend":"flat","recent_slope_pct":0.0681,"volatility":"medium"},"price":8.5115,"volume":{"bars":26,"last_bar_volume":590.0,"baseline_avg":2885.9,"bar_rvol":0.204442,"raw_accel":-0.925155,"smooth_accel":0.058816,"accel_momentum":-0.845978,"rvol_3bar":[0.102536,3.129851,0.204442],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":284.0,"sell_vol":285.0,"unclassified_vol":0.0,"imbalance":-0.001757,"bid":8.54,"ask":8.56,"spread_pct":0.233918,"quote_size_imbalance":null,"quote_age_s":1.527185},"context":{"vwap":8.528826,"price_vs_vwap_pct":-0.203143,"ema9":8.487843,"ema20":8.464358,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.601156,"dist_to_hod_atr":1.872616,"atr":0.073961,"spread_atr":0.270414,"own_change_pct":0.588928,"rel_strength_pct":{"SPY":0.540482,"IWM":0.620471}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.000359},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cc7e363fadf0","ts":"2026-09-21T13:56:13.553934+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.25,"target":8.76,"target_label":"premarket_high","reward_risk":0.67,"pos_in_5d_range_pct":116.0,"room_to_5d_high_atr":-0.5},"price":8.5555,"vwap":8.5289,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":3.0,"volume_pace":1.759,"trend":"flat","recent_slope_pct":0.1712,"volatility":"medium"},"price":8.5555,"volume":{"bars":26,"last_bar_volume":590.0,"baseline_avg":2885.9,"bar_rvol":0.204442,"raw_accel":-0.925155,"smooth_accel":0.058816,"accel_momentum":-0.845978,"rvol_3bar":[0.102536,3.129851,0.204442],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":323.0,"sell_vol":1104.0,"unclassified_vol":0.0,"imbalance":-0.547302,"bid":8.54,"ask":8.56,"spread_pct":0.233918,"quote_size_imbalance":null,"quote_age_s":2.301286},"context":{"vwap":8.528826,"price_vs_vwap_pct":0.312754,"ema9":8.487843,"ema20":8.464358,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.092486,"dist_to_hod_atr":1.277706,"atr":0.073961,"spread_atr":0.270414,"own_change_pct":0.588928,"rel_strength_pct":{"SPY":0.540482,"IWM":0.620471}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.111892},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a178a34d92a6","ts":"2026-09-21T13:56:28.639561+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9259,"target":9.065,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":125.7,"room_to_5d_high_atr":-0.82},"price":9.0124,"vwap":8.9716,"ext_from_open_pct":-0.08,"max_ext_allowed_pct":3.0,"volume_pace":2.437,"trend":"flat","recent_slope_pct":0.0275,"volatility":"medium"},"price":9.0124,"volume":{"bars":26,"last_bar_volume":21904.0,"baseline_avg":39433.3,"bar_rvol":0.55547,"raw_accel":-0.077416,"smooth_accel":-0.400491,"accel_momentum":-0.061156,"rvol_3bar":[0.448318,0.549794,0.55547],"trend_3bar":"ACCELERATING","projected_rvol":1.156539},"flow":{"window_s":30,"trades":146,"trade_rate":4.866667,"buy_vol":5728.0,"sell_vol":16296.0,"unclassified_vol":0.0,"imbalance":-0.47984,"bid":8.99,"ask":9.0,"spread_pct":0.111173,"quote_size_imbalance":null,"quote_age_s":1.259355},"context":{"vwap":8.97118,"price_vs_vwap_pct":0.459477,"ema9":9.002119,"ema20":8.990147,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.580254,"dist_to_hod_atr":0.811787,"atr":0.064795,"spread_atr":0.154332,"own_change_pct":0.613839,"rel_strength_pct":{"SPY":0.565393,"IWM":0.645382}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.266537},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"665d6f955d59","ts":"2026-09-21T13:56:28.639561+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.51 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.25,"target":8.56,"target_label":"ceiling","reward_risk":0.21,"pos_in_5d_range_pct":112.1,"room_to_5d_high_atr":-0.38},"price":8.5053,"vwap":8.5288,"ext_from_open_pct":-1.33,"max_ext_allowed_pct":3.0,"volume_pace":1.744,"trend":"flat","recent_slope_pct":0.0535,"volatility":"medium"},"price":8.5053,"volume":{"bars":26,"last_bar_volume":590.0,"baseline_avg":2885.9,"bar_rvol":0.204442,"raw_accel":-0.925155,"smooth_accel":0.058816,"accel_momentum":-0.845978,"rvol_3bar":[0.102536,3.129851,0.204442],"trend_3bar":"MIXED","projected_rvol":1.084562},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":264.0,"sell_vol":1230.0,"unclassified_vol":0.0,"imbalance":-0.646586,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":1.604721},"context":{"vwap":8.528826,"price_vs_vwap_pct":-0.275838,"ema9":8.487843,"ema20":8.464358,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.672832,"dist_to_hod_atr":1.956444,"atr":0.073961,"spread_atr":0.135207,"own_change_pct":0.588928,"rel_strength_pct":{"SPY":0.540482,"IWM":0.620471}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.13219},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"564a71c480c5","ts":"2026-09-21T13:56:28.639561+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.4211,"target":8.82,"target_label":"prev_day_high","reward_risk":2.66,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":0.88},"price":8.53,"vwap":8.5278,"ext_from_open_pct":-2.18,"max_ext_allowed_pct":4.0,"volume_pace":1.416,"trend":"flat","recent_slope_pct":0.0823,"volatility":"medium"},"price":8.53,"volume":{"bars":26,"last_bar_volume":6424.0,"baseline_avg":23100.25,"bar_rvol":0.278092,"raw_accel":-0.838743,"smooth_accel":0.884047,"accel_momentum":-0.396111,"rvol_3bar":[0.153748,1.480544,0.278092],"trend_3bar":"MIXED","projected_rvol":0.613712},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":6005.0,"sell_vol":872.0,"unclassified_vol":0.0,"imbalance":0.746401,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":0.348661},"context":{"vwap":8.527876,"price_vs_vwap_pct":0.024904,"ema9":8.508673,"ema20":8.513471,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.402746,"dist_to_hod_atr":3.439669,"atr":0.061052,"spread_atr":0.163794,"own_change_pct":0.05872,"rel_strength_pct":{"SPY":0.010274,"IWM":0.090263}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.207568},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"041cad42e6fb","ts":"2026-09-21T13:56:33.659323+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.49 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.3842,"target":8.82,"target_label":"prev_day_high","reward_risk":3.0,"pos_in_5d_range_pct":42.2,"room_to_5d_high_atr":0.97},"price":8.4931,"vwap":8.5277,"ext_from_open_pct":-2.6,"max_ext_allowed_pct":3.0,"volume_pace":1.411,"trend":"flat","recent_slope_pct":-0.0045,"volatility":"medium"},"price":8.4931,"volume":{"bars":26,"last_bar_volume":6424.0,"baseline_avg":23100.25,"bar_rvol":0.278092,"raw_accel":-0.838743,"smooth_accel":0.884047,"accel_momentum":-0.396111,"rvol_3bar":[0.153748,1.480544,0.278092],"trend_3bar":"MIXED","projected_rvol":0.532372},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":3045.0,"sell_vol":819.0,"unclassified_vol":0.0,"imbalance":0.576087,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":2.754822},"context":{"vwap":8.527876,"price_vs_vwap_pct":-0.407794,"ema9":8.508673,"ema20":8.513471,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.824943,"dist_to_hod_atr":4.044068,"atr":0.061052,"spread_atr":0.163794,"own_change_pct":0.05872,"rel_strength_pct":{"SPY":0.010274,"IWM":0.090263}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.160205},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d59635ab5565","ts":"2026-09-21T13:56:38.683182+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.25,"target":8.76,"target_label":"premarket_high","reward_risk":0.67,"pos_in_5d_range_pct":116.0,"room_to_5d_high_atr":-0.5},"price":8.555,"vwap":8.5289,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":3.0,"volume_pace":1.733,"trend":"flat","recent_slope_pct":0.1701,"volatility":"medium"},"price":8.555,"volume":{"bars":26,"last_bar_volume":590.0,"baseline_avg":2885.9,"bar_rvol":0.204442,"raw_accel":-0.925155,"smooth_accel":0.058816,"accel_momentum":-0.845978,"rvol_3bar":[0.102536,3.129851,0.204442],"trend_3bar":"MIXED","projected_rvol":0.823392},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":152.0,"sell_vol":1155.0,"unclassified_vol":0.0,"imbalance":-0.767406,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":4.652677},"context":{"vwap":8.528826,"price_vs_vwap_pct":0.306892,"ema9":8.487843,"ema20":8.464358,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.098266,"dist_to_hod_atr":1.284466,"atr":0.073961,"spread_atr":0.135207,"own_change_pct":0.588928,"rel_strength_pct":{"SPY":0.540482,"IWM":0.620471}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.15689},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"89bf38f0a85f","ts":"2026-09-21T13:56:43.711241+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $8.01 (max 5%: volume pace strong, buying strong)","plan":{"state":"BUY","setup":"pullback","stop":8.27,"target":9.09,"target_label":"range_20d_high","reward_risk":3.32,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.46,"vwap":8.147,"ext_from_open_pct":5.62,"max_ext_allowed_pct":5.0,"volume_pace":9.856,"trend":"flat","recent_slope_pct":0.11,"volatility":"unknown"},"price":8.46,"volume":{"bars":26,"last_bar_volume":6553.0,"baseline_avg":11167.5,"bar_rvol":0.586792,"raw_accel":0.000153,"smooth_accel":-0.495622,"accel_momentum":0.045376,"rvol_3bar":[0.108634,0.586136,0.586792],"trend_3bar":"ACCELERATING","projected_rvol":0.033556},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":4.0,"sell_vol":7.0,"unclassified_vol":0.0,"imbalance":-0.272727,"bid":8.39,"ask":8.47,"spread_pct":0.948992,"quote_size_imbalance":null,"quote_age_s":17.136299},"context":{"vwap":8.14678,"price_vs_vwap_pct":3.844711,"ema9":8.377167,"ema20":8.273187,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-1.398601,"dist_to_hod_atr":0.607852,"atr":0.197417,"spread_atr":0.405234,"own_change_pct":1.076555,"rel_strength_pct":{"SPY":1.028109,"IWM":1.108098}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.160034},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"932b8e7e0f07","ts":"2026-09-21T13:56:43.711241+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.4211,"target":8.82,"target_label":"prev_day_high","reward_risk":2.66,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":0.88},"price":8.53,"vwap":8.5278,"ext_from_open_pct":-2.18,"max_ext_allowed_pct":4.0,"volume_pace":1.404,"trend":"flat","recent_slope_pct":0.0823,"volatility":"medium"},"price":8.53,"volume":{"bars":26,"last_bar_volume":6424.0,"baseline_avg":23100.25,"bar_rvol":0.278092,"raw_accel":-0.838743,"smooth_accel":0.884047,"accel_momentum":-0.396111,"rvol_3bar":[0.153748,1.480544,0.278092],"trend_3bar":"MIXED","projected_rvol":0.467407},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":2324.0,"sell_vol":839.0,"unclassified_vol":0.0,"imbalance":0.469491,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.587524},"context":{"vwap":8.527876,"price_vs_vwap_pct":0.024904,"ema9":8.508673,"ema20":8.513471,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.402746,"dist_to_hod_atr":3.439669,"atr":0.061052,"spread_atr":0.163794,"own_change_pct":0.05872,"rel_strength_pct":{"SPY":0.010274,"IWM":0.090263}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.130562},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0c47f3c2d298","ts":"2026-09-21T13:56:48.755492+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.4% above open $8.01 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.27,"target":9.09,"target_label":"range_20d_high","reward_risk":3.82,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.44,"vwap":8.147,"ext_from_open_pct":5.37,"max_ext_allowed_pct":5.0,"volume_pace":9.825,"trend":"flat","recent_slope_pct":0.0626,"volatility":"unknown"},"price":8.44,"volume":{"bars":26,"last_bar_volume":6553.0,"baseline_avg":11167.5,"bar_rvol":0.586792,"raw_accel":0.000153,"smooth_accel":-0.495622,"accel_momentum":0.045376,"rvol_3bar":[0.108634,0.586136,0.586792],"trend_3bar":"ACCELERATING","projected_rvol":0.030194},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":5.0,"sell_vol":7.0,"unclassified_vol":0.0,"imbalance":-0.166667,"bid":8.39,"ask":8.47,"spread_pct":0.948992,"quote_size_imbalance":null,"quote_age_s":0.943418},"context":{"vwap":8.14678,"price_vs_vwap_pct":3.599215,"ema9":8.377167,"ema20":8.273187,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-1.631702,"dist_to_hod_atr":0.70916,"atr":0.197417,"spread_atr":0.405234,"own_change_pct":1.076555,"rel_strength_pct":{"SPY":1.028109,"IWM":1.108098}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.097799},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a282ad7adaac","ts":"2026-09-21T13:56:58.818164+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.7% above open $8.01 (max 5%: volume pace strong, buying strong)","plan":{"state":"BUY","setup":"pullback","stop":8.27,"target":9.09,"target_label":"range_20d_high","reward_risk":3.12,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.469,"vwap":8.147,"ext_from_open_pct":5.73,"max_ext_allowed_pct":5.0,"volume_pace":9.764,"trend":"flat","recent_slope_pct":0.1313,"volatility":"unknown"},"price":8.469,"volume":{"bars":26,"last_bar_volume":6553.0,"baseline_avg":11167.5,"bar_rvol":0.586792,"raw_accel":0.000153,"smooth_accel":-0.495622,"accel_momentum":0.045376,"rvol_3bar":[0.108634,0.586136,0.586792],"trend_3bar":"ACCELERATING","projected_rvol":0.02512},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":6.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.5,"bid":8.39,"ask":8.47,"spread_pct":0.948992,"quote_size_imbalance":null,"quote_age_s":0.255937},"context":{"vwap":8.14678,"price_vs_vwap_pct":3.955184,"ema9":8.377167,"ema20":8.273187,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-1.293706,"dist_to_hod_atr":0.562263,"atr":0.197417,"spread_atr":0.405234,"own_change_pct":1.076555,"rel_strength_pct":{"SPY":1.028109,"IWM":1.108098}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.293396},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ffa27c7b06ea","ts":"2026-09-21T13:57:03.848292+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9085,"target":9.065,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":124.1,"room_to_5d_high_atr":-0.77},"price":8.995,"vwap":8.9714,"ext_from_open_pct":-0.28,"max_ext_allowed_pct":3.0,"volume_pace":2.388,"trend":"flat","recent_slope_pct":-0.0254,"volatility":"medium"},"price":8.995,"volume":{"bars":27,"last_bar_volume":24400.0,"baseline_avg":38074.1,"bar_rvol":0.640856,"raw_accel":0.113952,"smooth_accel":-0.433248,"accel_momentum":-0.032757,"rvol_3bar":[0.549794,0.55547,0.640856],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":520.0,"sell_vol":2265.0,"unclassified_vol":0.0,"imbalance":-0.626571,"bid":8.99,"ask":9.0,"spread_pct":0.111173,"quote_size_imbalance":null,"quote_age_s":4.104483},"context":{"vwap":8.971348,"price_vs_vwap_pct":0.263635,"ema9":9.000115,"ema20":8.990333,"ema_stack":false,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.772201,"dist_to_hod_atr":1.068307,"atr":0.065524,"spread_atr":0.152615,"own_change_pct":0.08459,"rel_strength_pct":{"SPY":0.055259,"IWM":0.08459}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.401541},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8fdd6c0b869b","ts":"2026-09-21T13:57:03.848292+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.37x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":9.9,"target":11.0,"target_label":"premarket_high","reward_risk":0.02,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9801,"vwap":10.7567,"ext_from_open_pct":2.62,"max_ext_allowed_pct":3.0,"volume_pace":0.366,"trend":"flat","recent_slope_pct":0.2311,"volatility":"unknown"},"price":10.9801,"volume":{"bars":27,"last_bar_volume":133886.0,"baseline_avg":57256.75,"bar_rvol":2.338344,"raw_accel":-0.01874,"smooth_accel":0.898322,"accel_momentum":0.467698,"rvol_3bar":[1.591886,2.637762,2.338344],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":225,"trade_rate":7.5,"buy_vol":26213.0,"sell_vol":12098.0,"unclassified_vol":0.0,"imbalance":0.368432,"bid":10.98,"ask":10.99,"spread_pct":0.091033,"quote_size_imbalance":null,"quote_age_s":0.02472},"context":{"vwap":10.756596,"price_vs_vwap_pct":2.077829,"ema9":10.886918,"ema20":10.81636,"ema_stack":true,"ema_warm":true,"hod":11.005,"dist_to_hod_pct":-0.226261,"dist_to_hod_atr":0.187299,"atr":0.132942,"spread_atr":0.075221,"own_change_pct":1.290917,"rel_strength_pct":{"SPY":1.261587,"IWM":1.290917}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.861521},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"79466bf096c9","ts":"2026-09-21T13:57:08.879380+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $8.01 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.27,"target":9.09,"target_label":"range_20d_high","reward_risk":4.12,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.43,"vwap":8.1472,"ext_from_open_pct":5.24,"max_ext_allowed_pct":5.0,"volume_pace":9.712,"trend":"flat","recent_slope_pct":0.2289,"volatility":"unknown"},"price":8.43,"volume":{"bars":27,"last_bar_volume":275.0,"baseline_avg":11435.05,"bar_rvol":0.024049,"raw_accel":-0.958034,"smooth_accel":-0.110845,"accel_momentum":0.384777,"rvol_3bar":[0.586136,0.586792,0.024049],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":63.0,"sell_vol":309.0,"unclassified_vol":0.0,"imbalance":-0.66129,"bid":8.39,"ask":8.47,"spread_pct":0.948992,"quote_size_imbalance":null,"quote_age_s":1.93758},"context":{"vwap":8.146978,"price_vs_vwap_pct":3.473953,"ema9":8.395534,"ema20":8.291835,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-1.748252,"dist_to_hod_atr":0.788047,"atr":0.190344,"spread_atr":0.420292,"own_change_pct":2.282609,"rel_strength_pct":{"SPY":2.253278,"IWM":2.282609}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.015903},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ab71468d5638","ts":"2026-09-21T13:57:08.879380+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.52 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.409,"target":8.82,"target_label":"prev_day_high","reward_risk":2.77,"pos_in_5d_range_pct":45.6,"room_to_5d_high_atr":0.91},"price":8.5179,"vwap":8.5279,"ext_from_open_pct":-2.32,"max_ext_allowed_pct":4.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":0.1379,"volatility":"medium"},"price":8.5179,"volume":{"bars":27,"last_bar_volume":9083.0,"baseline_avg":20458.05,"bar_rvol":0.443982,"raw_accel":0.413917,"smooth_accel":1.129271,"accel_momentum":0.245223,"rvol_3bar":[1.480544,0.278092,0.443982],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1951.0,"sell_vol":230.0,"unclassified_vol":0.0,"imbalance":0.789088,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":0.197597},"context":{"vwap":8.527888,"price_vs_vwap_pct":-0.117119,"ema9":8.516938,"ema20":8.51695,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.54119,"dist_to_hod_atr":3.632557,"atr":0.061141,"spread_atr":0.163555,"own_change_pct":0.465313,"rel_strength_pct":{"SPY":0.435982,"IWM":0.465313}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.35034},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8b5bceef0525","ts":"2026-09-21T13:57:13.908649+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.48 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.25,"target":8.56,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":110.1,"room_to_5d_high_atr":-0.32},"price":8.4798,"vwap":8.5289,"ext_from_open_pct":-1.63,"max_ext_allowed_pct":3.0,"volume_pace":1.702,"trend":"flat","recent_slope_pct":-0.0791,"volatility":"medium"},"price":8.4798,"volume":{"bars":27,"last_bar_volume":2293.0,"baseline_avg":2904.4,"bar_rvol":0.789492,"raw_accel":2.157967,"smooth_accel":0.82135,"accel_momentum":0.762534,"rvol_3bar":[3.129851,0.204442,0.789492],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":309.0,"sell_vol":438.0,"unclassified_vol":0.0,"imbalance":-0.172691,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":1.5717},"context":{"vwap":8.528929,"price_vs_vwap_pct":-0.576029,"ema9":8.501275,"ema20":8.47299,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.96763,"dist_to_hod_atr":2.350158,"atr":0.072421,"spread_atr":0.138082,"own_change_pct":1.261777,"rel_strength_pct":{"SPY":1.232447,"IWM":1.261777}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.136338},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"784ad3b7a3d4","ts":"2026-09-21T13:57:13.908649+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.4361,"target":8.82,"target_label":"prev_day_high","reward_risk":2.53,"pos_in_5d_range_pct":49.3,"room_to_5d_high_atr":0.85},"price":8.545,"vwap":8.5279,"ext_from_open_pct":-2.01,"max_ext_allowed_pct":4.0,"volume_pace":1.38,"trend":"flat","recent_slope_pct":0.2014,"volatility":"medium"},"price":8.545,"volume":{"bars":27,"last_bar_volume":9083.0,"baseline_avg":20458.05,"bar_rvol":0.443982,"raw_accel":0.413917,"smooth_accel":1.129271,"accel_momentum":0.245223,"rvol_3bar":[1.480544,0.278092,0.443982],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1177.0,"sell_vol":340.0,"unclassified_vol":0.0,"imbalance":0.551747,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":0.104533},"context":{"vwap":8.527888,"price_vs_vwap_pct":0.200662,"ema9":8.516938,"ema20":8.51695,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.231121,"dist_to_hod_atr":3.189323,"atr":0.061141,"spread_atr":0.163555,"own_change_pct":0.465313,"rel_strength_pct":{"SPY":0.435982,"IWM":0.465313}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.244966},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"778660750d8a","ts":"2026-09-21T13:57:18.938044+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":3.32,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.755,"vwap":5.6501,"ext_from_open_pct":3.88,"max_ext_allowed_pct":4.0,"volume_pace":2.218,"trend":"flat","recent_slope_pct":0.149,"volatility":"unknown"},"price":5.755,"volume":{"bars":27,"last_bar_volume":270675.0,"baseline_avg":139278.2,"bar_rvol":1.943413,"raw_accel":2.723434,"smooth_accel":0.374474,"accel_momentum":0.538732,"rvol_3bar":[0.471676,0.514058,1.943413],"trend_3bar":"ACCELERATING","projected_rvol":5.985495},"flow":{"window_s":30,"trades":369,"trade_rate":12.3,"buy_vol":199598.0,"sell_vol":68531.0,"unclassified_vol":0.0,"imbalance":0.488821,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.559859},"context":{"vwap":5.644497,"price_vs_vwap_pct":1.957711,"ema9":5.712925,"ema20":5.684435,"ema_stack":true,"ema_warm":true,"hod":5.74,"dist_to_hod_pct":0.261324,"dist_to_hod_atr":-0.396216,"atr":0.037858,"spread_atr":0.264144,"own_change_pct":0.445223,"rel_strength_pct":{"SPY":0.415893,"IWM":0.445223}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.94998},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ca99b15e0c2a","ts":"2026-09-21T13:57:23.966966+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.25,"target":8.76,"target_label":"premarket_high","reward_risk":0.7,"pos_in_5d_range_pct":115.6,"room_to_5d_high_atr":-0.49},"price":8.55,"vwap":8.5289,"ext_from_open_pct":-0.81,"max_ext_allowed_pct":3.0,"volume_pace":1.692,"trend":"flat","recent_slope_pct":0.0855,"volatility":"medium"},"price":8.55,"volume":{"bars":27,"last_bar_volume":2293.0,"baseline_avg":2904.4,"bar_rvol":0.789492,"raw_accel":2.157967,"smooth_accel":0.82135,"accel_momentum":0.762534,"rvol_3bar":[3.129851,0.204442,0.789492],"trend_3bar":"MIXED","projected_rvol":0.116363},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":17.0,"sell_vol":135.0,"unclassified_vol":0.0,"imbalance":-0.776316,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":1.78972},"context":{"vwap":8.528929,"price_vs_vwap_pct":0.247052,"ema9":8.501275,"ema20":8.47299,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.156069,"dist_to_hod_atr":1.380822,"atr":0.072421,"spread_atr":0.138082,"own_change_pct":1.261777,"rel_strength_pct":{"SPY":1.232447,"IWM":1.261777}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.612895},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aeec1afdd0e5","ts":"2026-09-21T13:57:28.989653+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.50 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.3889,"target":8.82,"target_label":"prev_day_high","reward_risk":2.96,"pos_in_5d_range_pct":42.8,"room_to_5d_high_atr":0.96},"price":8.4978,"vwap":8.5278,"ext_from_open_pct":-2.55,"max_ext_allowed_pct":4.0,"volume_pace":1.375,"trend":"flat","recent_slope_pct":0.0907,"volatility":"medium"},"price":8.4978,"volume":{"bars":27,"last_bar_volume":9083.0,"baseline_avg":20458.05,"bar_rvol":0.443982,"raw_accel":0.413917,"smooth_accel":1.129271,"accel_momentum":0.245223,"rvol_3bar":[1.480544,0.278092,0.443982],"trend_3bar":"MIXED","projected_rvol":0.64778},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":5674.0,"sell_vol":729.0,"unclassified_vol":0.0,"imbalance":0.772294,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":2.297576},"context":{"vwap":8.527888,"price_vs_vwap_pct":-0.352816,"ema9":8.516938,"ema20":8.51695,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.771167,"dist_to_hod_atr":3.961303,"atr":0.061141,"spread_atr":0.163555,"own_change_pct":0.465313,"rel_strength_pct":{"SPY":0.435982,"IWM":0.465313}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.342885},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e2924c1b8f4e","ts":"2026-09-21T13:57:39.194324+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.4461,"target":8.82,"target_label":"prev_day_high","reward_risk":2.43,"pos_in_5d_range_pct":50.7,"room_to_5d_high_atr":0.83},"price":8.555,"vwap":8.5279,"ext_from_open_pct":-1.89,"max_ext_allowed_pct":4.0,"volume_pace":1.367,"trend":"flat","recent_slope_pct":0.2249,"volatility":"medium"},"price":8.555,"volume":{"bars":27,"last_bar_volume":9083.0,"baseline_avg":20458.05,"bar_rvol":0.443982,"raw_accel":0.413917,"smooth_accel":1.129271,"accel_momentum":0.245223,"rvol_3bar":[1.480544,0.278092,0.443982],"trend_3bar":"MIXED","projected_rvol":0.483613},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":5692.0,"sell_vol":595.0,"unclassified_vol":0.0,"imbalance":0.810721,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":1.889196},"context":{"vwap":8.527888,"price_vs_vwap_pct":0.317924,"ema9":8.516938,"ema20":8.51695,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.116705,"dist_to_hod_atr":3.025768,"atr":0.061141,"spread_atr":0.163555,"own_change_pct":0.465313,"rel_strength_pct":{"SPY":0.435982,"IWM":0.465313}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.359945},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"08e1f37c3359","ts":"2026-09-21T13:57:39.194324+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":3.32,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.755,"vwap":5.6508,"ext_from_open_pct":3.88,"max_ext_allowed_pct":3.0,"volume_pace":2.207,"trend":"flat","recent_slope_pct":0.149,"volatility":"unknown"},"price":5.755,"volume":{"bars":27,"last_bar_volume":270675.0,"baseline_avg":139278.2,"bar_rvol":1.943413,"raw_accel":2.723434,"smooth_accel":0.374474,"accel_momentum":0.538732,"rvol_3bar":[0.471676,0.514058,1.943413],"trend_3bar":"ACCELERATING","projected_rvol":3.256735},"flow":{"window_s":30,"trades":376,"trade_rate":12.533333,"buy_vol":217525.0,"sell_vol":67291.0,"unclassified_vol":0.0,"imbalance":0.527477,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.227308},"context":{"vwap":5.644497,"price_vs_vwap_pct":1.957711,"ema9":5.712925,"ema20":5.684435,"ema_stack":true,"ema_warm":true,"hod":5.74,"dist_to_hod_pct":0.261324,"dist_to_hod_atr":-0.396216,"atr":0.037858,"spread_atr":0.264144,"own_change_pct":0.445223,"rel_strength_pct":{"SPY":0.415893,"IWM":0.445223}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.025106},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"676c111aff3e","ts":"2026-09-21T13:57:49.250547+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":3.1,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.6518,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":2.209,"trend":"flat","recent_slope_pct":0.1665,"volatility":"unknown"},"price":5.76,"volume":{"bars":27,"last_bar_volume":270675.0,"baseline_avg":139278.2,"bar_rvol":1.943413,"raw_accel":2.723434,"smooth_accel":0.374474,"accel_momentum":0.538732,"rvol_3bar":[0.471676,0.514058,1.943413],"trend_3bar":"ACCELERATING","projected_rvol":2.879324},"flow":{"window_s":30,"trades":136,"trade_rate":4.533333,"buy_vol":48836.0,"sell_vol":17116.0,"unclassified_vol":0.0,"imbalance":0.480956,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":1.15825},"context":{"vwap":5.644497,"price_vs_vwap_pct":2.046293,"ema9":5.712925,"ema20":5.684435,"ema_stack":true,"ema_warm":true,"hod":5.74,"dist_to_hod_pct":0.348432,"dist_to_hod_atr":-0.528288,"atr":0.037858,"spread_atr":0.264144,"own_change_pct":0.445223,"rel_strength_pct":{"SPY":0.415893,"IWM":0.445223}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.934696},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"755998a7298f","ts":"2026-09-21T13:57:54.281463+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":2.73,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.77,"vwap":5.6521,"ext_from_open_pct":4.15,"max_ext_allowed_pct":4.0,"volume_pace":2.206,"trend":"flat","recent_slope_pct":0.2013,"volatility":"unknown"},"price":5.77,"volume":{"bars":27,"last_bar_volume":270675.0,"baseline_avg":139278.2,"bar_rvol":1.943413,"raw_accel":2.723434,"smooth_accel":0.374474,"accel_momentum":0.538732,"rvol_3bar":[0.471676,0.514058,1.943413],"trend_3bar":"ACCELERATING","projected_rvol":2.6655},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":53042.0,"sell_vol":13294.0,"unclassified_vol":0.0,"imbalance":0.599192,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.359937},"context":{"vwap":5.644497,"price_vs_vwap_pct":2.223457,"ema9":5.712925,"ema20":5.684435,"ema_stack":true,"ema_warm":true,"hod":5.74,"dist_to_hod_pct":0.522648,"dist_to_hod_atr":-0.792431,"atr":0.037858,"spread_atr":0.264144,"own_change_pct":0.445223,"rel_strength_pct":{"SPY":0.415893,"IWM":0.445223}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.164477},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f44a56d0b9aa","ts":"2026-09-21T13:58:04.415097+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.49 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.25,"target":8.56,"target_label":"ceiling","reward_risk":0.28,"pos_in_5d_range_pct":111.1,"room_to_5d_high_atr":-0.35},"price":8.4925,"vwap":8.5288,"ext_from_open_pct":-1.48,"max_ext_allowed_pct":3.0,"volume_pace":1.665,"trend":"flat","recent_slope_pct":-0.0493,"volatility":"medium"},"price":8.4925,"volume":{"bars":27,"last_bar_volume":2293.0,"baseline_avg":2904.4,"bar_rvol":0.789492,"raw_accel":2.157967,"smooth_accel":0.82135,"accel_momentum":0.762534,"rvol_3bar":[3.129851,0.204442,0.789492],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":202.0,"sell_vol":650.0,"unclassified_vol":0.0,"imbalance":-0.525822,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":0.168008},"context":{"vwap":8.528929,"price_vs_vwap_pct":-0.427124,"ema9":8.501275,"ema20":8.47299,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.820809,"dist_to_hod_atr":2.174794,"atr":0.072421,"spread_atr":0.138082,"own_change_pct":1.261777,"rel_strength_pct":{"SPY":1.238319,"IWM":1.20111}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.415132},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"60a120dc0ffa","ts":"2026-09-21T13:58:04.415097+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.4461,"target":8.82,"target_label":"prev_day_high","reward_risk":2.43,"pos_in_5d_range_pct":50.7,"room_to_5d_high_atr":0.83},"price":8.555,"vwap":8.528,"ext_from_open_pct":-1.89,"max_ext_allowed_pct":4.0,"volume_pace":1.352,"trend":"flat","recent_slope_pct":0.1971,"volatility":"medium"},"price":8.555,"volume":{"bars":28,"last_bar_volume":10870.0,"baseline_avg":18898.7,"bar_rvol":0.575172,"raw_accel":0.196741,"smooth_accel":-0.528393,"accel_momentum":-1.657663,"rvol_3bar":[0.278092,0.443982,0.575172],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":703.0,"sell_vol":3736.0,"unclassified_vol":0.0,"imbalance":-0.683262,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":3.187675},"context":{"vwap":8.527972,"price_vs_vwap_pct":0.316934,"ema9":8.524551,"ema20":8.520573,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.116705,"dist_to_hod_atr":3.007294,"atr":0.061517,"spread_atr":0.162556,"own_change_pct":0.52879,"rel_strength_pct":{"SPY":0.505332,"IWM":0.468122}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.392993},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e7a87cfa5d25","ts":"2026-09-21T13:58:04.415097+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.37x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":9.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.31,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9527,"vwap":10.7632,"ext_from_open_pct":2.36,"max_ext_allowed_pct":4.0,"volume_pace":0.367,"trend":"flat","recent_slope_pct":-0.0226,"volatility":"unknown"},"price":10.9527,"volume":{"bars":28,"last_bar_volume":82429.0,"baseline_avg":61040.1,"bar_rvol":1.350407,"raw_accel":-0.384334,"smooth_accel":1.056167,"accel_momentum":0.157845,"rvol_3bar":[2.637762,2.338344,1.350407],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":221,"trade_rate":7.366667,"buy_vol":37860.0,"sell_vol":14461.0,"unclassified_vol":0.0,"imbalance":0.44722,"bid":10.98,"ask":10.99,"spread_pct":0.091033,"quote_size_imbalance":null,"quote_age_s":0.29122},"context":{"vwap":10.763185,"price_vs_vwap_pct":1.760775,"ema9":10.888514,"ema20":10.82384,"ema_stack":true,"ema_warm":true,"hod":11.005,"dist_to_hod_pct":-0.475239,"dist_to_hod_atr":0.395175,"atr":0.132346,"spread_atr":0.075559,"own_change_pct":-0.000918,"rel_strength_pct":{"SPY":-0.024376,"IWM":-0.061585}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.603929},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"94f35b53503b","ts":"2026-09-21T13:58:04.415097+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"BUY","setup":"breakout","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":2.04,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.795,"vwap":5.6564,"ext_from_open_pct":4.6,"max_ext_allowed_pct":4.0,"volume_pace":2.267,"trend":"flat","recent_slope_pct":0.345,"volatility":"unknown"},"price":5.795,"volume":{"bars":28,"last_bar_volume":343959.0,"baseline_avg":146010.25,"bar_rvol":2.355718,"raw_accel":0.270745,"smooth_accel":1.488925,"accel_momentum":1.114451,"rvol_3bar":[0.514058,1.943413,2.355718],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":240,"trade_rate":8.0,"buy_vol":174355.0,"sell_vol":26406.0,"unclassified_vol":0.0,"imbalance":0.736941,"bid":5.79,"ask":5.8,"spread_pct":0.172563,"quote_size_imbalance":null,"quote_age_s":0.324599},"context":{"vwap":5.65227,"price_vs_vwap_pct":2.525188,"ema9":5.724,"ema20":5.692422,"ema_stack":true,"ema_warm":true,"hod":5.77,"dist_to_hod_pct":0.433276,"dist_to_hod_atr":-0.637225,"atr":0.039233,"spread_atr":0.25489,"own_change_pct":0.860275,"rel_strength_pct":{"SPY":0.836817,"IWM":0.799608}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.736025},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fabf93b0730d","ts":"2026-09-21T13:58:09.541416+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.37x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":9.9,"target":11.0,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.8962,"vwap":10.7633,"ext_from_open_pct":1.83,"max_ext_allowed_pct":4.0,"volume_pace":0.367,"trend":"flat","recent_slope_pct":-0.1259,"volatility":"unknown"},"price":10.8962,"volume":{"bars":28,"last_bar_volume":82429.0,"baseline_avg":61040.1,"bar_rvol":1.350407,"raw_accel":-0.384334,"smooth_accel":1.056167,"accel_momentum":0.157845,"rvol_3bar":[2.637762,2.338344,1.350407],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":213,"trade_rate":7.1,"buy_vol":37694.0,"sell_vol":12464.0,"unclassified_vol":0.0,"imbalance":0.50301,"bid":10.98,"ask":10.99,"spread_pct":0.091033,"quote_size_imbalance":null,"quote_age_s":5.417539},"context":{"vwap":10.763185,"price_vs_vwap_pct":1.235837,"ema9":10.888514,"ema20":10.82384,"ema_stack":true,"ema_warm":true,"hod":11.005,"dist_to_hod_pct":-0.988642,"dist_to_hod_atr":0.822085,"atr":0.132346,"spread_atr":0.075559,"own_change_pct":-0.000918,"rel_strength_pct":{"SPY":-0.024376,"IWM":-0.061585}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.679269},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"5f6887508a8b","ts":"2026-09-21T13:58:14.635289+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.25,"target":8.76,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":115.2,"room_to_5d_high_atr":-0.48},"price":8.545,"vwap":8.5288,"ext_from_open_pct":-0.87,"max_ext_allowed_pct":3.0,"volume_pace":1.663,"trend":"flat","recent_slope_pct":0.0029,"volatility":"medium"},"price":8.545,"volume":{"bars":28,"last_bar_volume":2121.0,"baseline_avg":3000.85,"bar_rvol":0.7068,"raw_accel":-0.075011,"smooth_accel":-0.548538,"accel_momentum":-1.369888,"rvol_3bar":[0.204442,0.789492,0.7068],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":593.0,"sell_vol":764.0,"unclassified_vol":0.0,"imbalance":-0.126013,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":0.619309},"context":{"vwap":8.528758,"price_vs_vwap_pct":0.190433,"ema9":8.49952,"ema20":8.474848,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.213873,"dist_to_hod_atr":1.442069,"atr":0.072812,"spread_atr":0.13734,"own_change_pct":0.064805,"rel_strength_pct":{"SPY":0.041347,"IWM":0.004138}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.089066},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0bef3262f12e","ts":"2026-09-21T13:58:14.635289+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.51 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4055,"target":8.82,"target_label":"prev_day_high","reward_risk":2.81,"pos_in_5d_range_pct":45.1,"room_to_5d_high_atr":0.92},"price":8.5144,"vwap":8.528,"ext_from_open_pct":-2.36,"max_ext_allowed_pct":3.0,"volume_pace":1.345,"trend":"flat","recent_slope_pct":0.102,"volatility":"medium"},"price":8.5144,"volume":{"bars":28,"last_bar_volume":10870.0,"baseline_avg":18898.7,"bar_rvol":0.575172,"raw_accel":0.196741,"smooth_accel":-0.528393,"accel_momentum":-1.657663,"rvol_3bar":[0.278092,0.443982,0.575172],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1736.0,"sell_vol":3776.0,"unclassified_vol":0.0,"imbalance":-0.370102,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":0.055837},"context":{"vwap":8.527972,"price_vs_vwap_pct":-0.159146,"ema9":8.524551,"ema20":8.520573,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.581236,"dist_to_hod_atr":3.667273,"atr":0.061517,"spread_atr":0.162556,"own_change_pct":0.52879,"rel_strength_pct":{"SPY":0.505332,"IWM":0.468122}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.212872},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"af9685abab7d","ts":"2026-09-21T13:58:14.635289+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.37x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":9.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.27,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9807,"vwap":10.7635,"ext_from_open_pct":2.62,"max_ext_allowed_pct":3.0,"volume_pace":0.366,"trend":"flat","recent_slope_pct":0.0286,"volatility":"unknown"},"price":10.9807,"volume":{"bars":28,"last_bar_volume":82429.0,"baseline_avg":61040.1,"bar_rvol":1.350407,"raw_accel":-0.384334,"smooth_accel":1.056167,"accel_momentum":0.157845,"rvol_3bar":[2.637762,2.338344,1.350407],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":201,"trade_rate":6.7,"buy_vol":36179.0,"sell_vol":11479.0,"unclassified_vol":0.0,"imbalance":0.518276,"bid":10.98,"ask":10.99,"spread_pct":0.091033,"quote_size_imbalance":null,"quote_age_s":3.409336},"context":{"vwap":10.763185,"price_vs_vwap_pct":2.020921,"ema9":10.888514,"ema20":10.82384,"ema_stack":true,"ema_warm":true,"hod":11.005,"dist_to_hod_pct":-0.220809,"dist_to_hod_atr":0.183609,"atr":0.132346,"spread_atr":0.075559,"own_change_pct":-0.000918,"rel_strength_pct":{"SPY":-0.024376,"IWM":-0.061585}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.699884},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"0dc3558e8509","ts":"2026-09-21T13:58:14.635289+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"BUY","setup":"breakout","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":3.07,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7608,"vwap":5.6568,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":2.268,"trend":"flat","recent_slope_pct":0.2263,"volatility":"unknown"},"price":5.7608,"volume":{"bars":28,"last_bar_volume":343959.0,"baseline_avg":146010.25,"bar_rvol":2.355718,"raw_accel":0.270745,"smooth_accel":1.488925,"accel_momentum":1.114451,"rvol_3bar":[0.514058,1.943413,2.355718],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":231,"trade_rate":7.7,"buy_vol":157060.0,"sell_vol":41685.0,"unclassified_vol":0.0,"imbalance":0.580518,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":0.623112},"context":{"vwap":5.65227,"price_vs_vwap_pct":1.920121,"ema9":5.724,"ema20":5.692422,"ema_stack":true,"ema_warm":true,"hod":5.77,"dist_to_hod_pct":-0.159445,"dist_to_hod_atr":0.234499,"atr":0.039233,"spread_atr":0.25489,"own_change_pct":0.860275,"rel_strength_pct":{"SPY":0.836817,"IWM":0.799608}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.367536},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a5a61bbe2ea7","ts":"2026-09-21T13:58:19.665210+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.4401,"target":8.82,"target_label":"prev_day_high","reward_risk":2.49,"pos_in_5d_range_pct":49.9,"room_to_5d_high_atr":0.84},"price":8.549,"vwap":8.528,"ext_from_open_pct":-1.96,"max_ext_allowed_pct":3.0,"volume_pace":1.342,"trend":"flat","recent_slope_pct":0.1831,"volatility":"medium"},"price":8.549,"volume":{"bars":28,"last_bar_volume":10870.0,"baseline_avg":18898.7,"bar_rvol":0.575172,"raw_accel":0.196741,"smooth_accel":-0.528393,"accel_momentum":-1.657663,"rvol_3bar":[0.278092,0.443982,0.575172],"trend_3bar":"ACCELERATING","projected_rvol":0.351301},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2050.0,"sell_vol":2232.0,"unclassified_vol":0.0,"imbalance":-0.042504,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":5.085758},"context":{"vwap":8.527972,"price_vs_vwap_pct":0.246578,"ema9":8.524551,"ema20":8.520573,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.185355,"dist_to_hod_atr":3.104827,"atr":0.061517,"spread_atr":0.162556,"own_change_pct":0.52879,"rel_strength_pct":{"SPY":0.505332,"IWM":0.468122}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.024447},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7544c96c65bf","ts":"2026-09-21T13:58:19.665210+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":4.86,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.73,"vwap":5.6561,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":2.262,"trend":"flat","recent_slope_pct":0.1191,"volatility":"unknown"},"price":5.73,"volume":{"bars":28,"last_bar_volume":343959.0,"baseline_avg":146010.25,"bar_rvol":2.355718,"raw_accel":0.270745,"smooth_accel":1.488925,"accel_momentum":1.114451,"rvol_3bar":[0.514058,1.943413,2.355718],"trend_3bar":"ACCELERATING","projected_rvol":3.853695},"flow":{"window_s":30,"trades":225,"trade_rate":7.5,"buy_vol":154962.0,"sell_vol":43873.0,"unclassified_vol":0.0,"imbalance":0.558699,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":0.187057},"context":{"vwap":5.65227,"price_vs_vwap_pct":1.375208,"ema9":5.724,"ema20":5.692422,"ema_stack":true,"ema_warm":true,"hod":5.77,"dist_to_hod_pct":-0.693241,"dist_to_hod_atr":1.019561,"atr":0.039233,"spread_atr":0.25489,"own_change_pct":0.860275,"rel_strength_pct":{"SPY":0.836817,"IWM":0.799608}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.316138},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ffd2ce03e907","ts":"2026-09-21T13:58:24.690470+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"BUY","setup":"breakout","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":2.41,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7801,"vwap":5.6569,"ext_from_open_pct":4.33,"max_ext_allowed_pct":3.0,"volume_pace":2.26,"trend":"flat","recent_slope_pct":0.2933,"volatility":"unknown"},"price":5.7801,"volume":{"bars":28,"last_bar_volume":343959.0,"baseline_avg":146010.25,"bar_rvol":2.355718,"raw_accel":0.270745,"smooth_accel":1.488925,"accel_momentum":1.114451,"rvol_3bar":[0.514058,1.943413,2.355718],"trend_3bar":"ACCELERATING","projected_rvol":3.227978},"flow":{"window_s":30,"trades":231,"trade_rate":7.7,"buy_vol":151465.0,"sell_vol":50072.0,"unclassified_vol":0.0,"imbalance":0.503099,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":0.226348},"context":{"vwap":5.65227,"price_vs_vwap_pct":2.261577,"ema9":5.724,"ema20":5.692422,"ema_stack":true,"ema_warm":true,"hod":5.77,"dist_to_hod_pct":0.175043,"dist_to_hod_atr":-0.257439,"atr":0.039233,"spread_atr":0.25489,"own_change_pct":0.860275,"rel_strength_pct":{"SPY":0.836817,"IWM":0.799608}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.185159},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2896e20c9d50","ts":"2026-09-21T13:58:34.813062+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.36x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":9.9,"target":11.0,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9016,"vwap":10.7648,"ext_from_open_pct":1.88,"max_ext_allowed_pct":3.0,"volume_pace":0.364,"trend":"flat","recent_slope_pct":-0.116,"volatility":"unknown"},"price":10.9016,"volume":{"bars":28,"last_bar_volume":82429.0,"baseline_avg":61040.1,"bar_rvol":1.350407,"raw_accel":-0.384334,"smooth_accel":1.056167,"accel_momentum":0.157845,"rvol_3bar":[2.637762,2.338344,1.350407],"trend_3bar":"DECELERATING","projected_rvol":0.56067},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":9314.0,"sell_vol":9946.0,"unclassified_vol":0.0,"imbalance":-0.032814,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":4.31139},"context":{"vwap":10.763185,"price_vs_vwap_pct":1.286008,"ema9":10.888514,"ema20":10.82384,"ema_stack":true,"ema_warm":true,"hod":11.005,"dist_to_hod_pct":-0.939573,"dist_to_hod_atr":0.781283,"atr":0.132346,"spread_atr":0.075559,"own_change_pct":-0.000918,"rel_strength_pct":{"SPY":-0.024376,"IWM":-0.061585}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.044312},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"2a075505d433","ts":"2026-09-21T13:58:39.887260+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.51 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.3978,"target":8.82,"target_label":"prev_day_high","reward_risk":2.88,"pos_in_5d_range_pct":44.1,"room_to_5d_high_atr":0.94},"price":8.5067,"vwap":8.5279,"ext_from_open_pct":-2.45,"max_ext_allowed_pct":3.0,"volume_pace":1.333,"trend":"flat","recent_slope_pct":0.084,"volatility":"medium"},"price":8.5067,"volume":{"bars":28,"last_bar_volume":10870.0,"baseline_avg":18898.7,"bar_rvol":0.575172,"raw_accel":0.196741,"smooth_accel":-0.528393,"accel_momentum":-1.657663,"rvol_3bar":[0.278092,0.443982,0.575172],"trend_3bar":"ACCELERATING","projected_rvol":0.563054},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":5030.0,"sell_vol":900.0,"unclassified_vol":0.0,"imbalance":0.696459,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":2.792563},"context":{"vwap":8.527972,"price_vs_vwap_pct":-0.249437,"ema9":8.524551,"ema20":8.520573,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.669336,"dist_to_hod_atr":3.792441,"atr":0.061517,"spread_atr":0.162556,"own_change_pct":0.52879,"rel_strength_pct":{"SPY":0.505332,"IWM":0.468122}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.400583},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9d1af53604fc","ts":"2026-09-21T13:58:39.887260+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.36x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":9.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.3,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9567,"vwap":10.7651,"ext_from_open_pct":2.4,"max_ext_allowed_pct":3.0,"volume_pace":0.364,"trend":"flat","recent_slope_pct":-0.0153,"volatility":"unknown"},"price":10.9567,"volume":{"bars":28,"last_bar_volume":82429.0,"baseline_avg":61040.1,"bar_rvol":1.350407,"raw_accel":-0.384334,"smooth_accel":1.056167,"accel_momentum":0.157845,"rvol_3bar":[2.637762,2.338344,1.350407],"trend_3bar":"DECELERATING","projected_rvol":0.550658},"flow":{"window_s":30,"trades":123,"trade_rate":4.1,"buy_vol":11060.0,"sell_vol":9422.0,"unclassified_vol":0.0,"imbalance":0.079973,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":0.755338},"context":{"vwap":10.763185,"price_vs_vwap_pct":1.797939,"ema9":10.888514,"ema20":10.82384,"ema_stack":true,"ema_warm":true,"hod":11.005,"dist_to_hod_pct":-0.438891,"dist_to_hod_atr":0.364951,"atr":0.132346,"spread_atr":0.075559,"own_change_pct":-0.000918,"rel_strength_pct":{"SPY":-0.024376,"IWM":-0.061585}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.107996},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"525b324240fb","ts":"2026-09-21T13:58:44.983607+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.4361,"target":8.82,"target_label":"prev_day_high","reward_risk":2.53,"pos_in_5d_range_pct":49.3,"room_to_5d_high_atr":0.85},"price":8.545,"vwap":8.5281,"ext_from_open_pct":-2.01,"max_ext_allowed_pct":3.0,"volume_pace":1.334,"trend":"flat","recent_slope_pct":0.1737,"volatility":"medium"},"price":8.545,"volume":{"bars":28,"last_bar_volume":10870.0,"baseline_avg":18898.7,"bar_rvol":0.575172,"raw_accel":0.196741,"smooth_accel":-0.528393,"accel_momentum":-1.657663,"rvol_3bar":[0.278092,0.443982,0.575172],"trend_3bar":"ACCELERATING","projected_rvol":0.804581},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":6370.0,"sell_vol":3716.0,"unclassified_vol":0.0,"imbalance":0.263137,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":1.731665},"context":{"vwap":8.527972,"price_vs_vwap_pct":0.199673,"ema9":8.524551,"ema20":8.520573,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.231121,"dist_to_hod_atr":3.16985,"atr":0.061517,"spread_atr":0.162556,"own_change_pct":0.52879,"rel_strength_pct":{"SPY":0.505332,"IWM":0.468122}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.151349},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bc0b59169335","ts":"2026-09-21T13:58:50.079809+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.52 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.25,"target":8.76,"target_label":"premarket_high","reward_risk":0.92,"pos_in_5d_range_pct":112.9,"room_to_5d_high_atr":-0.4},"price":8.515,"vwap":8.5285,"ext_from_open_pct":-1.22,"max_ext_allowed_pct":3.0,"volume_pace":1.673,"trend":"flat","recent_slope_pct":-0.0675,"volatility":"medium"},"price":8.515,"volume":{"bars":28,"last_bar_volume":2121.0,"baseline_avg":3000.85,"bar_rvol":0.7068,"raw_accel":-0.075011,"smooth_accel":-0.548538,"accel_momentum":-1.369888,"rvol_3bar":[0.204442,0.789492,0.7068],"trend_3bar":"MIXED","projected_rvol":3.031102},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3895.0,"sell_vol":2618.0,"unclassified_vol":0.0,"imbalance":0.196069,"bid":8.51,"ask":8.52,"spread_pct":0.11744,"quote_size_imbalance":null,"quote_age_s":0.645307},"context":{"vwap":8.528758,"price_vs_vwap_pct":-0.161318,"ema9":8.49952,"ema20":8.474848,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.560694,"dist_to_hod_atr":1.854089,"atr":0.072812,"spread_atr":0.13734,"own_change_pct":0.064805,"rel_strength_pct":{"SPY":0.041347,"IWM":0.004138}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.138582},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c8b9d0748655","ts":"2026-09-21T13:59:00.323426+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.25,"target":8.76,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":114.8,"room_to_5d_high_atr":-0.47},"price":8.54,"vwap":8.5287,"ext_from_open_pct":-0.93,"max_ext_allowed_pct":3.0,"volume_pace":1.694,"trend":"flat","recent_slope_pct":-0.0088,"volatility":"medium"},"price":8.54,"volume":{"bars":28,"last_bar_volume":2121.0,"baseline_avg":3000.85,"bar_rvol":0.7068,"raw_accel":-0.075011,"smooth_accel":-0.548538,"accel_momentum":-1.369888,"rvol_3bar":[0.204442,0.789492,0.7068],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":6704.0,"sell_vol":3475.0,"unclassified_vol":0.0,"imbalance":0.317222,"bid":8.53,"ask":8.55,"spread_pct":0.234192,"quote_size_imbalance":null,"quote_age_s":0.322288},"context":{"vwap":8.528758,"price_vs_vwap_pct":0.131808,"ema9":8.49952,"ema20":8.474848,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.271676,"dist_to_hod_atr":1.510739,"atr":0.072812,"spread_atr":0.27468,"own_change_pct":0.064805,"rel_strength_pct":{"SPY":0.056921,"IWM":-0.061422}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.224212},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ffcd2689a3d5","ts":"2026-09-21T13:59:00.323426+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":4.72,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7317,"vwap":5.6569,"ext_from_open_pct":3.46,"max_ext_allowed_pct":4.0,"volume_pace":2.227,"trend":"flat","recent_slope_pct":0.125,"volatility":"unknown"},"price":5.7317,"volume":{"bars":28,"last_bar_volume":343959.0,"baseline_avg":146010.25,"bar_rvol":2.355718,"raw_accel":0.270745,"smooth_accel":1.488925,"accel_momentum":1.114451,"rvol_3bar":[0.514058,1.943413,2.355718],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":18109.0,"sell_vol":8262.0,"unclassified_vol":0.0,"imbalance":0.373403,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":0.327896},"context":{"vwap":5.65227,"price_vs_vwap_pct":1.405284,"ema9":5.724,"ema20":5.692422,"ema_stack":true,"ema_warm":true,"hod":5.77,"dist_to_hod_pct":-0.663778,"dist_to_hod_atr":0.976229,"atr":0.039233,"spread_atr":0.25489,"own_change_pct":0.860275,"rel_strength_pct":{"SPY":0.852391,"IWM":0.734048}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.879631},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c37ff2b6efaf","ts":"2026-09-21T13:59:05.492215+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.41 below VWAP $6.41","plan":{"state":"PASS","setup":"","stop":6.2467,"target":6.55,"target_label":"ceiling","reward_risk":0.86,"pos_in_5d_range_pct":99.4,"room_to_5d_high_atr":0.02},"price":6.41,"vwap":6.4108,"ext_from_open_pct":0.31,"max_ext_allowed_pct":4.0,"volume_pace":1.921,"trend":"flat","recent_slope_pct":-0.0523,"volatility":"high"},"price":6.41,"volume":{"bars":29,"last_bar_volume":4172.0,"baseline_avg":28763.3,"bar_rvol":0.145046,"raw_accel":-0.419816,"smooth_accel":-0.657263,"accel_momentum":0.245447,"rvol_3bar":[0.165979,0.15599,0.145046],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":1801.0,"sell_vol":266.0,"unclassified_vol":0.0,"imbalance":0.742622,"bid":6.4,"ask":6.43,"spread_pct":0.467654,"quote_size_imbalance":null,"quote_age_s":1.011924},"context":{"vwap":6.410768,"price_vs_vwap_pct":-0.011981,"ema9":6.413151,"ema20":6.409356,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-2.878788,"dist_to_hod_atr":2.806055,"atr":0.067711,"spread_atr":0.443061,"own_change_pct":-0.001558,"rel_strength_pct":{"SPY":-0.009442,"IWM":-0.127785}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.107714},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"4e61a924a5ce","ts":"2026-09-21T13:59:05.492215+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 121.6s, plan says WATCH; stop 8.93, target 9.02 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.02; breakout: 1-min close > 9.07 on >= 84922 sh","plan":{"state":"WATCH","setup":"","stop":8.9285,"target":9.015,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":8.9719,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":2.262,"trend":"flat","recent_slope_pct":0.0199,"volatility":"medium"},"price":9.015,"volume":{"bars":29,"last_bar_volume":11900.0,"baseline_avg":36252.3,"bar_rvol":0.328255,"raw_accel":-0.105868,"smooth_accel":-0.244663,"accel_momentum":-0.105588,"rvol_3bar":[0.640856,0.35854,0.328255],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":7457.0,"sell_vol":1521.0,"unclassified_vol":0.0,"imbalance":0.661172,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.196417},"context":{"vwap":8.971799,"price_vs_vwap_pct":0.481521,"ema9":9.001274,"ema20":8.992608,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.551572,"dist_to_hod_atr":0.843838,"atr":0.059253,"spread_atr":0.168768,"own_change_pct":0.166759,"rel_strength_pct":{"SPY":0.158875,"IWM":0.040532}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.217033},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"bb126b41c605","ts":"2026-09-21T13:59:05.492215+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7396,"target":8.95,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":128.4,"room_to_5d_high_atr":-0.37},"price":8.88,"vwap":8.8779,"ext_from_open_pct":1.72,"max_ext_allowed_pct":4.0,"volume_pace":2.24,"trend":"flat","recent_slope_pct":0.0676,"volatility":"high"},"price":8.88,"volume":{"bars":29,"last_bar_volume":13822.0,"baseline_avg":23395.95,"bar_rvol":0.590786,"raw_accel":0.201495,"smooth_accel":-0.136047,"accel_momentum":0.440477,"rvol_3bar":[0.095961,0.49495,0.590786],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":6028.0,"sell_vol":1144.0,"unclassified_vol":0.0,"imbalance":0.680982,"bid":8.87,"ask":8.89,"spread_pct":0.225225,"quote_size_imbalance":null,"quote_age_s":4.950874},"context":{"vwap":8.87793,"price_vs_vwap_pct":0.023315,"ema9":8.883161,"ema20":8.883541,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.094818,"dist_to_hod_atr":2.23204,"atr":0.085124,"spread_atr":0.234952,"own_change_pct":-0.224719,"rel_strength_pct":{"SPY":-0.232603,"IWM":-0.350946}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.402314},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e5883015751e","ts":"2026-09-21T13:59:05.492215+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":2.28,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.785,"vwap":5.6569,"ext_from_open_pct":4.42,"max_ext_allowed_pct":3.0,"volume_pace":2.221,"trend":"flat","recent_slope_pct":0.1936,"volatility":"unknown"},"price":5.785,"volume":{"bars":29,"last_bar_volume":223018.0,"baseline_avg":158765.2,"bar_rvol":1.404703,"raw_accel":-0.351615,"smooth_accel":2.315674,"accel_momentum":0.826749,"rvol_3bar":[1.943413,2.355718,1.404703],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":18827.0,"sell_vol":8498.0,"unclassified_vol":0.0,"imbalance":0.378005,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":0.558434},"context":{"vwap":5.656886,"price_vs_vwap_pct":2.264741,"ema9":5.72554,"ema20":5.696163,"ema_stack":true,"ema_warm":true,"hod":5.8,"dist_to_hod_pct":-0.258621,"dist_to_hod_atr":0.362054,"atr":0.04143,"spread_atr":0.24137,"own_change_pct":0.204545,"rel_strength_pct":{"SPY":0.196661,"IWM":0.078318}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.530986},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f5a6e799580f","ts":"2026-09-21T13:59:10.658495+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.2562,"target":6.55,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":100.0,"room_to_5d_high_atr":0.0},"price":6.4195,"vwap":6.4108,"ext_from_open_pct":0.46,"max_ext_allowed_pct":4.0,"volume_pace":1.918,"trend":"flat","recent_slope_pct":-0.0227,"volatility":"high"},"price":6.4195,"volume":{"bars":29,"last_bar_volume":4172.0,"baseline_avg":28763.3,"bar_rvol":0.145046,"raw_accel":-0.419816,"smooth_accel":-0.657263,"accel_momentum":0.245447,"rvol_3bar":[0.165979,0.15599,0.145046],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":2218.0,"sell_vol":257.0,"unclassified_vol":0.0,"imbalance":0.792323,"bid":6.4,"ask":6.42,"spread_pct":0.312012,"quote_size_imbalance":null,"quote_age_s":0.369297},"context":{"vwap":6.410768,"price_vs_vwap_pct":0.136208,"ema9":6.413151,"ema20":6.409356,"ema_stack":true,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-2.734848,"dist_to_hod_atr":2.665752,"atr":0.067711,"spread_atr":0.295374,"own_change_pct":-0.001558,"rel_strength_pct":{"SPY":-0.009442,"IWM":-0.127785}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.114923},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"c8c491d21222","ts":"2026-09-21T13:59:10.658495+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 126.8s, plan says PASS; stop 8.92, target 9.06 (ceiling), R:R 0.69; R:R 0.69 < 2.0 at 9.01; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9185,"target":9.065,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":125.0,"room_to_5d_high_atr":-0.79},"price":9.005,"vwap":8.9719,"ext_from_open_pct":-0.17,"max_ext_allowed_pct":3.0,"volume_pace":2.257,"trend":"flat","recent_slope_pct":-0.0023,"volatility":"medium"},"price":9.005,"volume":{"bars":29,"last_bar_volume":11900.0,"baseline_avg":36252.3,"bar_rvol":0.328255,"raw_accel":-0.105868,"smooth_accel":-0.244663,"accel_momentum":-0.105588,"rvol_3bar":[0.640856,0.35854,0.328255],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":7677.0,"sell_vol":2219.0,"unclassified_vol":0.0,"imbalance":0.551536,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":1.04932},"context":{"vwap":8.971799,"price_vs_vwap_pct":0.37006,"ema9":9.001274,"ema20":8.992608,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.661886,"dist_to_hod_atr":1.012606,"atr":0.059253,"spread_atr":0.168768,"own_change_pct":0.166759,"rel_strength_pct":{"SPY":0.158875,"IWM":0.040532}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.181044},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"966090bd868e","ts":"2026-09-21T13:59:41.302392+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.41 below VWAP $6.41","plan":{"state":"PASS","setup":"","stop":6.2467,"target":6.55,"target_label":"ceiling","reward_risk":0.86,"pos_in_5d_range_pct":99.4,"room_to_5d_high_atr":0.02},"price":6.41,"vwap":6.4108,"ext_from_open_pct":0.31,"max_ext_allowed_pct":4.0,"volume_pace":1.886,"trend":"flat","recent_slope_pct":-0.0523,"volatility":"high"},"price":6.41,"volume":{"bars":29,"last_bar_volume":4172.0,"baseline_avg":28763.3,"bar_rvol":0.145046,"raw_accel":-0.419816,"smooth_accel":-0.657263,"accel_momentum":0.245447,"rvol_3bar":[0.165979,0.15599,0.145046],"trend_3bar":"DECELERATING","projected_rvol":0.103435},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":301.0,"sell_vol":222.0,"unclassified_vol":0.0,"imbalance":0.151052,"bid":6.41,"ask":6.42,"spread_pct":0.155885,"quote_size_imbalance":null,"quote_age_s":1.793444},"context":{"vwap":6.410768,"price_vs_vwap_pct":-0.011981,"ema9":6.413151,"ema20":6.409356,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-2.878788,"dist_to_hod_atr":2.806055,"atr":0.067711,"spread_atr":0.147687,"own_change_pct":-0.001558,"rel_strength_pct":{"SPY":-0.009442,"IWM":-0.127785}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.021909},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"76446056190b","ts":"2026-09-21T13:59:51.535724+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":11.3255,"target":12.0,"target_label":"premarket_high","reward_risk":2.3,"pos_in_5d_range_pct":112.6,"room_to_5d_high_atr":-0.56},"price":11.53,"vwap":11.5298,"ext_from_open_pct":-1.2,"max_ext_allowed_pct":3.0,"volume_pace":0.605,"trend":"flat","recent_slope_pct":0.2542,"volatility":"high"},"price":11.53,"volume":{"bars":29,"last_bar_volume":5476.0,"baseline_avg":20392.65,"bar_rvol":0.268528,"raw_accel":-0.71649,"smooth_accel":-0.442444,"accel_momentum":0.034877,"rvol_3bar":[0.170458,0.945817,0.268528],"trend_3bar":"MIXED","projected_rvol":1.163861},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":9959.0,"sell_vol":5817.0,"unclassified_vol":0.0,"imbalance":0.262551,"bid":11.5,"ask":11.53,"spread_pct":0.26053,"quote_size_imbalance":null,"quote_age_s":3.264895},"context":{"vwap":11.530347,"price_vs_vwap_pct":-0.00301,"ema9":11.469561,"ema20":11.473058,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.75626,"dist_to_hod_atr":2.427382,"atr":0.185385,"spread_atr":0.161825,"own_change_pct":1.194659,"rel_strength_pct":{"SPY":1.186775,"IWM":1.068432}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.070502},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"24f68d0a7d6a","ts":"2026-09-21T14:00:01.729601+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 177.9s, plan says WATCH; stop 8.93, target 9.02 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.02; breakout: 1-min close > 9.07 on >= 82634 sh","plan":{"state":"WATCH","setup":"","stop":8.9285,"target":9.015,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":8.9721,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":2.201,"trend":"flat","recent_slope_pct":0.0675,"volatility":"medium"},"price":9.015,"volume":{"bars":30,"last_bar_volume":10858.0,"baseline_avg":35363.8,"bar_rvol":0.307037,"raw_accel":-0.087563,"smooth_accel":-0.485096,"accel_momentum":-0.240432,"rvol_3bar":[0.35854,0.328255,0.307037],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2362.0,"sell_vol":305.0,"unclassified_vol":0.0,"imbalance":0.771279,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.667594},"context":{"vwap":8.972049,"price_vs_vwap_pct":0.478717,"ema9":9.003019,"ema20":8.994265,"ema_stack":true,"ema_warm":true,"hod":9.065,"dist_to_hod_pct":-0.551572,"dist_to_hod_atr":0.885415,"atr":0.056471,"spread_atr":0.177083,"own_change_pct":-0.055463,"rel_strength_pct":{"SPY":-0.077612,"IWM":-0.108029}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.236811},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"05c319f0de8b","ts":"2026-09-21T14:00:01.729601+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.4431,"target":8.76,"target_label":"premarket_high","reward_risk":2.11,"pos_in_5d_range_pct":115.2,"room_to_5d_high_atr":-0.48},"price":8.545,"vwap":8.5289,"ext_from_open_pct":-0.87,"max_ext_allowed_pct":3.0,"volume_pace":1.661,"trend":"flat","recent_slope_pct":0.0381,"volatility":"medium"},"price":8.545,"volume":{"bars":30,"last_bar_volume":3637.0,"baseline_avg":3568.25,"bar_rvol":1.019267,"raw_accel":-0.697119,"smooth_accel":0.650195,"accel_momentum":-0.230689,"rvol_3bar":[0.7068,3.983942,1.019267],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":378.0,"sell_vol":19.0,"unclassified_vol":0.0,"imbalance":0.904282,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":2.413716},"context":{"vwap":8.528899,"price_vs_vwap_pct":0.188777,"ema9":8.515093,"ema20":8.487144,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.213873,"dist_to_hod_atr":1.553849,"atr":0.067574,"spread_atr":0.147986,"own_change_pct":0.293427,"rel_strength_pct":{"SPY":0.271278,"IWM":0.240861}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.921705},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dd929db9bb18","ts":"2026-09-21T14:00:01.729601+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7296,"target":8.95,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.36},"price":8.87,"vwap":8.878,"ext_from_open_pct":1.6,"max_ext_allowed_pct":4.0,"volume_pace":2.201,"trend":"flat","recent_slope_pct":0.0676,"volatility":"high"},"price":8.87,"volume":{"bars":30,"last_bar_volume":10743.0,"baseline_avg":23201.85,"bar_rvol":0.463023,"raw_accel":-0.222761,"smooth_accel":0.168757,"accel_momentum":0.304803,"rvol_3bar":[0.49495,0.590786,0.463023],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":3776.0,"sell_vol":897.0,"unclassified_vol":0.0,"imbalance":0.616092,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":0.392308},"context":{"vwap":8.87805,"price_vs_vwap_pct":-0.090669,"ema9":8.883529,"ema20":8.88368,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.205072,"dist_to_hod_atr":2.453534,"atr":0.081515,"spread_atr":0.36803,"own_change_pct":0.056306,"rel_strength_pct":{"SPY":0.034157,"IWM":0.00374}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.285265},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a9a2eaae46be","ts":"2026-09-21T14:00:01.729601+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":9.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.05,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.215,"vwap":10.867,"ext_from_open_pct":4.81,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":0.673,"volatility":"unknown"},"price":11.215,"volume":{"bars":30,"last_bar_volume":448113.0,"baseline_avg":79690.25,"bar_rvol":5.623185,"raw_accel":0.17158,"smooth_accel":1.613363,"accel_momentum":0.359189,"rvol_3bar":[1.350407,6.150662,5.623185],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":623,"trade_rate":20.766667,"buy_vol":98495.0,"sell_vol":97530.0,"unclassified_vol":0.0,"imbalance":0.004923,"bid":11.21,"ask":11.22,"spread_pct":0.089166,"quote_size_imbalance":null,"quote_age_s":0.070883},"context":{"vwap":10.854894,"price_vs_vwap_pct":3.317453,"ema9":10.977449,"ema20":10.879833,"ema_stack":true,"ema_warm":true,"hod":11.235,"dist_to_hod_pct":-0.178015,"dist_to_hod_atr":0.139264,"atr":0.143612,"spread_atr":0.069632,"own_change_pct":2.334096,"rel_strength_pct":{"SPY":2.311947,"IWM":2.28153}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.027682},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c6548613301e","ts":"2026-09-21T14:00:06.928322+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7446,"target":8.95,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":129.1,"room_to_5d_high_atr":-0.38},"price":8.885,"vwap":8.878,"ext_from_open_pct":1.78,"max_ext_allowed_pct":4.0,"volume_pace":2.194,"trend":"flat","recent_slope_pct":0.1014,"volatility":"high"},"price":8.885,"volume":{"bars":30,"last_bar_volume":10743.0,"baseline_avg":23201.85,"bar_rvol":0.463023,"raw_accel":-0.222761,"smooth_accel":0.168757,"accel_momentum":0.304803,"rvol_3bar":[0.49495,0.590786,0.463023],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":3778.0,"sell_vol":896.0,"unclassified_vol":0.0,"imbalance":0.616602,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":0.387625},"context":{"vwap":8.87805,"price_vs_vwap_pct":0.078287,"ema9":8.883529,"ema20":8.88368,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.039691,"dist_to_hod_atr":2.269519,"atr":0.081515,"spread_atr":0.36803,"own_change_pct":0.056306,"rel_strength_pct":{"SPY":0.034157,"IWM":0.00374}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.285501},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2b9bcdafc6c6","ts":"2026-09-21T14:00:12.199286+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.185,"target":9.09,"target_label":"range_20d_high","reward_risk":6.54,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.305,"vwap":8.1629,"ext_from_open_pct":3.68,"max_ext_allowed_pct":4.0,"volume_pace":9.224,"trend":"flat","recent_slope_pct":-0.4947,"volatility":"unknown"},"price":8.305,"volume":{"bars":30,"last_bar_volume":5453.0,"baseline_avg":10020.3,"bar_rvol":0.544195,"raw_accel":-0.458974,"smooth_accel":0.545665,"accel_momentum":0.464789,"rvol_3bar":[0.499605,0.976259,0.544195],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3373.0,"sell_vol":3184.0,"unclassified_vol":0.0,"imbalance":0.028824,"bid":8.32,"ask":8.38,"spread_pct":0.718563,"quote_size_imbalance":null,"quote_age_s":2.599251},"context":{"vwap":8.161813,"price_vs_vwap_pct":1.754357,"ema9":8.406417,"ema20":8.325441,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.205128,"dist_to_hod_atr":1.562437,"atr":0.176007,"spread_atr":0.340895,"own_change_pct":-0.238095,"rel_strength_pct":{"SPY":-0.260244,"IWM":-0.290661}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.015686},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c927f3b57bbd","ts":"2026-09-21T14:00:12.199286+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.427,"target":8.76,"target_label":"premarket_high","reward_risk":2.27,"pos_in_5d_range_pct":113.9,"room_to_5d_high_atr":-0.44},"price":8.5289,"vwap":8.5289,"ext_from_open_pct":-1.06,"max_ext_allowed_pct":3.0,"volume_pace":1.651,"trend":"flat","recent_slope_pct":0.0004,"volatility":"medium"},"price":8.5289,"volume":{"bars":30,"last_bar_volume":3637.0,"baseline_avg":3568.25,"bar_rvol":1.019267,"raw_accel":-0.697119,"smooth_accel":0.650195,"accel_momentum":-0.230689,"rvol_3bar":[0.7068,3.983942,1.019267],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":220.0,"sell_vol":52.0,"unclassified_vol":0.0,"imbalance":0.617647,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":0.012162},"context":{"vwap":8.528899,"price_vs_vwap_pct":7e-06,"ema9":8.515093,"ema20":8.487144,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.4,"dist_to_hod_atr":1.792105,"atr":0.067574,"spread_atr":0.147986,"own_change_pct":0.293427,"rel_strength_pct":{"SPY":0.271278,"IWM":0.240861}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.629547},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fa0e6a1eaf50","ts":"2026-09-21T14:00:17.329361+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $8.01 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.24,"target":9.09,"target_label":"range_20d_high","reward_risk":6.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.36,"vwap":8.1631,"ext_from_open_pct":4.37,"max_ext_allowed_pct":4.0,"volume_pace":9.203,"trend":"flat","recent_slope_pct":-0.3634,"volatility":"unknown"},"price":8.36,"volume":{"bars":30,"last_bar_volume":5453.0,"baseline_avg":10020.3,"bar_rvol":0.544195,"raw_accel":-0.458974,"smooth_accel":0.545665,"accel_momentum":0.464789,"rvol_3bar":[0.499605,0.976259,0.544195],"trend_3bar":"MIXED","projected_rvol":0.933972},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1583.0,"sell_vol":2884.0,"unclassified_vol":0.0,"imbalance":-0.291247,"bid":8.32,"ask":8.38,"spread_pct":0.718563,"quote_size_imbalance":null,"quote_age_s":7.729326},"context":{"vwap":8.161813,"price_vs_vwap_pct":2.428227,"ema9":8.406417,"ema20":8.325441,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.564103,"dist_to_hod_atr":1.249949,"atr":0.176007,"spread_atr":0.340895,"own_change_pct":-0.238095,"rel_strength_pct":{"SPY":-0.260244,"IWM":-0.290661}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.158495},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a861fbe8162d","ts":"2026-09-21T14:00:17.329361+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.4431,"target":8.76,"target_label":"premarket_high","reward_risk":2.11,"pos_in_5d_range_pct":115.2,"room_to_5d_high_atr":-0.48},"price":8.545,"vwap":8.5289,"ext_from_open_pct":-0.87,"max_ext_allowed_pct":3.0,"volume_pace":1.648,"trend":"flat","recent_slope_pct":0.0381,"volatility":"medium"},"price":8.545,"volume":{"bars":30,"last_bar_volume":3637.0,"baseline_avg":3568.25,"bar_rvol":1.019267,"raw_accel":-0.697119,"smooth_accel":0.650195,"accel_momentum":-0.230689,"rvol_3bar":[0.7068,3.983942,1.019267],"trend_3bar":"MIXED","projected_rvol":0.272659},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":373.0,"sell_vol":48.0,"unclassified_vol":0.0,"imbalance":0.771971,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":0.984233},"context":{"vwap":8.528899,"price_vs_vwap_pct":0.188777,"ema9":8.515093,"ema20":8.487144,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.213873,"dist_to_hod_atr":1.553849,"atr":0.067574,"spread_atr":0.147986,"own_change_pct":0.293427,"rel_strength_pct":{"SPY":0.271278,"IWM":0.240861}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.786845},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2db10b9362d9","ts":"2026-09-21T14:00:27.734074+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.52 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4181,"target":8.76,"target_label":"premarket_high","reward_risk":2.35,"pos_in_5d_range_pct":113.2,"room_to_5d_high_atr":-0.42},"price":8.52,"vwap":8.5289,"ext_from_open_pct":-1.16,"max_ext_allowed_pct":3.0,"volume_pace":1.652,"trend":"flat","recent_slope_pct":-0.0205,"volatility":"medium"},"price":8.52,"volume":{"bars":30,"last_bar_volume":3637.0,"baseline_avg":3568.25,"bar_rvol":1.019267,"raw_accel":-0.697119,"smooth_accel":0.650195,"accel_momentum":-0.230689,"rvol_3bar":[0.7068,3.983942,1.019267],"trend_3bar":"MIXED","projected_rvol":1.431457},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1258.0,"sell_vol":1103.0,"unclassified_vol":0.0,"imbalance":0.06565,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":0.031107},"context":{"vwap":8.528899,"price_vs_vwap_pct":-0.104344,"ema9":8.515093,"ema20":8.487144,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.50289,"dist_to_hod_atr":1.923812,"atr":0.067574,"spread_atr":0.147986,"own_change_pct":0.293427,"rel_strength_pct":{"SPY":0.271278,"IWM":0.240861}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.066915},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"db4214486f3d","ts":"2026-09-21T14:00:27.734074+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7296,"target":8.95,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.36},"price":8.87,"vwap":8.8781,"ext_from_open_pct":1.6,"max_ext_allowed_pct":3.0,"volume_pace":2.174,"trend":"flat","recent_slope_pct":0.0676,"volatility":"high"},"price":8.87,"volume":{"bars":30,"last_bar_volume":10743.0,"baseline_avg":23201.85,"bar_rvol":0.463023,"raw_accel":-0.222761,"smooth_accel":0.168757,"accel_momentum":0.304803,"rvol_3bar":[0.49495,0.590786,0.463023],"trend_3bar":"MIXED","projected_rvol":0.165413},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":930.0,"sell_vol":1191.0,"unclassified_vol":0.0,"imbalance":-0.123055,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":2.612651},"context":{"vwap":8.87805,"price_vs_vwap_pct":-0.090669,"ema9":8.883529,"ema20":8.88368,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.205072,"dist_to_hod_atr":2.453534,"atr":0.081515,"spread_atr":0.36803,"own_change_pct":0.056306,"rel_strength_pct":{"SPY":0.034157,"IWM":0.00374}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.056977},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"195a210ab55d","ts":"2026-09-21T14:00:32.860910+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.191,"target":9.09,"target_label":"range_20d_high","reward_risk":6.49,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.311,"vwap":8.1637,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":9.159,"trend":"flat","recent_slope_pct":-0.4803,"volatility":"unknown"},"price":8.311,"volume":{"bars":30,"last_bar_volume":5453.0,"baseline_avg":10020.3,"bar_rvol":0.544195,"raw_accel":-0.458974,"smooth_accel":0.545665,"accel_momentum":0.464789,"rvol_3bar":[0.499605,0.976259,0.544195],"trend_3bar":"MIXED","projected_rvol":0.784266},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":1412.0,"sell_vol":2282.0,"unclassified_vol":0.0,"imbalance":-0.235517,"bid":8.32,"ask":8.38,"spread_pct":0.718563,"quote_size_imbalance":null,"quote_age_s":23.260875},"context":{"vwap":8.161813,"price_vs_vwap_pct":1.82787,"ema9":8.406417,"ema20":8.325441,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.135198,"dist_to_hod_atr":1.528347,"atr":0.176007,"spread_atr":0.340895,"own_change_pct":-0.238095,"rel_strength_pct":{"SPY":-0.260244,"IWM":-0.290661}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.128167},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c432e66189d1","ts":"2026-09-21T14:00:32.860910+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7446,"target":8.95,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":129.1,"room_to_5d_high_atr":-0.38},"price":8.885,"vwap":8.8781,"ext_from_open_pct":1.78,"max_ext_allowed_pct":3.0,"volume_pace":2.169,"trend":"flat","recent_slope_pct":0.1014,"volatility":"high"},"price":8.885,"volume":{"bars":30,"last_bar_volume":10743.0,"baseline_avg":23201.85,"bar_rvol":0.463023,"raw_accel":-0.222761,"smooth_accel":0.168757,"accel_momentum":0.304803,"rvol_3bar":[0.49495,0.590786,0.463023],"trend_3bar":"MIXED","projected_rvol":0.154558},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":1120.0,"sell_vol":834.0,"unclassified_vol":0.0,"imbalance":0.146366,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":0.472154},"context":{"vwap":8.87805,"price_vs_vwap_pct":0.078287,"ema9":8.883529,"ema20":8.88368,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.039691,"dist_to_hod_atr":2.269519,"atr":0.081515,"spread_atr":0.36803,"own_change_pct":0.056306,"rel_strength_pct":{"SPY":0.034157,"IWM":0.00374}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.067771},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"996790b45f5b","ts":"2026-09-21T14:00:37.948081+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.20% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.1762,"target":9.09,"target_label":"range_20d_high","reward_risk":3.57,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3762,"vwap":8.1701,"ext_from_open_pct":4.57,"max_ext_allowed_pct":4.0,"volume_pace":9.446,"trend":"flat","recent_slope_pct":-0.3248,"volatility":"unknown"},"price":8.3762,"volume":{"bars":30,"last_bar_volume":5453.0,"baseline_avg":10020.3,"bar_rvol":0.544195,"raw_accel":-0.458974,"smooth_accel":0.545665,"accel_momentum":0.464789,"rvol_3bar":[0.499605,0.976259,0.544195],"trend_3bar":"MIXED","projected_rvol":2.982239},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":2248.0,"sell_vol":14798.0,"unclassified_vol":0.0,"imbalance":-0.736243,"bid":8.28,"ask":8.38,"spread_pct":1.20048,"quote_size_imbalance":null,"quote_age_s":3.372698},"context":{"vwap":8.161813,"price_vs_vwap_pct":2.626712,"ema9":8.406417,"ema20":8.325441,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.375291,"dist_to_hod_atr":1.157907,"atr":0.176007,"spread_atr":0.568159,"own_change_pct":-0.238095,"rel_strength_pct":{"SPY":-0.260244,"IWM":-0.290661}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.40066},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"44d45a1439cb","ts":"2026-09-21T14:00:42.984673+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.88 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7346,"target":8.95,"target_label":"premarket_high","reward_risk":0.53,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.37},"price":8.875,"vwap":8.8781,"ext_from_open_pct":1.66,"max_ext_allowed_pct":3.0,"volume_pace":2.157,"trend":"flat","recent_slope_pct":0.0789,"volatility":"high"},"price":8.875,"volume":{"bars":30,"last_bar_volume":10743.0,"baseline_avg":23201.85,"bar_rvol":0.463023,"raw_accel":-0.222761,"smooth_accel":0.168757,"accel_momentum":0.304803,"rvol_3bar":[0.49495,0.590786,0.463023],"trend_3bar":"MIXED","projected_rvol":0.130489},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":527.0,"sell_vol":783.0,"unclassified_vol":0.0,"imbalance":-0.19542,"bid":8.85,"ask":8.9,"spread_pct":0.56338,"quote_size_imbalance":null,"quote_age_s":0.079889},"context":{"vwap":8.87805,"price_vs_vwap_pct":-0.034351,"ema9":8.883529,"ema20":8.88368,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.149945,"dist_to_hod_atr":2.392196,"atr":0.081515,"spread_atr":0.613384,"own_change_pct":0.056306,"rel_strength_pct":{"SPY":0.034157,"IWM":0.00374}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.090484},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b37d0b9ed16f","ts":"2026-09-21T14:00:58.217831+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.433,"target":8.76,"target_label":"premarket_high","reward_risk":2.21,"pos_in_5d_range_pct":114.4,"room_to_5d_high_atr":-0.45},"price":8.5349,"vwap":8.5289,"ext_from_open_pct":-0.99,"max_ext_allowed_pct":3.0,"volume_pace":1.626,"trend":"flat","recent_slope_pct":0.0144,"volatility":"medium"},"price":8.5349,"volume":{"bars":30,"last_bar_volume":3637.0,"baseline_avg":3568.25,"bar_rvol":1.019267,"raw_accel":-0.697119,"smooth_accel":0.650195,"accel_momentum":-0.230689,"rvol_3bar":[0.7068,3.983942,1.019267],"trend_3bar":"MIXED","projected_rvol":0.7446},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":154.0,"sell_vol":63.0,"unclassified_vol":0.0,"imbalance":0.419355,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":1.23562},"context":{"vwap":8.528899,"price_vs_vwap_pct":0.070356,"ema9":8.515093,"ema20":8.487144,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.330636,"dist_to_hod_atr":1.703314,"atr":0.067574,"spread_atr":0.147986,"own_change_pct":0.293427,"rel_strength_pct":{"SPY":0.271278,"IWM":0.240861}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.427435},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b57397f2e94d","ts":"2026-09-21T14:01:08.312821+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4231,"target":8.76,"target_label":"premarket_high","reward_risk":2.31,"pos_in_5d_range_pct":113.6,"room_to_5d_high_atr":-0.43},"price":8.525,"vwap":8.5289,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":3.0,"volume_pace":1.617,"trend":"flat","recent_slope_pct":0.0702,"volatility":"medium"},"price":8.525,"volume":{"bars":31,"last_bar_volume":2578.0,"baseline_avg":3678.3,"bar_rvol":0.700867,"raw_accel":-0.291174,"smooth_accel":2.641687,"accel_momentum":1.991492,"rvol_3bar":[3.983942,1.019267,0.700867],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":137.0,"sell_vol":64.0,"unclassified_vol":0.0,"imbalance":0.363184,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":9.055652},"context":{"vwap":8.528944,"price_vs_vwap_pct":-0.046244,"ema9":8.519054,"ema20":8.491692,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.445087,"dist_to_hod_atr":1.936989,"atr":0.064533,"spread_atr":0.154959,"own_change_pct":-0.059719,"rel_strength_pct":{"SPY":-0.083174,"IWM":-0.057966}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.254544},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b501e9e51a51","ts":"2026-09-21T14:01:13.399072+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.53 below VWAP $11.53","plan":{"state":"PASS","setup":"","stop":11.3255,"target":12.0,"target_label":"premarket_high","reward_risk":2.3,"pos_in_5d_range_pct":112.6,"room_to_5d_high_atr":-0.56},"price":11.53,"vwap":11.5301,"ext_from_open_pct":-1.2,"max_ext_allowed_pct":3.0,"volume_pace":0.6,"trend":"flat","recent_slope_pct":0.1911,"volatility":"high"},"price":11.53,"volume":{"bars":31,"last_bar_volume":19056.0,"baseline_avg":18850.05,"bar_rvol":1.010926,"raw_accel":-0.43521,"smooth_accel":0.77995,"accel_momentum":-1.666902,"rvol_3bar":[0.268528,1.902303,1.010926],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":902.0,"sell_vol":6414.0,"unclassified_vol":0.0,"imbalance":-0.753417,"bid":11.5,"ask":11.56,"spread_pct":0.520382,"quote_size_imbalance":null,"quote_age_s":1.778834},"context":{"vwap":11.530097,"price_vs_vwap_pct":-0.000843,"ema9":11.495319,"ema20":11.485292,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.75626,"dist_to_hod_atr":2.619858,"atr":0.171765,"spread_atr":0.349314,"own_change_pct":1.256279,"rel_strength_pct":{"SPY":1.232824,"IWM":1.258032}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.761649},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e324e7f96af7","ts":"2026-09-21T14:01:18.465711+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":11.3553,"target":12.0,"target_label":"premarket_high","reward_risk":2.15,"pos_in_5d_range_pct":113.5,"room_to_5d_high_atr":-0.6},"price":11.5598,"vwap":11.5302,"ext_from_open_pct":-0.94,"max_ext_allowed_pct":3.0,"volume_pace":0.599,"trend":"flat","recent_slope_pct":0.2427,"volatility":"high"},"price":11.5598,"volume":{"bars":31,"last_bar_volume":19056.0,"baseline_avg":18850.05,"bar_rvol":1.010926,"raw_accel":-0.43521,"smooth_accel":0.77995,"accel_momentum":-1.666902,"rvol_3bar":[0.268528,1.902303,1.010926],"trend_3bar":"MIXED","projected_rvol":0.951679},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":1902.0,"sell_vol":6894.0,"unclassified_vol":0.0,"imbalance":-0.567531,"bid":11.5,"ask":11.56,"spread_pct":0.520382,"quote_size_imbalance":null,"quote_age_s":6.845473},"context":{"vwap":11.530097,"price_vs_vwap_pct":0.257611,"ema9":11.495319,"ema20":11.485292,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.507513,"dist_to_hod_atr":2.446365,"atr":0.171765,"spread_atr":0.349314,"own_change_pct":1.256279,"rel_strength_pct":{"SPY":1.232824,"IWM":1.258032}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.573731},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"de40f7ae07f9","ts":"2026-09-21T14:01:23.541303+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.53 below VWAP $11.53","plan":{"state":"PASS","setup":"","stop":11.3255,"target":12.0,"target_label":"premarket_high","reward_risk":2.3,"pos_in_5d_range_pct":112.6,"room_to_5d_high_atr":-0.56},"price":11.53,"vwap":11.5301,"ext_from_open_pct":-1.2,"max_ext_allowed_pct":3.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":0.1911,"volatility":"high"},"price":11.53,"volume":{"bars":31,"last_bar_volume":19056.0,"baseline_avg":18850.05,"bar_rvol":1.010926,"raw_accel":-0.43521,"smooth_accel":0.77995,"accel_momentum":-1.666902,"rvol_3bar":[0.268528,1.902303,1.010926],"trend_3bar":"MIXED","projected_rvol":0.756229},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":1769.0,"sell_vol":4899.0,"unclassified_vol":0.0,"imbalance":-0.469406,"bid":11.5,"ask":11.56,"spread_pct":0.520382,"quote_size_imbalance":null,"quote_age_s":11.921065},"context":{"vwap":11.530097,"price_vs_vwap_pct":-0.000843,"ema9":11.495319,"ema20":11.485292,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.75626,"dist_to_hod_atr":2.619858,"atr":0.171765,"spread_atr":0.349314,"own_change_pct":1.256279,"rel_strength_pct":{"SPY":1.232824,"IWM":1.258032}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.474535},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d647dfd3b09f","ts":"2026-09-21T14:01:33.685627+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":11.3355,"target":12.0,"target_label":"premarket_high","reward_risk":2.25,"pos_in_5d_range_pct":112.9,"room_to_5d_high_atr":-0.57},"price":11.54,"vwap":11.5301,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.595,"trend":"flat","recent_slope_pct":0.2084,"volatility":"high"},"price":11.54,"volume":{"bars":31,"last_bar_volume":19056.0,"baseline_avg":18850.05,"bar_rvol":1.010926,"raw_accel":-0.43521,"smooth_accel":0.77995,"accel_momentum":-1.666902,"rvol_3bar":[0.268528,1.902303,1.010926],"trend_3bar":"MIXED","projected_rvol":0.55684},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1394.0,"sell_vol":2727.0,"unclassified_vol":0.0,"imbalance":-0.323465,"bid":11.5,"ask":11.56,"spread_pct":0.520382,"quote_size_imbalance":null,"quote_age_s":1.132029},"context":{"vwap":11.530097,"price_vs_vwap_pct":0.085886,"ema9":11.495319,"ema20":11.485292,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.672788,"dist_to_hod_atr":2.561639,"atr":0.171765,"spread_atr":0.349314,"own_change_pct":1.256279,"rel_strength_pct":{"SPY":1.232824,"IWM":1.258032}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.326999},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a3757f78b70c","ts":"2026-09-21T14:01:33.685627+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7477,"target":8.95,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":129.5,"room_to_5d_high_atr":-0.39},"price":8.8881,"vwap":8.8781,"ext_from_open_pct":1.81,"max_ext_allowed_pct":3.0,"volume_pace":2.103,"trend":"flat","recent_slope_pct":-0.0043,"volatility":"high"},"price":8.8881,"volume":{"bars":31,"last_bar_volume":2478.0,"baseline_avg":22562.1,"bar_rvol":0.10983,"raw_accel":-0.769338,"smooth_accel":0.713752,"accel_momentum":0.544995,"rvol_3bar":[0.590786,0.463023,0.10983],"trend_3bar":"DECELERATING","projected_rvol":0.08684},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":586.0,"sell_vol":514.0,"unclassified_vol":0.0,"imbalance":0.065455,"bid":8.85,"ask":8.89,"spread_pct":0.450958,"quote_size_imbalance":null,"quote_age_s":8.692739},"context":{"vwap":8.878056,"price_vs_vwap_pct":0.113134,"ema9":8.880823,"ema20":8.882377,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.005513,"dist_to_hod_atr":2.336982,"atr":0.077835,"spread_atr":0.513905,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.023456,"IWM":0.001753}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.007189},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f57a1518ba67","ts":"2026-09-21T14:01:38.749075+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.53 below VWAP $11.53","plan":{"state":"PASS","setup":"","stop":11.3255,"target":12.0,"target_label":"premarket_high","reward_risk":2.3,"pos_in_5d_range_pct":112.6,"room_to_5d_high_atr":-0.56},"price":11.53,"vwap":11.5301,"ext_from_open_pct":-1.2,"max_ext_allowed_pct":3.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":0.1911,"volatility":"high"},"price":11.53,"volume":{"bars":31,"last_bar_volume":19056.0,"baseline_avg":18850.05,"bar_rvol":1.010926,"raw_accel":-0.43521,"smooth_accel":0.77995,"accel_momentum":-1.666902,"rvol_3bar":[0.268528,1.902303,1.010926],"trend_3bar":"MIXED","projected_rvol":0.485719},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":1167.0,"sell_vol":1305.0,"unclassified_vol":0.0,"imbalance":-0.055825,"bid":11.5,"ask":11.56,"spread_pct":0.520382,"quote_size_imbalance":null,"quote_age_s":6.195477},"context":{"vwap":11.530097,"price_vs_vwap_pct":-0.000843,"ema9":11.495319,"ema20":11.485292,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.75626,"dist_to_hod_atr":2.619858,"atr":0.171765,"spread_atr":0.349314,"own_change_pct":1.256279,"rel_strength_pct":{"SPY":1.232824,"IWM":1.258032}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.056435},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fa7d2666e159","ts":"2026-09-21T14:01:38.749075+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7296,"target":8.95,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.36},"price":8.87,"vwap":8.878,"ext_from_open_pct":1.6,"max_ext_allowed_pct":3.0,"volume_pace":2.098,"trend":"flat","recent_slope_pct":-0.0451,"volatility":"high"},"price":8.87,"volume":{"bars":31,"last_bar_volume":2478.0,"baseline_avg":22562.1,"bar_rvol":0.10983,"raw_accel":-0.769338,"smooth_accel":0.713752,"accel_momentum":0.544995,"rvol_3bar":[0.590786,0.463023,0.10983],"trend_3bar":"DECELERATING","projected_rvol":0.075836},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":586.0,"sell_vol":509.0,"unclassified_vol":0.0,"imbalance":0.07032,"bid":8.85,"ask":8.89,"spread_pct":0.450958,"quote_size_imbalance":null,"quote_age_s":1.170901},"context":{"vwap":8.878056,"price_vs_vwap_pct":-0.090739,"ema9":8.880823,"ema20":8.882377,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.205072,"dist_to_hod_atr":2.569524,"atr":0.077835,"spread_atr":0.513905,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.023456,"IWM":0.001753}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.007723},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"1e6c9720fe7c","ts":"2026-09-21T14:02:04.244223+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 199.3s, plan says PASS; stop 8.44, target 8.82 (prev_day_high), R:R 2.48; target 0.27 away > ~0.26 reachable in 353 min","plan":{"state":"PASS","setup":"","stop":8.4411,"target":8.82,"target_label":"prev_day_high","reward_risk":2.48,"pos_in_5d_range_pct":50.0,"room_to_5d_high_atr":0.84},"price":8.55,"vwap":8.5298,"ext_from_open_pct":-1.95,"max_ext_allowed_pct":3.0,"volume_pace":1.285,"trend":"flat","recent_slope_pct":0.0078,"volatility":"medium"},"price":8.55,"volume":{"bars":32,"last_bar_volume":54336.0,"baseline_avg":16266.3,"bar_rvol":3.340403,"raw_accel":3.046771,"smooth_accel":1.218399,"accel_momentum":0.864833,"rvol_3bar":[0.479488,0.807229,3.340403],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":878.0,"sell_vol":1729.0,"unclassified_vol":0.0,"imbalance":-0.326429,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":0.003288},"context":{"vwap":8.529787,"price_vs_vwap_pct":0.236965,"ema9":8.54443,"ema20":8.532787,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.173913,"dist_to_hod_atr":3.067383,"atr":0.061942,"spread_atr":0.161441,"own_change_pct":0.116959,"rel_strength_pct":{"SPY":0.085682,"IWM":0.120464}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.090404},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4f2dc03384a6","ts":"2026-09-21T14:02:44.616748+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.4581,"target":8.76,"target_label":"premarket_high","reward_risk":1.96,"pos_in_5d_range_pct":116.4,"room_to_5d_high_atr":-0.52},"price":8.56,"vwap":8.5291,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":4.0,"volume_pace":1.599,"trend":"flat","recent_slope_pct":0.0176,"volatility":"medium"},"price":8.56,"volume":{"bars":32,"last_bar_volume":5838.0,"baseline_avg":3724.85,"bar_rvol":1.567311,"raw_accel":1.264546,"smooth_accel":-0.266046,"accel_momentum":-2.907732,"rvol_3bar":[1.019267,0.700867,1.567311],"trend_3bar":"MIXED","projected_rvol":1.507666},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":3783.0,"sell_vol":232.0,"unclassified_vol":0.0,"imbalance":0.884433,"bid":8.56,"ask":8.58,"spread_pct":0.233372,"quote_size_imbalance":null,"quote_age_s":0.022534},"context":{"vwap":8.528847,"price_vs_vwap_pct":0.365265,"ema9":8.519243,"ema20":8.494388,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.040462,"dist_to_hod_atr":1.475702,"atr":0.060988,"spread_atr":0.327934,"own_change_pct":-0.409117,"rel_strength_pct":{"SPY":-0.440394,"IWM":-0.405613}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.386183},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2f4fd6a516ca","ts":"2026-09-21T14:02:59.713112+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.2,"target":9.09,"target_label":"range_20d_high","reward_risk":4.56,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.36,"vwap":8.1734,"ext_from_open_pct":4.37,"max_ext_allowed_pct":5.0,"volume_pace":9.002,"trend":"flat","recent_slope_pct":-0.2754,"volatility":"unknown"},"price":8.36,"volume":{"bars":32,"last_bar_volume":1783.0,"baseline_avg":11472.3,"bar_rvol":0.155418,"raw_accel":-0.932004,"smooth_accel":1.158163,"accel_momentum":-1.328019,"rvol_3bar":[0.544195,2.569865,0.155418],"trend_3bar":"MIXED","projected_rvol":0.22816},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1728.0,"sell_vol":207.0,"unclassified_vol":0.0,"imbalance":0.786047,"bid":8.29,"ask":8.37,"spread_pct":0.960384,"quote_size_imbalance":null,"quote_age_s":1.074893},"context":{"vwap":8.172431,"price_vs_vwap_pct":2.295146,"ema9":8.366523,"ema20":8.320222,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.564103,"dist_to_hod_atr":1.300581,"atr":0.169155,"spread_atr":0.472939,"own_change_pct":-2.231668,"rel_strength_pct":{"SPY":-2.262945,"IWM":-2.228164}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.122166},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f4707d6774bf","ts":"2026-09-21T14:03:04.741677+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2002,"target":9.09,"target_label":"range_20d_high","reward_risk":4.56,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3602,"vwap":8.1746,"ext_from_open_pct":4.37,"max_ext_allowed_pct":5.0,"volume_pace":9.041,"trend":"flat","recent_slope_pct":0.0064,"volatility":"unknown"},"price":8.3602,"volume":{"bars":33,"last_bar_volume":2605.0,"baseline_avg":11521.55,"bar_rvol":0.226098,"raw_accel":-0.095608,"smooth_accel":0.480103,"accel_momentum":-0.67806,"rvol_3bar":[2.569865,0.155418,0.226098],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":4747.0,"sell_vol":257.0,"unclassified_vol":0.0,"imbalance":0.897282,"bid":8.29,"ask":8.37,"spread_pct":0.960384,"quote_size_imbalance":null,"quote_age_s":6.103458},"context":{"vwap":8.173355,"price_vs_vwap_pct":2.28602,"ema9":8.365218,"ema20":8.32401,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.561772,"dist_to_hod_atr":1.338485,"atr":0.164215,"spread_atr":0.487165,"own_change_pct":-1.27539,"rel_strength_pct":{"SPY":-1.288419,"IWM":-1.268384}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.202874},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bd916ef1982a","ts":"2026-09-21T14:03:14.803417+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 269.8s, plan says WATCH; stop 8.45, target 8.82 (prev_day_high), R:R 2.41; imbalance -96% still heavy selling; pullback low 8.36 broke support 8.53; no reclaim yet (needs a close > 8.58); pullbac","plan":{"state":"WATCH","setup":"","stop":8.4489,"target":8.82,"target_label":"prev_day_high","reward_risk":2.41,"pos_in_5d_range_pct":51.1,"room_to_5d_high_atr":0.82},"price":8.5578,"vwap":8.5299,"ext_from_open_pct":-1.86,"max_ext_allowed_pct":3.0,"volume_pace":1.251,"trend":"flat","recent_slope_pct":-0.0129,"volatility":"medium"},"price":8.5578,"volume":{"bars":33,"last_bar_volume":11111.0,"baseline_avg":17506.3,"bar_rvol":0.634686,"raw_accel":-0.795513,"smooth_accel":1.379593,"accel_momentum":0.161194,"rvol_3bar":[0.807229,3.340403,0.634686],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":315.0,"sell_vol":1686.0,"unclassified_vol":0.0,"imbalance":-0.685157,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.365919},"context":{"vwap":8.529868,"price_vs_vwap_pct":0.327459,"ema9":8.541544,"ema20":8.532522,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.084668,"dist_to_hod_atr":3.00007,"atr":0.060732,"spread_atr":0.164658,"own_change_pct":-0.292227,"rel_strength_pct":{"SPY":-0.305256,"IWM":-0.285222}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.43486},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"aa06e937b0ea","ts":"2026-09-21T14:03:19.848697+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 274.9s, plan says PASS; stop 8.43, target 8.82 (prev_day_high), R:R 2.62; target 0.29 away > ~0.27 reachable in 352 min","plan":{"state":"PASS","setup":"","stop":8.4261,"target":8.82,"target_label":"prev_day_high","reward_risk":2.62,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":0.87},"price":8.535,"vwap":8.5299,"ext_from_open_pct":-2.12,"max_ext_allowed_pct":3.0,"volume_pace":1.248,"trend":"flat","recent_slope_pct":-0.0662,"volatility":"medium"},"price":8.535,"volume":{"bars":33,"last_bar_volume":11111.0,"baseline_avg":17506.3,"bar_rvol":0.634686,"raw_accel":-0.795513,"smooth_accel":1.379593,"accel_momentum":0.161194,"rvol_3bar":[0.807229,3.340403,0.634686],"trend_3bar":"MIXED","projected_rvol":0.426675},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":350.0,"sell_vol":2510.0,"unclassified_vol":0.0,"imbalance":-0.755245,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.127877},"context":{"vwap":8.529868,"price_vs_vwap_pct":0.060163,"ema9":8.541544,"ema20":8.532522,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.345538,"dist_to_hod_atr":3.375491,"atr":0.060732,"spread_atr":0.164658,"own_change_pct":-0.292227,"rel_strength_pct":{"SPY":-0.305256,"IWM":-0.285222}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.479343},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"183aaf97991d","ts":"2026-09-21T14:03:19.848697+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":5.66,"target":6.07,"target_label":"range_20d_high","reward_risk":1.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.825,"vwap":5.6879,"ext_from_open_pct":5.14,"max_ext_allowed_pct":4.0,"volume_pace":2.44,"trend":"flat","recent_slope_pct":-0.0208,"volatility":"unknown"},"price":5.825,"volume":{"bars":33,"last_bar_volume":215004.0,"baseline_avg":194308.25,"bar_rvol":1.10651,"raw_accel":0.384702,"smooth_accel":0.02,"accel_momentum":-0.210594,"rvol_3bar":[3.127553,0.783228,1.10651],"trend_3bar":"MIXED","projected_rvol":0.406569},"flow":{"window_s":30,"trades":126,"trade_rate":4.2,"buy_vol":21150.0,"sell_vol":7504.0,"unclassified_vol":0.0,"imbalance":0.476234,"bid":5.82,"ask":5.83,"spread_pct":0.171674,"quote_size_imbalance":null,"quote_age_s":0.045134},"context":{"vwap":5.687299,"price_vs_vwap_pct":2.421204,"ema9":5.775943,"ema20":5.734472,"ema_stack":true,"ema_warm":true,"hod":5.8499,"dist_to_hod_pct":-0.425648,"dist_to_hod_atr":0.533884,"atr":0.046639,"spread_atr":0.214411,"own_change_pct":0.298181,"rel_strength_pct":{"SPY":0.285152,"IWM":0.305187}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.526957},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4de7347a2770","ts":"2026-09-21T14:03:45.071400+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.3037,"target":6.55,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.07},"price":6.467,"vwap":6.4107,"ext_from_open_pct":1.21,"max_ext_allowed_pct":4.0,"volume_pace":1.703,"trend":"flat","recent_slope_pct":0.349,"volatility":"high"},"price":6.467,"volume":{"bars":33,"last_bar_volume":6141.0,"baseline_avg":20331.55,"bar_rvol":0.302043,"raw_accel":0.208172,"smooth_accel":-0.24739,"accel_momentum":-0.240101,"rvol_3bar":[0.061305,0.15538,0.302043],"trend_3bar":"ACCELERATING","projected_rvol":0.423955},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":2242.0,"sell_vol":906.0,"unclassified_vol":0.0,"imbalance":0.424396,"bid":6.44,"ask":6.48,"spread_pct":0.619195,"quote_size_imbalance":null,"quote_age_s":0.439273},"context":{"vwap":6.410411,"price_vs_vwap_pct":0.882772,"ema9":6.401203,"ema20":6.403176,"ema_stack":false,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-2.015152,"dist_to_hod_atr":2.252055,"atr":0.059057,"spread_atr":0.67731,"own_change_pct":-0.256211,"rel_strength_pct":{"SPY":-0.26924,"IWM":-0.249206}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.128186},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c61f97a89ebe","ts":"2026-09-21T14:03:55.200227+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 310.2s, plan says WATCH; stop 8.45, target 8.82 (prev_day_high), R:R 2.41; imbalance -94% still heavy selling; pullback low 8.36 broke support 8.53; no reclaim yet (needs a close > 8.58); pullbac","plan":{"state":"WATCH","setup":"","stop":8.4485,"target":8.82,"target_label":"prev_day_high","reward_risk":2.41,"pos_in_5d_range_pct":51.0,"room_to_5d_high_atr":0.82},"price":8.5574,"vwap":8.5299,"ext_from_open_pct":-1.86,"max_ext_allowed_pct":3.0,"volume_pace":1.228,"trend":"flat","recent_slope_pct":-0.0138,"volatility":"medium"},"price":8.5574,"volume":{"bars":33,"last_bar_volume":11111.0,"baseline_avg":17506.3,"bar_rvol":0.634686,"raw_accel":-0.795513,"smooth_accel":1.379593,"accel_momentum":0.161194,"rvol_3bar":[0.807229,3.340403,0.634686],"trend_3bar":"MIXED","projected_rvol":0.220727},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":246.0,"sell_vol":428.0,"unclassified_vol":0.0,"imbalance":-0.27003,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.260114},"context":{"vwap":8.529868,"price_vs_vwap_pct":0.322769,"ema9":8.541544,"ema20":8.532522,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.089245,"dist_to_hod_atr":3.006657,"atr":0.060732,"spread_atr":0.164658,"own_change_pct":-0.292227,"rel_strength_pct":{"SPY":-0.305256,"IWM":-0.285222}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.171384},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"653b792d0c04","ts":"2026-09-21T14:04:00.235196+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.935,"target":9.74,"target_label":"premarket_high","reward_risk":0.06,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.695,"vwap":9.5805,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.165,"trend":"flat","recent_slope_pct":0.3621,"volatility":"unknown"},"price":9.695,"volume":{"bars":29,"last_bar_volume":1037.0,"baseline_avg":396.5,"bar_rvol":2.615385,"raw_accel":9.461538,"smooth_accel":4.95288,"accel_momentum":5.482955,"rvol_3bar":[0.076511,0.109769,2.615385],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":50.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":9.49,"ask":9.87,"spread_pct":3.92562,"quote_size_imbalance":null,"quote_age_s":64.499346},"context":{"vwap":9.580455,"price_vs_vwap_pct":1.195615,"ema9":9.510797,"ema20":9.509908,"ema_stack":true,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-3.914767,"dist_to_hod_atr":4.453447,"atr":0.088695,"spread_atr":4.284329,"own_change_pct":-0.524109,"rel_strength_pct":{"SPY":-0.530624,"IWM":-0.524109}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.615385},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8a740df6882d","ts":"2026-09-21T14:04:05.270214+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.0133,"target":5.1483,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":61.8,"room_to_5d_high_atr":0.75},"price":5.1,"vwap":5.0848,"ext_from_open_pct":-1.54,"max_ext_allowed_pct":3.0,"volume_pace":0.419,"trend":"flat","recent_slope_pct":0.217,"volatility":"high"},"price":5.1,"volume":{"bars":34,"last_bar_volume":25264.0,"baseline_avg":40557.05,"bar_rvol":0.622925,"raw_accel":-0.414955,"smooth_accel":0.484612,"accel_momentum":-0.323227,"rvol_3bar":[1.460142,1.003888,0.622925],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":710.0,"sell_vol":621.0,"unclassified_vol":0.0,"imbalance":0.066867,"bid":5.1,"ask":5.11,"spread_pct":0.195886,"quote_size_imbalance":null,"quote_age_s":0.147699},"context":{"vwap":5.08479,"price_vs_vwap_pct":0.299124,"ema9":5.074064,"ema20":5.069852,"ema_stack":true,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.111324,"dist_to_hod_atr":2.701752,"atr":0.040714,"spread_atr":0.245614,"own_change_pct":1.098117,"rel_strength_pct":{"SPY":1.091602,"IWM":1.098117}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.041653},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"4bf00ef11da3","ts":"2026-09-21T14:04:05.270214+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 320.3s, plan says PASS; stop 8.43, target 8.82 (prev_day_high), R:R 2.62; target 0.29 away > ~0.26 reachable in 351 min","plan":{"state":"PASS","setup":"","stop":8.4257,"target":8.82,"target_label":"prev_day_high","reward_risk":2.62,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":0.87},"price":8.5346,"vwap":8.5299,"ext_from_open_pct":-2.13,"max_ext_allowed_pct":3.0,"volume_pace":1.223,"trend":"flat","recent_slope_pct":-0.0864,"volatility":"medium"},"price":8.5346,"volume":{"bars":34,"last_bar_volume":4162.0,"baseline_avg":17307.35,"bar_rvol":0.240476,"raw_accel":-0.625416,"smooth_accel":0.949668,"accel_momentum":-0.429925,"rvol_3bar":[3.340403,0.634686,0.240476],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":216.0,"sell_vol":801.0,"unclassified_vol":0.0,"imbalance":-0.575221,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.552154},"context":{"vwap":8.529933,"price_vs_vwap_pct":0.054713,"ema9":8.544615,"ema20":8.534844,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.350114,"dist_to_hod_atr":3.51835,"atr":0.05838,"spread_atr":0.171293,"own_change_pct":0.022209,"rel_strength_pct":{"SPY":0.015694,"IWM":0.022209}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.138327},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"74ade57203fc","ts":"2026-09-21T14:04:51.171094+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.09% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":3.23,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.25,"vwap":8.1758,"ext_from_open_pct":3.0,"max_ext_allowed_pct":4.0,"volume_pace":8.69,"trend":"flat","recent_slope_pct":-0.1027,"volatility":"unknown"},"price":8.25,"volume":{"bars":34,"last_bar_volume":6053.0,"baseline_avg":11452.95,"bar_rvol":0.52851,"raw_accel":1.11404,"smooth_accel":-0.74994,"accel_momentum":-1.230043,"rvol_3bar":[0.155418,0.226098,0.52851],"trend_3bar":"ACCELERATING","projected_rvol":0.292496},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":372.0,"sell_vol":2341.0,"unclassified_vol":0.0,"imbalance":-0.725765,"bid":8.18,"ask":8.27,"spread_pct":1.094225,"quote_size_imbalance":null,"quote_age_s":1.420948},"context":{"vwap":8.175265,"price_vs_vwap_pct":0.914156,"ema9":8.357155,"ema20":8.324095,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.846154,"dist_to_hod_atr":2.058089,"atr":0.160343,"spread_atr":0.561297,"own_change_pct":-1.188131,"rel_strength_pct":{"SPY":-1.194646,"IWM":-1.188131}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.383574},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"977a7677cfbf","ts":"2026-09-21T14:05:01.447939+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.93,"target":9.0588,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":129.9,"room_to_5d_high_atr":-0.95},"price":9.0588,"vwap":8.9851,"ext_from_open_pct":0.43,"max_ext_allowed_pct":4.0,"volume_pace":2.251,"trend":"flat","recent_slope_pct":-0.0616,"volatility":"medium"},"price":9.0588,"volume":{"bars":35,"last_bar_volume":13364.0,"baseline_avg":39984.7,"bar_rvol":0.334228,"raw_accel":-0.644196,"smooth_accel":-0.615507,"accel_momentum":-1.822347,"rvol_3bar":[0.972246,0.874614,0.334228],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":1434.0,"sell_vol":2196.0,"unclassified_vol":0.0,"imbalance":-0.209917,"bid":9.05,"ask":9.06,"spread_pct":0.110436,"quote_size_imbalance":null,"quote_age_s":0.002362},"context":{"vwap":8.985139,"price_vs_vwap_pct":0.819813,"ema9":9.041053,"ema20":9.019766,"ema_stack":true,"ema_warm":true,"hod":9.08,"dist_to_hod_pct":-0.23348,"dist_to_hod_atr":0.426595,"atr":0.049696,"spread_atr":0.201224,"own_change_pct":0.461709,"rel_strength_pct":{"SPY":0.489064,"IWM":0.512496}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.07016},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"61c64a4340b5","ts":"2026-09-21T14:05:27.204367+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4161,"target":8.82,"target_label":"prev_day_high","reward_risk":2.71,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":0.9},"price":8.525,"vwap":8.53,"ext_from_open_pct":-2.24,"max_ext_allowed_pct":3.0,"volume_pace":1.21,"trend":"flat","recent_slope_pct":-0.0761,"volatility":"medium"},"price":8.525,"volume":{"bars":35,"last_bar_volume":1362.0,"baseline_avg":16739.1,"bar_rvol":0.081366,"raw_accel":-0.674534,"smooth_accel":-0.780587,"accel_momentum":-1.730255,"rvol_3bar":[0.634686,0.240476,0.081366],"trend_3bar":"DECELERATING","projected_rvol":4.371239},"flow":{"window_s":30,"trades":194,"trade_rate":6.466667,"buy_vol":8035.0,"sell_vol":25151.0,"unclassified_vol":0.0,"imbalance":-0.51576,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":1.34071},"context":{"vwap":8.529945,"price_vs_vwap_pct":-0.057978,"ema9":8.542692,"ema20":8.534859,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.459954,"dist_to_hod_atr":3.829345,"atr":0.056145,"spread_atr":0.178109,"own_change_pct":-0.097152,"rel_strength_pct":{"SPY":-0.069797,"IWM":-0.046365}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.041965},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"df2d082ebc6a","ts":"2026-09-21T14:05:32.299595+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.93,"target":9.08,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.02,"vwap":8.9854,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":2.228,"trend":"flat","recent_slope_pct":-0.1473,"volatility":"medium"},"price":9.02,"volume":{"bars":35,"last_bar_volume":13364.0,"baseline_avg":39984.7,"bar_rvol":0.334228,"raw_accel":-0.644196,"smooth_accel":-0.615507,"accel_momentum":-1.822347,"rvol_3bar":[0.972246,0.874614,0.334228],"trend_3bar":"DECELERATING","projected_rvol":0.399167},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":2304.0,"sell_vol":6287.0,"unclassified_vol":0.0,"imbalance":-0.463625,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.169871},"context":{"vwap":8.985139,"price_vs_vwap_pct":0.387989,"ema9":9.041053,"ema20":9.019766,"ema_stack":false,"ema_warm":true,"hod":9.08,"dist_to_hod_pct":-0.660793,"dist_to_hod_atr":1.207345,"atr":0.049696,"spread_atr":0.201224,"own_change_pct":0.461709,"rel_strength_pct":{"SPY":0.489064,"IWM":0.512496}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.154956},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"a9c5d000f011","ts":"2026-09-21T14:05:37.391723+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4378,"target":8.82,"target_label":"prev_day_high","reward_risk":2.51,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":0.85},"price":8.5467,"vwap":8.5301,"ext_from_open_pct":-1.99,"max_ext_allowed_pct":3.0,"volume_pace":1.206,"trend":"flat","recent_slope_pct":-0.0253,"volatility":"medium"},"price":8.5467,"volume":{"bars":35,"last_bar_volume":1362.0,"baseline_avg":16739.1,"bar_rvol":0.081366,"raw_accel":-0.674534,"smooth_accel":-0.780587,"accel_momentum":-1.730255,"rvol_3bar":[0.634686,0.240476,0.081366],"trend_3bar":"DECELERATING","projected_rvol":3.386687},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":2685.0,"sell_vol":2788.0,"unclassified_vol":0.0,"imbalance":-0.01882,"bid":8.51,"ask":8.52,"spread_pct":0.11744,"quote_size_imbalance":null,"quote_age_s":1.747325},"context":{"vwap":8.529945,"price_vs_vwap_pct":0.19642,"ema9":8.542692,"ema20":8.534859,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.21167,"dist_to_hod_atr":3.442848,"atr":0.056145,"spread_atr":0.178109,"own_change_pct":-0.097152,"rel_strength_pct":{"SPY":-0.069797,"IWM":-0.046365}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.001531},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"913bd6628e05","ts":"2026-09-21T14:05:42.467547+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.51 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4011,"target":8.82,"target_label":"prev_day_high","reward_risk":2.85,"pos_in_5d_range_pct":44.5,"room_to_5d_high_atr":0.93},"price":8.51,"vwap":8.5297,"ext_from_open_pct":-2.41,"max_ext_allowed_pct":3.0,"volume_pace":1.204,"trend":"flat","recent_slope_pct":-0.1113,"volatility":"medium"},"price":8.51,"volume":{"bars":35,"last_bar_volume":1362.0,"baseline_avg":16739.1,"bar_rvol":0.081366,"raw_accel":-0.674534,"smooth_accel":-0.780587,"accel_momentum":-1.730255,"rvol_3bar":[0.634686,0.240476,0.081366],"trend_3bar":"DECELERATING","projected_rvol":2.999795},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":2574.0,"sell_vol":2990.0,"unclassified_vol":0.0,"imbalance":-0.074766,"bid":8.51,"ask":8.52,"spread_pct":0.11744,"quote_size_imbalance":null,"quote_age_s":0.04036},"context":{"vwap":8.529945,"price_vs_vwap_pct":-0.233829,"ema9":8.542692,"ema20":8.534859,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.631579,"dist_to_hod_atr":4.096509,"atr":0.056145,"spread_atr":0.178109,"own_change_pct":-0.097152,"rel_strength_pct":{"SPY":-0.069797,"IWM":-0.046365}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.006083},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"da99fa693e62","ts":"2026-09-21T14:05:47.591450+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.93,"target":9.0501,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":129.1,"room_to_5d_high_atr":-0.93},"price":9.0501,"vwap":8.9856,"ext_from_open_pct":0.33,"max_ext_allowed_pct":4.0,"volume_pace":2.221,"trend":"flat","recent_slope_pct":-0.0808,"volatility":"medium"},"price":9.0501,"volume":{"bars":35,"last_bar_volume":13364.0,"baseline_avg":39984.7,"bar_rvol":0.334228,"raw_accel":-0.644196,"smooth_accel":-0.615507,"accel_momentum":-1.822347,"rvol_3bar":[0.972246,0.874614,0.334228],"trend_3bar":"DECELERATING","projected_rvol":0.511296},"flow":{"window_s":30,"trades":154,"trade_rate":5.133333,"buy_vol":7329.0,"sell_vol":4756.0,"unclassified_vol":0.0,"imbalance":0.212909,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":1.858701},"context":{"vwap":8.985139,"price_vs_vwap_pct":0.722987,"ema9":9.041053,"ema20":9.019766,"ema_stack":true,"ema_warm":true,"hod":9.08,"dist_to_hod_pct":-0.329295,"dist_to_hod_atr":0.60166,"atr":0.049696,"spread_atr":0.201224,"own_change_pct":0.461709,"rel_strength_pct":{"SPY":0.489064,"IWM":0.512496}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.07116},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b9f5429045c2","ts":"2026-09-21T14:05:52.659130+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.93,"target":9.08,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.88},"price":9.035,"vwap":8.9856,"ext_from_open_pct":0.17,"max_ext_allowed_pct":4.0,"volume_pace":2.216,"trend":"flat","recent_slope_pct":-0.1141,"volatility":"medium"},"price":9.035,"volume":{"bars":35,"last_bar_volume":13364.0,"baseline_avg":39984.7,"bar_rvol":0.334228,"raw_accel":-0.644196,"smooth_accel":-0.615507,"accel_momentum":-1.822347,"rvol_3bar":[0.972246,0.874614,0.334228],"trend_3bar":"DECELERATING","projected_rvol":0.482523},"flow":{"window_s":30,"trades":163,"trade_rate":5.433333,"buy_vol":7805.0,"sell_vol":4117.0,"unclassified_vol":0.0,"imbalance":0.309344,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":1.220483},"context":{"vwap":8.985139,"price_vs_vwap_pct":0.554932,"ema9":9.041053,"ema20":9.019766,"ema_stack":false,"ema_warm":true,"hod":9.08,"dist_to_hod_pct":-0.495595,"dist_to_hod_atr":0.905509,"atr":0.049696,"spread_atr":0.201224,"own_change_pct":0.461709,"rel_strength_pct":{"SPY":0.489064,"IWM":0.512496}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.103391},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"edae903c16df","ts":"2026-09-21T14:05:57.728870+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.93,"target":9.0475,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":128.9,"room_to_5d_high_atr":-0.92},"price":9.0475,"vwap":8.9861,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":2.23,"trend":"flat","recent_slope_pct":-0.0865,"volatility":"medium"},"price":9.0475,"volume":{"bars":35,"last_bar_volume":13364.0,"baseline_avg":39984.7,"bar_rvol":0.334228,"raw_accel":-0.644196,"smooth_accel":-0.615507,"accel_momentum":-1.822347,"rvol_3bar":[0.972246,0.874614,0.334228],"trend_3bar":"DECELERATING","projected_rvol":0.866752},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":23709.0,"sell_vol":1980.0,"unclassified_vol":0.0,"imbalance":0.845848,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":1.864158},"context":{"vwap":8.985139,"price_vs_vwap_pct":0.69405,"ema9":9.041053,"ema20":9.019766,"ema_stack":true,"ema_warm":true,"hod":9.08,"dist_to_hod_pct":-0.35793,"dist_to_hod_atr":0.653978,"atr":0.049696,"spread_atr":0.201224,"own_change_pct":0.461709,"rel_strength_pct":{"SPY":0.489064,"IWM":0.512496}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.282706},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b33c17d81dd7","ts":"2026-09-21T14:05:57.728870+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4324,"target":8.82,"target_label":"prev_day_high","reward_risk":2.56,"pos_in_5d_range_pct":48.8,"room_to_5d_high_atr":0.86},"price":8.5413,"vwap":8.5299,"ext_from_open_pct":-2.05,"max_ext_allowed_pct":3.0,"volume_pace":1.201,"trend":"flat","recent_slope_pct":-0.0379,"volatility":"medium"},"price":8.5413,"volume":{"bars":35,"last_bar_volume":1362.0,"baseline_avg":16739.1,"bar_rvol":0.081366,"raw_accel":-0.674534,"smooth_accel":-0.780587,"accel_momentum":-1.730255,"rvol_3bar":[0.634686,0.240476,0.081366],"trend_3bar":"DECELERATING","projected_rvol":2.564529},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":4310.0,"sell_vol":3817.0,"unclassified_vol":0.0,"imbalance":0.060662,"bid":8.5,"ask":8.51,"spread_pct":0.117578,"quote_size_imbalance":null,"quote_age_s":1.24392},"context":{"vwap":8.529945,"price_vs_vwap_pct":0.133114,"ema9":8.542692,"ema20":8.534859,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.273455,"dist_to_hod_atr":3.539027,"atr":0.056145,"spread_atr":0.178109,"own_change_pct":-0.097152,"rel_strength_pct":{"SPY":-0.069797,"IWM":-0.046365}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.004936},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"578093402f57","ts":"2026-09-21T14:06:02.850649+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.50 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.3911,"target":8.82,"target_label":"prev_day_high","reward_risk":2.94,"pos_in_5d_range_pct":43.2,"room_to_5d_high_atr":0.95},"price":8.5,"vwap":8.5295,"ext_from_open_pct":-2.52,"max_ext_allowed_pct":3.0,"volume_pace":1.198,"trend":"flat","recent_slope_pct":-0.1371,"volatility":"medium"},"price":8.5,"volume":{"bars":36,"last_bar_volume":41308.0,"baseline_avg":16430.15,"bar_rvol":2.514158,"raw_accel":9.056634,"smooth_accel":-0.406243,"accel_momentum":0.374344,"rvol_3bar":[0.240476,0.081366,2.514158],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":2955.0,"sell_vol":3606.0,"unclassified_vol":0.0,"imbalance":-0.099223,"bid":8.5,"ask":8.51,"spread_pct":0.117578,"quote_size_imbalance":null,"quote_age_s":0.43456},"context":{"vwap":8.529463,"price_vs_vwap_pct":-0.345423,"ema9":8.534154,"ema20":8.531539,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.745995,"dist_to_hod_atr":4.324937,"atr":0.055492,"spread_atr":0.180206,"own_change_pct":-0.816803,"rel_strength_pct":{"SPY":-0.765994,"IWM":-0.816803}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.249462},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"004bafec1d22","ts":"2026-09-21T14:06:23.303923+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.93,"target":9.075,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.075,"vwap":8.9868,"ext_from_open_pct":0.61,"max_ext_allowed_pct":4.0,"volume_pace":2.223,"trend":"flat","recent_slope_pct":-0.0109,"volatility":"medium"},"price":9.075,"volume":{"bars":36,"last_bar_volume":33374.0,"baseline_avg":39002.0,"bar_rvol":0.8557,"raw_accel":1.497306,"smooth_accel":-0.686193,"accel_momentum":-0.070686,"rvol_3bar":[0.874614,0.334228,0.8557],"trend_3bar":"MIXED","projected_rvol":1.19604},"flow":{"window_s":30,"trades":157,"trade_rate":5.233333,"buy_vol":32332.0,"sell_vol":2224.0,"unclassified_vol":0.0,"imbalance":0.871281,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.123704},"context":{"vwap":8.986107,"price_vs_vwap_pct":0.989227,"ema9":9.040843,"ema20":9.021693,"ema_stack":true,"ema_warm":true,"hod":9.08,"dist_to_hod_pct":-0.055066,"dist_to_hod_atr":0.100568,"atr":0.049718,"spread_atr":0.201136,"own_change_pct":0.166205,"rel_strength_pct":{"SPY":0.217013,"IWM":0.166205}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.745555},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2a20fbb24503","ts":"2026-09-21T14:06:23.303923+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.52 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4181,"target":8.76,"target_label":"premarket_high","reward_risk":2.35,"pos_in_5d_range_pct":113.2,"room_to_5d_high_atr":-0.42},"price":8.52,"vwap":8.5296,"ext_from_open_pct":-1.16,"max_ext_allowed_pct":3.0,"volume_pace":1.503,"trend":"flat","recent_slope_pct":-0.08,"volatility":"medium"},"price":8.52,"volume":{"bars":36,"last_bar_volume":473.0,"baseline_avg":3895.85,"bar_rvol":0.121411,"raw_accel":-0.802092,"smooth_accel":-0.498409,"accel_momentum":-0.718105,"rvol_3bar":[1.233405,0.580351,0.121411],"trend_3bar":"DECELERATING","projected_rvol":0.462613},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":305.0,"sell_vol":406.0,"unclassified_vol":0.0,"imbalance":-0.142053,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":3.498311},"context":{"vwap":8.529586,"price_vs_vwap_pct":-0.112391,"ema9":8.53283,"ema20":8.51039,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.50289,"dist_to_hod_atr":2.494418,"atr":0.052116,"spread_atr":0.191878,"own_change_pct":0.032806,"rel_strength_pct":{"SPY":0.083615,"IWM":0.032806}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.017247},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"841b0a97deae","ts":"2026-09-21T14:06:28.340279+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.4427,"target":8.76,"target_label":"premarket_high","reward_risk":2.11,"pos_in_5d_range_pct":115.2,"room_to_5d_high_atr":-0.48},"price":8.5446,"vwap":8.5296,"ext_from_open_pct":-0.87,"max_ext_allowed_pct":3.0,"volume_pace":1.5,"trend":"flat","recent_slope_pct":-0.0224,"volatility":"medium"},"price":8.5446,"volume":{"bars":36,"last_bar_volume":473.0,"baseline_avg":3895.85,"bar_rvol":0.121411,"raw_accel":-0.802092,"smooth_accel":-0.498409,"accel_momentum":-0.718105,"rvol_3bar":[1.233405,0.580351,0.121411],"trend_3bar":"DECELERATING","projected_rvol":0.434745},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":394.0,"sell_vol":406.0,"unclassified_vol":0.0,"imbalance":-0.015,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":2.353543},"context":{"vwap":8.529586,"price_vs_vwap_pct":0.176017,"ema9":8.53283,"ema20":8.51039,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.218497,"dist_to_hod_atr":2.022397,"atr":0.052116,"spread_atr":0.191878,"own_change_pct":0.032806,"rel_strength_pct":{"SPY":0.083615,"IWM":0.032806}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.001821},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"e82933f7f83e","ts":"2026-09-21T14:06:33.367589+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4231,"target":8.76,"target_label":"premarket_high","reward_risk":2.31,"pos_in_5d_range_pct":113.6,"room_to_5d_high_atr":-0.43},"price":8.525,"vwap":8.5296,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":3.0,"volume_pace":1.496,"trend":"flat","recent_slope_pct":-0.0683,"volatility":"medium"},"price":8.525,"volume":{"bars":36,"last_bar_volume":473.0,"baseline_avg":3895.85,"bar_rvol":0.121411,"raw_accel":-0.802092,"smooth_accel":-0.498409,"accel_momentum":-0.718105,"rvol_3bar":[1.233405,0.580351,0.121411],"trend_3bar":"DECELERATING","projected_rvol":0.375245},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":374.0,"sell_vol":306.0,"unclassified_vol":0.0,"imbalance":0.1,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":2.094941},"context":{"vwap":8.529586,"price_vs_vwap_pct":-0.053772,"ema9":8.53283,"ema20":8.51039,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.445087,"dist_to_hod_atr":2.398479,"atr":0.052116,"spread_atr":0.191878,"own_change_pct":0.032806,"rel_strength_pct":{"SPY":0.083615,"IWM":0.032806}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.012141},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0c653cb130b4","ts":"2026-09-21T14:06:48.543306+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.4314,"target":8.76,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":114.3,"room_to_5d_high_atr":-0.45},"price":8.5333,"vwap":8.5296,"ext_from_open_pct":-1.01,"max_ext_allowed_pct":3.0,"volume_pace":1.486,"trend":"flat","recent_slope_pct":-0.0488,"volatility":"medium"},"price":8.5333,"volume":{"bars":36,"last_bar_volume":473.0,"baseline_avg":3895.85,"bar_rvol":0.121411,"raw_accel":-0.802092,"smooth_accel":-0.498409,"accel_momentum":-0.718105,"rvol_3bar":[1.233405,0.580351,0.121411],"trend_3bar":"DECELERATING","projected_rvol":0.277923},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":117.0,"sell_vol":78.0,"unclassified_vol":0.0,"imbalance":0.2,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":1.870171},"context":{"vwap":8.529586,"price_vs_vwap_pct":0.043537,"ema9":8.53283,"ema20":8.51039,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.349133,"dist_to_hod_atr":2.23922,"atr":0.052116,"spread_atr":0.191878,"own_change_pct":0.032806,"rel_strength_pct":{"SPY":0.083615,"IWM":0.032806}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.024282},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"993537c37d31","ts":"2026-09-21T14:06:53.642777+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4231,"target":8.76,"target_label":"premarket_high","reward_risk":2.31,"pos_in_5d_range_pct":113.6,"room_to_5d_high_atr":-0.43},"price":8.525,"vwap":8.5296,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":4.0,"volume_pace":1.506,"trend":"flat","recent_slope_pct":-0.0683,"volatility":"medium"},"price":8.525,"volume":{"bars":36,"last_bar_volume":473.0,"baseline_avg":3895.85,"bar_rvol":0.121411,"raw_accel":-0.802092,"smooth_accel":-0.498409,"accel_momentum":-0.718105,"rvol_3bar":[1.233405,0.580351,0.121411],"trend_3bar":"DECELERATING","projected_rvol":1.481452},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":4089.0,"sell_vol":371.0,"unclassified_vol":0.0,"imbalance":0.833632,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":0.611878},"context":{"vwap":8.529586,"price_vs_vwap_pct":-0.053772,"ema9":8.53283,"ema20":8.51039,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.445087,"dist_to_hod_atr":2.398479,"atr":0.052116,"spread_atr":0.191878,"own_change_pct":0.032806,"rel_strength_pct":{"SPY":0.083615,"IWM":0.032806}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.101212},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ae44e0706121","ts":"2026-09-21T14:06:58.743336+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.428,"target":8.76,"target_label":"premarket_high","reward_risk":2.26,"pos_in_5d_range_pct":114.0,"room_to_5d_high_atr":-0.44},"price":8.5299,"vwap":8.5296,"ext_from_open_pct":-1.05,"max_ext_allowed_pct":4.0,"volume_pace":1.503,"trend":"flat","recent_slope_pct":-0.0568,"volatility":"medium"},"price":8.5299,"volume":{"bars":36,"last_bar_volume":473.0,"baseline_avg":3895.85,"bar_rvol":0.121411,"raw_accel":-0.802092,"smooth_accel":-0.498409,"accel_momentum":-0.718105,"rvol_3bar":[1.233405,0.580351,0.121411],"trend_3bar":"DECELERATING","projected_rvol":1.373794},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":4069.0,"sell_vol":371.0,"unclassified_vol":0.0,"imbalance":0.832883,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":5.712437},"context":{"vwap":8.529586,"price_vs_vwap_pct":0.003675,"ema9":8.53283,"ema20":8.51039,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.388439,"dist_to_hod_atr":2.304458,"atr":0.052116,"spread_atr":0.191878,"own_change_pct":0.032806,"rel_strength_pct":{"SPY":0.083615,"IWM":0.032806}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.101121},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"6182d83e48a3","ts":"2026-09-21T14:07:03.895750+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 198.8s, plan says WATCH; stop 6.35, target 6.95 (premarket_high), R:R 2.17; breakout: 1-min close > 6.56 on >= 38593 sh","plan":{"state":"WATCH","setup":"","stop":6.35,"target":6.95,"target_label":"premarket_high","reward_risk":2.17,"pos_in_5d_range_pct":106.8,"room_to_5d_high_atr":-0.18},"price":6.5395,"vwap":6.4133,"ext_from_open_pct":2.34,"max_ext_allowed_pct":3.0,"volume_pace":1.595,"trend":"flat","recent_slope_pct":0.2657,"volatility":"high"},"price":6.5395,"volume":{"bars":37,"last_bar_volume":2065.0,"baseline_avg":13941.3,"bar_rvol":0.148121,"raw_accel":-0.877905,"smooth_accel":0.270122,"accel_momentum":-1.275071,"rvol_3bar":[0.359341,1.22542,0.148121],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":1023.0,"sell_vol":960.0,"unclassified_vol":0.0,"imbalance":0.03177,"bid":6.52,"ask":6.54,"spread_pct":0.306279,"quote_size_imbalance":null,"quote_age_s":6.35661},"context":{"vwap":6.413262,"price_vs_vwap_pct":1.968384,"ema9":6.46448,"ema20":6.43689,"ema_stack":true,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-0.916667,"dist_to_hod_atr":1.110992,"atr":0.054456,"spread_atr":0.36727,"own_change_pct":2.351097,"rel_strength_pct":{"SPY":2.40842,"IWM":2.414184}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.004706},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"804c4ead17d2","ts":"2026-09-21T14:07:03.895750+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4274,"target":8.76,"target_label":"premarket_high","reward_risk":2.26,"pos_in_5d_range_pct":114.0,"room_to_5d_high_atr":-0.44},"price":8.5293,"vwap":8.5296,"ext_from_open_pct":-1.05,"max_ext_allowed_pct":4.0,"volume_pace":1.5,"trend":"flat","recent_slope_pct":-0.051,"volatility":"medium"},"price":8.5293,"volume":{"bars":37,"last_bar_volume":5240.0,"baseline_avg":3513.85,"bar_rvol":1.491242,"raw_accel":4.964967,"smooth_accel":-0.553529,"accel_momentum":-0.05512,"rvol_3bar":[0.580351,0.121411,1.491242],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":4056.0,"sell_vol":382.0,"unclassified_vol":0.0,"imbalance":0.82785,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":10.864851},"context":{"vwap":8.529622,"price_vs_vwap_pct":-0.003779,"ema9":8.532244,"ema20":8.512248,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.395376,"dist_to_hod_atr":2.406736,"atr":0.050151,"spread_atr":0.199398,"own_change_pct":0.116197,"rel_strength_pct":{"SPY":0.17352,"IWM":0.179284}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.234525},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8acffa6be5b1","ts":"2026-09-21T14:07:09.015788+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.13,"target":9.09,"target_label":"range_20d_high","reward_risk":5.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.29,"vwap":8.177,"ext_from_open_pct":3.5,"max_ext_allowed_pct":5.0,"volume_pace":8.357,"trend":"flat","recent_slope_pct":-0.0877,"volatility":"unknown"},"price":8.29,"volume":{"bars":37,"last_bar_volume":7259.0,"baseline_avg":9997.75,"bar_rvol":0.726063,"raw_accel":0.668352,"smooth_accel":0.385978,"accel_momentum":0.952623,"rvol_3bar":[0.248529,0.394303,0.726063],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":428.0,"sell_vol":157.0,"unclassified_vol":0.0,"imbalance":0.463248,"bid":8.21,"ask":8.29,"spread_pct":0.969697,"quote_size_imbalance":null,"quote_age_s":9.78197},"context":{"vwap":8.176966,"price_vs_vwap_pct":1.382349,"ema9":8.302211,"ema20":8.303552,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.379953,"dist_to_hod_atr":1.913613,"atr":0.151546,"spread_atr":0.527893,"own_change_pct":-0.636473,"rel_strength_pct":{"SPY":-0.57915,"IWM":-0.573386}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.336347},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b0ff9310e4b6","ts":"2026-09-21T14:07:29.350411+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":9.13,"target":10.66,"target_label":"range_20d_high","reward_risk":1.01,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.89,"vwap":9.5807,"ext_from_open_pct":2.06,"max_ext_allowed_pct":4.0,"volume_pace":0.149,"trend":"flat","recent_slope_pct":0.9193,"volatility":"unknown"},"price":9.89,"volume":{"bars":30,"last_bar_volume":50.0,"baseline_avg":317.4,"bar_rvol":0.15753,"raw_accel":-0.951784,"smooth_accel":8.096,"accel_momentum":3.14312,"rvol_3bar":[0.109769,2.615385,0.15753],"trend_3bar":"MIXED","projected_rvol":0.328473},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":51.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":9.49,"ask":9.87,"spread_pct":3.92562,"quote_size_imbalance":null,"quote_age_s":273.614561},"context":{"vwap":9.580532,"price_vs_vwap_pct":3.230179,"ema9":9.547638,"ema20":9.527536,"ema_stack":true,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-1.982161,"dist_to_hod_atr":2.061796,"atr":0.097003,"spread_atr":3.917412,"own_change_pct":1.731375,"rel_strength_pct":{"SPY":1.788698,"IWM":1.794462}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.15753},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f53571bbc103","ts":"2026-09-21T14:07:39.484345+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 234.4s, plan says PASS; stop 6.35, target 6.95 (premarket_high), R:R 2.53; target 0.43 away > ~0.43 reachable in 347 min","plan":{"state":"PASS","setup":"","stop":6.35,"target":6.95,"target_label":"premarket_high","reward_risk":2.53,"pos_in_5d_range_pct":105.7,"room_to_5d_high_atr":-0.15},"price":6.52,"vwap":6.4135,"ext_from_open_pct":2.03,"max_ext_allowed_pct":3.0,"volume_pace":1.573,"trend":"flat","recent_slope_pct":0.206,"volatility":"high"},"price":6.52,"volume":{"bars":37,"last_bar_volume":2065.0,"baseline_avg":13941.3,"bar_rvol":0.148121,"raw_accel":-0.877905,"smooth_accel":0.270122,"accel_momentum":-1.275071,"rvol_3bar":[0.359341,1.22542,0.148121],"trend_3bar":"MIXED","projected_rvol":0.211785},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":154.0,"sell_vol":1655.0,"unclassified_vol":0.0,"imbalance":-0.82974,"bid":6.51,"ask":6.54,"spread_pct":0.45977,"quote_size_imbalance":null,"quote_age_s":1.821526},"context":{"vwap":6.413262,"price_vs_vwap_pct":1.664326,"ema9":6.46448,"ema20":6.43689,"ema_stack":true,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-1.212121,"dist_to_hod_atr":1.469081,"atr":0.054456,"spread_atr":0.550905,"own_change_pct":2.351097,"rel_strength_pct":{"SPY":2.40842,"IWM":2.414184}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.122902},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"18d8f60e240c","ts":"2026-09-21T14:07:54.735248+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.4331,"target":8.76,"target_label":"premarket_high","reward_risk":2.21,"pos_in_5d_range_pct":114.4,"room_to_5d_high_atr":-0.45},"price":8.535,"vwap":8.5296,"ext_from_open_pct":-0.99,"max_ext_allowed_pct":4.0,"volume_pace":1.493,"trend":"flat","recent_slope_pct":-0.0376,"volatility":"medium"},"price":8.535,"volume":{"bars":37,"last_bar_volume":5240.0,"baseline_avg":3513.85,"bar_rvol":1.491242,"raw_accel":4.964967,"smooth_accel":-0.553529,"accel_momentum":-0.05512,"rvol_3bar":[0.580351,0.121411,1.491242],"trend_3bar":"MIXED","projected_rvol":1.62064},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":3383.0,"sell_vol":134.0,"unclassified_vol":0.0,"imbalance":0.923799,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":1.439128},"context":{"vwap":8.529622,"price_vs_vwap_pct":0.063047,"ema9":8.532244,"ema20":8.512248,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.32948,"dist_to_hod_atr":2.293079,"atr":0.050151,"spread_atr":0.199398,"own_change_pct":0.116197,"rel_strength_pct":{"SPY":0.17352,"IWM":0.179284}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.377607},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"694c4c268c18","ts":"2026-09-21T14:08:04.875820+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.34x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2021,"target":5.31,"target_label":"ceiling","reward_risk":0.87,"pos_in_5d_range_pct":92.6,"room_to_5d_high_atr":0.24},"price":5.2598,"vwap":5.2556,"ext_from_open_pct":-1.13,"max_ext_allowed_pct":3.0,"volume_pace":0.337,"trend":"flat","recent_slope_pct":-0.0019,"volatility":"medium"},"price":5.2598,"volume":{"bars":38,"last_bar_volume":3882.0,"baseline_avg":1472.8,"bar_rvol":2.635796,"raw_accel":0.260799,"smooth_accel":1.219684,"accel_momentum":1.084365,"rvol_3bar":[0.464626,2.295106,2.635796],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":433.0,"sell_vol":1212.0,"unclassified_vol":0.0,"imbalance":-0.473556,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":0.13308},"context":{"vwap":5.255591,"price_vs_vwap_pct":0.080081,"ema9":5.258118,"ema20":5.259122,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.131579,"dist_to_hod_atr":2.997223,"atr":0.020085,"spread_atr":0.497878,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.049504,"IWM":0.09808}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.248198},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d19e9df3fab1","ts":"2026-09-21T14:08:09.950166+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.25 below VWAP $5.26","plan":{"state":"PASS","setup":"","stop":5.1973,"target":5.31,"target_label":"ceiling","reward_risk":0.95,"pos_in_5d_range_pct":91.9,"room_to_5d_high_atr":0.26},"price":5.255,"vwap":5.2556,"ext_from_open_pct":-1.22,"max_ext_allowed_pct":3.0,"volume_pace":0.336,"trend":"flat","recent_slope_pct":-0.0202,"volatility":"medium"},"price":5.255,"volume":{"bars":38,"last_bar_volume":3882.0,"baseline_avg":1472.8,"bar_rvol":2.635796,"raw_accel":0.260799,"smooth_accel":1.219684,"accel_momentum":1.084365,"rvol_3bar":[0.464626,2.295106,2.635796],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":433.0,"sell_vol":1228.0,"unclassified_vol":0.0,"imbalance":-0.478627,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":1.701337},"context":{"vwap":5.255591,"price_vs_vwap_pct":-0.01125,"ema9":5.258118,"ema20":5.259122,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.221805,"dist_to_hod_atr":3.236204,"atr":0.020085,"spread_atr":0.497878,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.049504,"IWM":0.09808}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.261564},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d7ae92d035a4","ts":"2026-09-21T14:08:20.115613+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.51 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4081,"target":8.57,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":112.5,"room_to_5d_high_atr":-0.39},"price":8.51,"vwap":8.5294,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":1.497,"trend":"flat","recent_slope_pct":-0.0735,"volatility":"medium"},"price":8.51,"volume":{"bars":38,"last_bar_volume":5233.0,"baseline_avg":3685.95,"bar_rvol":1.419715,"raw_accel":-0.001336,"smooth_accel":-0.255425,"accel_momentum":0.298104,"rvol_3bar":[0.121411,1.491242,1.419715],"trend_3bar":"MIXED","projected_rvol":3.170538},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":4539.0,"sell_vol":2593.0,"unclassified_vol":0.0,"imbalance":0.272855,"bid":8.51,"ask":8.52,"spread_pct":0.11744,"quote_size_imbalance":null,"quote_age_s":0.096447},"context":{"vwap":8.529568,"price_vs_vwap_pct":-0.229414,"ema9":8.532795,"ema20":8.514415,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.618497,"dist_to_hod_atr":2.895288,"atr":0.048354,"spread_atr":0.206806,"own_change_pct":-0.175439,"rel_strength_pct":{"SPY":-0.125934,"IWM":-0.077358}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.387376},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"672b94207e7b","ts":"2026-09-21T14:08:20.115613+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.33x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2023,"target":5.31,"target_label":"ceiling","reward_risk":0.87,"pos_in_5d_range_pct":92.6,"room_to_5d_high_atr":0.24},"price":5.26,"vwap":5.2556,"ext_from_open_pct":-1.13,"max_ext_allowed_pct":4.0,"volume_pace":0.335,"trend":"flat","recent_slope_pct":-0.0011,"volatility":"medium"},"price":5.26,"volume":{"bars":38,"last_bar_volume":3882.0,"baseline_avg":1472.8,"bar_rvol":2.635796,"raw_accel":0.260799,"smooth_accel":1.219684,"accel_momentum":1.084365,"rvol_3bar":[0.464626,2.295106,2.635796],"trend_3bar":"ACCELERATING","projected_rvol":0.095186},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":255.0,"sell_vol":1214.0,"unclassified_vol":0.0,"imbalance":-0.652825,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":2.697436},"context":{"vwap":5.255591,"price_vs_vwap_pct":0.083887,"ema9":5.258118,"ema20":5.259122,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.12782,"dist_to_hod_atr":2.987265,"atr":0.020085,"spread_atr":0.497878,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.049504,"IWM":0.09808}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.720714},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ddbf3aecc89a","ts":"2026-09-21T14:08:35.675642+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.21% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.99,"target":9.09,"target_label":"range_20d_high","reward_risk":3.07,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.26,"vwap":8.1777,"ext_from_open_pct":3.12,"max_ext_allowed_pct":4.0,"volume_pace":8.126,"trend":"flat","recent_slope_pct":0.0389,"volatility":"unknown"},"price":8.26,"volume":{"bars":38,"last_bar_volume":3601.0,"baseline_avg":8997.1,"bar_rvol":0.40024,"raw_accel":-0.503926,"smooth_accel":0.320514,"accel_momentum":-0.065464,"rvol_3bar":[0.394303,0.726063,0.40024],"trend_3bar":"MIXED","projected_rvol":0.220763},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":663.0,"sell_vol":517.0,"unclassified_vol":0.0,"imbalance":0.123729,"bid":8.2,"ask":8.3,"spread_pct":1.212121,"quote_size_imbalance":null,"quote_age_s":0.71005},"context":{"vwap":8.177542,"price_vs_vwap_pct":1.008353,"ema9":8.291749,"ema20":8.298442,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.729604,"dist_to_hod_atr":2.195976,"atr":0.145721,"spread_atr":0.686242,"own_change_pct":-1.316986,"rel_strength_pct":{"SPY":-1.267481,"IWM":-1.218905}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.049521},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fb384d4ab277","ts":"2026-09-21T14:08:40.734241+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.4281,"target":8.76,"target_label":"premarket_high","reward_risk":2.26,"pos_in_5d_range_pct":114.0,"room_to_5d_high_atr":-0.44},"price":8.53,"vwap":8.5295,"ext_from_open_pct":-1.04,"max_ext_allowed_pct":4.0,"volume_pace":1.485,"trend":"flat","recent_slope_pct":-0.0266,"volatility":"medium"},"price":8.53,"volume":{"bars":38,"last_bar_volume":5233.0,"baseline_avg":3685.95,"bar_rvol":1.419715,"raw_accel":-0.001336,"smooth_accel":-0.255425,"accel_momentum":0.298104,"rvol_3bar":[0.121411,1.491242,1.419715],"trend_3bar":"MIXED","projected_rvol":1.665996},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1529.0,"sell_vol":2601.0,"unclassified_vol":0.0,"imbalance":-0.259564,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.117593},"context":{"vwap":8.529568,"price_vs_vwap_pct":0.005064,"ema9":8.532795,"ema20":8.514415,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.387283,"dist_to_hod_atr":2.481676,"atr":0.048354,"spread_atr":0.206806,"own_change_pct":-0.175439,"rel_strength_pct":{"SPY":-0.125934,"IWM":-0.077358}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.368507},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"23eb3f2bfee2","ts":"2026-09-21T14:08:45.855600+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 300.8s, plan says WATCH; stop 6.35, target 6.95 (premarket_high), R:R 2.53; breakout: 1-min close > 6.56 on >= 37742 sh","plan":{"state":"WATCH","setup":"","stop":6.35,"target":6.95,"target_label":"premarket_high","reward_risk":2.53,"pos_in_5d_range_pct":105.7,"room_to_5d_high_atr":-0.15},"price":6.52,"vwap":6.416,"ext_from_open_pct":2.03,"max_ext_allowed_pct":3.0,"volume_pace":1.567,"trend":"flat","recent_slope_pct":0.1021,"volatility":"high"},"price":6.52,"volume":{"bars":38,"last_bar_volume":4163.0,"baseline_avg":12640.05,"bar_rvol":0.32935,"raw_accel":0.3174,"smooth_accel":0.143839,"accel_momentum":-0.126283,"rvol_3bar":[1.22542,0.148121,0.32935],"trend_3bar":"MIXED","projected_rvol":2.245897},"flow":{"window_s":30,"trades":164,"trade_rate":5.466667,"buy_vol":13405.0,"sell_vol":5154.0,"unclassified_vol":0.0,"imbalance":0.444582,"bid":6.51,"ask":6.54,"spread_pct":0.45977,"quote_size_imbalance":null,"quote_age_s":0.838897},"context":{"vwap":6.413713,"price_vs_vwap_pct":1.65719,"ema9":6.473584,"ema20":6.443852,"ema_stack":true,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-1.212121,"dist_to_hod_atr":1.497475,"atr":0.053423,"spread_atr":0.561553,"own_change_pct":1.346618,"rel_strength_pct":{"SPY":1.396122,"IWM":1.444698}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.146423},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f288d9b1394a","ts":"2026-09-21T14:08:55.930056+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.52 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4209,"target":8.76,"target_label":"premarket_high","reward_risk":2.33,"pos_in_5d_range_pct":113.5,"room_to_5d_high_atr":-0.42},"price":8.5228,"vwap":8.5295,"ext_from_open_pct":-1.13,"max_ext_allowed_pct":3.0,"volume_pace":1.476,"trend":"flat","recent_slope_pct":-0.0435,"volatility":"medium"},"price":8.5228,"volume":{"bars":38,"last_bar_volume":5233.0,"baseline_avg":3685.95,"bar_rvol":1.419715,"raw_accel":-0.001336,"smooth_accel":-0.255425,"accel_momentum":0.298104,"rvol_3bar":[0.121411,1.491242,1.419715],"trend_3bar":"MIXED","projected_rvol":1.243625},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":235.0,"sell_vol":116.0,"unclassified_vol":0.0,"imbalance":0.339031,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":6.627704},"context":{"vwap":8.529568,"price_vs_vwap_pct":-0.079348,"ema9":8.532795,"ema20":8.514415,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.47052,"dist_to_hod_atr":2.630576,"atr":0.048354,"spread_atr":0.206806,"own_change_pct":-0.175439,"rel_strength_pct":{"SPY":-0.125934,"IWM":-0.077358}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.481328},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6cc70fde219e","ts":"2026-09-21T14:09:00.968328+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.1977,"target":9.09,"target_label":"range_20d_high","reward_risk":9.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2805,"vwap":8.1778,"ext_from_open_pct":3.38,"max_ext_allowed_pct":5.0,"volume_pace":8.042,"trend":"flat","recent_slope_pct":0.0886,"volatility":"unknown"},"price":8.2805,"volume":{"bars":38,"last_bar_volume":3601.0,"baseline_avg":8997.1,"bar_rvol":0.40024,"raw_accel":-0.503926,"smooth_accel":0.320514,"accel_momentum":-0.065464,"rvol_3bar":[0.394303,0.726063,0.40024],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":236.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.26,"ask":8.3,"spread_pct":0.483092,"quote_size_imbalance":null,"quote_age_s":1.596623},"context":{"vwap":8.177542,"price_vs_vwap_pct":1.25904,"ema9":8.291749,"ema20":8.298442,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.490676,"dist_to_hod_atr":2.055296,"atr":0.145721,"spread_atr":0.274497,"own_change_pct":-1.316986,"rel_strength_pct":{"SPY":-1.313064,"IWM":-1.211929}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.40024},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dd94ee9c2d21","ts":"2026-09-21T14:09:00.968328+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 315.9s, plan says PASS; stop 6.35, target 6.95 (premarket_high), R:R 2.53; target 0.43 away > ~0.43 reachable in 346 min","plan":{"state":"PASS","setup":"","stop":6.35,"target":6.95,"target_label":"premarket_high","reward_risk":2.53,"pos_in_5d_range_pct":105.7,"room_to_5d_high_atr":-0.15},"price":6.52,"vwap":6.416,"ext_from_open_pct":2.03,"max_ext_allowed_pct":3.0,"volume_pace":1.557,"trend":"flat","recent_slope_pct":0.1021,"volatility":"high"},"price":6.52,"volume":{"bars":38,"last_bar_volume":4163.0,"baseline_avg":12640.05,"bar_rvol":0.32935,"raw_accel":0.3174,"smooth_accel":0.143839,"accel_momentum":-0.126283,"rvol_3bar":[1.22542,0.148121,0.32935],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":13096.0,"sell_vol":5139.0,"unclassified_vol":0.0,"imbalance":0.436359,"bid":6.52,"ask":6.54,"spread_pct":0.306279,"quote_size_imbalance":null,"quote_age_s":0.049701},"context":{"vwap":6.413713,"price_vs_vwap_pct":1.65719,"ema9":6.473584,"ema20":6.443852,"ema_stack":true,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-1.212121,"dist_to_hod_atr":1.497475,"atr":0.053423,"spread_atr":0.374369,"own_change_pct":1.346618,"rel_strength_pct":{"SPY":1.35054,"IWM":1.451675}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.143715},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"660463bd87f2","ts":"2026-09-21T14:09:00.968328+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"held 295.7s, plan says WATCH; stop 5.01, target 5.15 (premarket_high), R:R 0.61; R:R 0.61 < 2.0 at 5.09; pullback: buy 5.07-5.09 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":5.0083,"target":5.1483,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":61.0,"room_to_5d_high_atr":0.76},"price":5.095,"vwap":5.087,"ext_from_open_pct":-1.64,"max_ext_allowed_pct":3.0,"volume_pace":0.407,"trend":"flat","recent_slope_pct":-0.0525,"volatility":"high"},"price":5.095,"volume":{"bars":39,"last_bar_volume":21162.0,"baseline_avg":39859.45,"bar_rvol":0.530916,"raw_accel":-0.535901,"smooth_accel":0.843004,"accel_momentum":0.091321,"rvol_3bar":[1.95257,1.186728,0.530916],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":4293.0,"sell_vol":3871.0,"unclassified_vol":0.0,"imbalance":0.05169,"bid":5.09,"ask":5.1,"spread_pct":0.196271,"quote_size_imbalance":null,"quote_age_s":0.46589},"context":{"vwap":5.086977,"price_vs_vwap_pct":0.157716,"ema9":5.096382,"ema20":5.084595,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.207294,"dist_to_hod_atr":2.723831,"atr":0.04222,"spread_atr":0.236855,"own_change_pct":-0.105874,"rel_strength_pct":{"SPY":-0.101952,"IWM":-0.000817}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.027443},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b226f97e8bfb","ts":"2026-09-21T14:09:11.063527+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 326.0s, plan says WATCH; stop 6.35, target 6.95 (premarket_high), R:R 2.53; breakout: 1-min close > 6.56 on >= 37610 sh","plan":{"state":"WATCH","setup":"","stop":6.35,"target":6.95,"target_label":"premarket_high","reward_risk":2.53,"pos_in_5d_range_pct":105.7,"room_to_5d_high_atr":-0.15},"price":6.52,"vwap":6.416,"ext_from_open_pct":2.03,"max_ext_allowed_pct":3.0,"volume_pace":1.55,"trend":"flat","recent_slope_pct":-0.0261,"volatility":"high"},"price":6.52,"volume":{"bars":39,"last_bar_volume":21712.0,"baseline_avg":12772.9,"bar_rvol":1.699849,"raw_accel":4.21547,"smooth_accel":-0.098797,"accel_momentum":-0.242636,"rvol_3bar":[0.148121,0.32935,1.699849],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":154,"trade_rate":5.133333,"buy_vol":12992.0,"sell_vol":3985.0,"unclassified_vol":0.0,"imbalance":0.530541,"bid":6.52,"ask":6.54,"spread_pct":0.306279,"quote_size_imbalance":null,"quote_age_s":3.66392},"context":{"vwap":6.415999,"price_vs_vwap_pct":1.62097,"ema9":6.482867,"ema20":6.451105,"ema_stack":true,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-1.212121,"dist_to_hod_atr":1.50436,"atr":0.053179,"spread_atr":0.37609,"own_change_pct":0.648348,"rel_strength_pct":{"SPY":0.65227,"IWM":0.753405}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.90184},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d29ab03efaac","ts":"2026-09-21T14:09:31.383562+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 346.3s, plan says PASS; stop 6.35, target 6.95 (premarket_high), R:R 2.64; target 0.44 away > ~0.43 reachable in 345 min","plan":{"state":"PASS","setup":"","stop":6.35,"target":6.95,"target_label":"premarket_high","reward_risk":2.64,"pos_in_5d_range_pct":105.4,"room_to_5d_high_atr":-0.15},"price":6.515,"vwap":6.4161,"ext_from_open_pct":1.96,"max_ext_allowed_pct":3.0,"volume_pace":1.539,"trend":"flat","recent_slope_pct":-0.0414,"volatility":"high"},"price":6.515,"volume":{"bars":39,"last_bar_volume":21712.0,"baseline_avg":12772.9,"bar_rvol":1.699849,"raw_accel":4.21547,"smooth_accel":-0.098797,"accel_momentum":-0.242636,"rvol_3bar":[0.148121,0.32935,1.699849],"trend_3bar":"ACCELERATING","projected_rvol":0.166143},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":571.0,"sell_vol":539.0,"unclassified_vol":0.0,"imbalance":0.028829,"bid":6.5,"ask":6.53,"spread_pct":0.460476,"quote_size_imbalance":null,"quote_age_s":0.294134},"context":{"vwap":6.415999,"price_vs_vwap_pct":1.54304,"ema9":6.482867,"ema20":6.451105,"ema_stack":true,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-1.287879,"dist_to_hod_atr":1.598383,"atr":0.053179,"spread_atr":0.564135,"own_change_pct":0.648348,"rel_strength_pct":{"SPY":0.65227,"IWM":0.753405}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.049005},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4c9f608c9dda","ts":"2026-09-21T14:09:36.473874+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 351.4s, plan says WATCH; stop 6.35, target 6.95 (premarket_high), R:R 2.53; breakout: 1-min close > 6.56 on >= 37610 sh","plan":{"state":"WATCH","setup":"","stop":6.35,"target":6.95,"target_label":"premarket_high","reward_risk":2.53,"pos_in_5d_range_pct":105.7,"room_to_5d_high_atr":-0.15},"price":6.52,"vwap":6.4161,"ext_from_open_pct":2.03,"max_ext_allowed_pct":3.0,"volume_pace":1.535,"trend":"flat","recent_slope_pct":-0.0261,"volatility":"high"},"price":6.52,"volume":{"bars":39,"last_bar_volume":21712.0,"baseline_avg":12772.9,"bar_rvol":1.699849,"raw_accel":4.21547,"smooth_accel":-0.098797,"accel_momentum":-0.242636,"rvol_3bar":[0.148121,0.32935,1.699849],"trend_3bar":"ACCELERATING","projected_rvol":0.143085},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":572.0,"sell_vol":539.0,"unclassified_vol":0.0,"imbalance":0.029703,"bid":6.51,"ask":6.53,"spread_pct":0.306748,"quote_size_imbalance":null,"quote_age_s":0.584332},"context":{"vwap":6.415999,"price_vs_vwap_pct":1.62097,"ema9":6.482867,"ema20":6.451105,"ema_stack":true,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-1.212121,"dist_to_hod_atr":1.50436,"atr":0.053179,"spread_atr":0.37609,"own_change_pct":0.648348,"rel_strength_pct":{"SPY":0.65227,"IWM":0.753405}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.050491},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4fd2417d36c0","ts":"2026-09-21T14:09:36.473874+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.4331,"target":8.76,"target_label":"premarket_high","reward_risk":2.21,"pos_in_5d_range_pct":114.4,"room_to_5d_high_atr":-0.45},"price":8.535,"vwap":8.5295,"ext_from_open_pct":-0.99,"max_ext_allowed_pct":3.0,"volume_pace":1.451,"trend":"flat","recent_slope_pct":-0.0147,"volatility":"medium"},"price":8.535,"volume":{"bars":39,"last_bar_volume":4273.0,"baseline_avg":3793.75,"bar_rvol":1.126326,"raw_accel":-0.183451,"smooth_accel":0.87132,"accel_momentum":1.126745,"rvol_3bar":[1.491242,1.419715,1.126326],"trend_3bar":"DECELERATING","projected_rvol":0.007371},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":14.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.094792},"context":{"vwap":8.529465,"price_vs_vwap_pct":0.064891,"ema9":8.530796,"ema20":8.515213,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.32948,"dist_to_hod_atr":2.463252,"atr":0.046686,"spread_atr":0.214196,"own_change_pct":-0.271472,"rel_strength_pct":{"SPY":-0.26755,"IWM":-0.166415}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.126326},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"cd1fb0883866","ts":"2026-09-21T14:09:41.573864+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.52 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4219,"target":8.76,"target_label":"premarket_high","reward_risk":2.32,"pos_in_5d_range_pct":113.5,"room_to_5d_high_atr":-0.43},"price":8.5238,"vwap":8.5295,"ext_from_open_pct":-1.12,"max_ext_allowed_pct":3.0,"volume_pace":1.448,"trend":"flat","recent_slope_pct":-0.0409,"volatility":"medium"},"price":8.5238,"volume":{"bars":39,"last_bar_volume":4273.0,"baseline_avg":3793.75,"bar_rvol":1.126326,"raw_accel":-0.183451,"smooth_accel":0.87132,"accel_momentum":1.126745,"rvol_3bar":[1.491242,1.419715,1.126326],"trend_3bar":"DECELERATING","projected_rvol":0.007989},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":15.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.666667,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":2.541933},"context":{"vwap":8.529465,"price_vs_vwap_pct":-0.066418,"ema9":8.530796,"ema20":8.515213,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.45896,"dist_to_hod_atr":2.703151,"atr":0.046686,"spread_atr":0.214196,"own_change_pct":-0.271472,"rel_strength_pct":{"SPY":-0.26755,"IWM":-0.166415}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.750884},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"828234c892fd","ts":"2026-09-21T14:09:46.667160+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 361.6s, plan says PASS; stop 6.35, target 6.95 (premarket_high), R:R 2.64; target 0.44 away > ~0.43 reachable in 345 min","plan":{"state":"PASS","setup":"","stop":6.35,"target":6.95,"target_label":"premarket_high","reward_risk":2.64,"pos_in_5d_range_pct":105.4,"room_to_5d_high_atr":-0.15},"price":6.515,"vwap":6.4162,"ext_from_open_pct":1.96,"max_ext_allowed_pct":3.0,"volume_pace":1.53,"trend":"flat","recent_slope_pct":-0.0414,"volatility":"high"},"price":6.515,"volume":{"bars":39,"last_bar_volume":21712.0,"baseline_avg":12772.9,"bar_rvol":1.699849,"raw_accel":4.21547,"smooth_accel":-0.098797,"accel_momentum":-0.242636,"rvol_3bar":[0.148121,0.32935,1.699849],"trend_3bar":"ACCELERATING","projected_rvol":0.182594},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":353.0,"sell_vol":914.0,"unclassified_vol":0.0,"imbalance":-0.442778,"bid":6.51,"ask":6.52,"spread_pct":0.153492,"quote_size_imbalance":null,"quote_age_s":2.881029},"context":{"vwap":6.415999,"price_vs_vwap_pct":1.54304,"ema9":6.482867,"ema20":6.451105,"ema_stack":true,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-1.287879,"dist_to_hod_atr":1.598383,"atr":0.053179,"spread_atr":0.188045,"own_change_pct":0.648348,"rel_strength_pct":{"SPY":0.65227,"IWM":0.753405}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.752656},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d5c7c2b46988","ts":"2026-09-21T14:09:46.667160+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.4281,"target":8.76,"target_label":"premarket_high","reward_risk":2.26,"pos_in_5d_range_pct":114.0,"room_to_5d_high_atr":-0.44},"price":8.53,"vwap":8.5295,"ext_from_open_pct":-1.04,"max_ext_allowed_pct":3.0,"volume_pace":1.453,"trend":"flat","recent_slope_pct":-0.0264,"volatility":"medium"},"price":8.53,"volume":{"bars":39,"last_bar_volume":4273.0,"baseline_avg":3793.75,"bar_rvol":1.126326,"raw_accel":-0.183451,"smooth_accel":0.87132,"accel_momentum":1.126745,"rvol_3bar":[1.491242,1.419715,1.126326],"trend_3bar":"DECELERATING","projected_rvol":0.551729},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":607.0,"sell_vol":1008.0,"unclassified_vol":0.0,"imbalance":-0.248297,"bid":8.52,"ask":8.54,"spread_pct":0.234467,"quote_size_imbalance":null,"quote_age_s":1.848873},"context":{"vwap":8.529465,"price_vs_vwap_pct":0.006271,"ema9":8.530796,"ema20":8.515213,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.387283,"dist_to_hod_atr":2.57035,"atr":0.046686,"spread_atr":0.428392,"own_change_pct":-0.271472,"rel_strength_pct":{"SPY":-0.26755,"IWM":-0.166415}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.279664},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a0d9b8a673cc","ts":"2026-09-21T14:09:46.667160+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.09 below VWAP $5.09","plan":{"state":"PASS","setup":"","stop":5.0003,"target":5.1483,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":59.9,"room_to_5d_high_atr":0.79},"price":5.087,"vwap":5.0871,"ext_from_open_pct":-1.8,"max_ext_allowed_pct":3.0,"volume_pace":0.402,"trend":"flat","recent_slope_pct":-0.0839,"volatility":"high"},"price":5.087,"volume":{"bars":39,"last_bar_volume":21162.0,"baseline_avg":39859.45,"bar_rvol":0.530916,"raw_accel":-0.535901,"smooth_accel":0.843004,"accel_momentum":0.091321,"rvol_3bar":[1.95257,1.186728,0.530916],"trend_3bar":"DECELERATING","projected_rvol":0.618248},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":726.0,"sell_vol":12153.0,"unclassified_vol":0.0,"imbalance":-0.887258,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":0.888567},"context":{"vwap":5.086977,"price_vs_vwap_pct":0.000452,"ema9":5.096382,"ema20":5.084595,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.360845,"dist_to_hod_atr":2.913315,"atr":0.04222,"spread_atr":0.236855,"own_change_pct":-0.105874,"rel_strength_pct":{"SPY":-0.101952,"IWM":-0.000817}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.471059},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7ef49b6b70a0","ts":"2026-09-21T14:09:46.667160+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4411,"target":8.82,"target_label":"prev_day_high","reward_risk":2.48,"pos_in_5d_range_pct":50.0,"room_to_5d_high_atr":0.84},"price":8.55,"vwap":8.5294,"ext_from_open_pct":-1.95,"max_ext_allowed_pct":4.0,"volume_pace":1.142,"trend":"flat","recent_slope_pct":0.1339,"volatility":"medium"},"price":8.55,"volume":{"bars":39,"last_bar_volume":25325.0,"baseline_avg":16001.4,"bar_rvol":1.582674,"raw_accel":1.412594,"smooth_accel":0.001431,"accel_momentum":-2.778672,"rvol_3bar":[0.634086,0.665234,1.582674],"trend_3bar":"ACCELERATING","projected_rvol":1.304872},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":11153.0,"sell_vol":2944.0,"unclassified_vol":0.0,"imbalance":0.582322,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":4.71083},"context":{"vwap":8.529304,"price_vs_vwap_pct":0.242649,"ema9":8.532605,"ema20":8.531245,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.173913,"dist_to_hod_atr":3.572755,"atr":0.05318,"spread_atr":0.18804,"own_change_pct":-0.232561,"rel_strength_pct":{"SPY":-0.228639,"IWM":-0.127504}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.921627},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1b683bb87213","ts":"2026-09-21T14:09:51.740830+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.0083,"target":5.1483,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":61.0,"room_to_5d_high_atr":0.76},"price":5.095,"vwap":5.0871,"ext_from_open_pct":-1.64,"max_ext_allowed_pct":3.0,"volume_pace":0.403,"trend":"flat","recent_slope_pct":-0.0525,"volatility":"high"},"price":5.095,"volume":{"bars":39,"last_bar_volume":21162.0,"baseline_avg":39859.45,"bar_rvol":0.530916,"raw_accel":-0.535901,"smooth_accel":0.843004,"accel_momentum":0.091321,"rvol_3bar":[1.95257,1.186728,0.530916],"trend_3bar":"DECELERATING","projected_rvol":0.715423},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":4693.0,"sell_vol":12816.0,"unclassified_vol":0.0,"imbalance":-0.463933,"bid":5.09,"ask":5.1,"spread_pct":0.196271,"quote_size_imbalance":null,"quote_age_s":1.987933},"context":{"vwap":5.086977,"price_vs_vwap_pct":0.157716,"ema9":5.096382,"ema20":5.084595,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.207294,"dist_to_hod_atr":2.723831,"atr":0.04222,"spread_atr":0.236855,"own_change_pct":-0.105874,"rel_strength_pct":{"SPY":-0.101952,"IWM":-0.000817}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.246309},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f7e005074fd8","ts":"2026-09-21T14:09:51.740830+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":8.4361,"target":8.82,"target_label":"prev_day_high","reward_risk":2.53,"pos_in_5d_range_pct":49.3,"room_to_5d_high_atr":0.85},"price":8.545,"vwap":8.5294,"ext_from_open_pct":-2.01,"max_ext_allowed_pct":4.0,"volume_pace":1.14,"trend":"flat","recent_slope_pct":0.1222,"volatility":"medium"},"price":8.545,"volume":{"bars":39,"last_bar_volume":25325.0,"baseline_avg":16001.4,"bar_rvol":1.582674,"raw_accel":1.412594,"smooth_accel":0.001431,"accel_momentum":-2.778672,"rvol_3bar":[0.634086,0.665234,1.582674],"trend_3bar":"ACCELERATING","projected_rvol":1.207717},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":3493.0,"sell_vol":186.0,"unclassified_vol":0.0,"imbalance":0.898886,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":0.496794},"context":{"vwap":8.529304,"price_vs_vwap_pct":0.184027,"ema9":8.532605,"ema20":8.531245,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.231121,"dist_to_hod_atr":3.666775,"atr":0.05318,"spread_atr":0.18804,"own_change_pct":-0.232561,"rel_strength_pct":{"SPY":-0.228639,"IWM":-0.127504}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.422643},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9171a7ca913a","ts":"2026-09-21T14:09:56.775537+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 371.7s, plan says WATCH; stop 6.35, target 6.95 (premarket_high), R:R 2.45; breakout: 1-min close > 6.56 on >= 37610 sh","plan":{"state":"WATCH","setup":"","stop":6.35,"target":6.95,"target_label":"premarket_high","reward_risk":2.45,"pos_in_5d_range_pct":105.9,"room_to_5d_high_atr":-0.16},"price":6.5237,"vwap":6.4162,"ext_from_open_pct":2.09,"max_ext_allowed_pct":3.0,"volume_pace":1.524,"trend":"flat","recent_slope_pct":-0.0147,"volatility":"high"},"price":6.5237,"volume":{"bars":39,"last_bar_volume":21712.0,"baseline_avg":12772.9,"bar_rvol":1.699849,"raw_accel":4.21547,"smooth_accel":-0.098797,"accel_momentum":-0.242636,"rvol_3bar":[0.148121,0.32935,1.699849],"trend_3bar":"ACCELERATING","projected_rvol":0.162496},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":204.0,"sell_vol":818.0,"unclassified_vol":0.0,"imbalance":-0.600783,"bid":6.51,"ask":6.53,"spread_pct":0.306748,"quote_size_imbalance":null,"quote_age_s":1.42223},"context":{"vwap":6.415999,"price_vs_vwap_pct":1.678638,"ema9":6.482867,"ema20":6.451105,"ema_stack":true,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-1.156061,"dist_to_hod_atr":1.434784,"atr":0.053179,"spread_atr":0.37609,"own_change_pct":0.648348,"rel_strength_pct":{"SPY":0.65227,"IWM":0.753405}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.02124},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a074efdad526","ts":"2026-09-21T14:10:02.335592+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4461,"target":8.82,"target_label":"prev_day_high","reward_risk":2.43,"pos_in_5d_range_pct":50.7,"room_to_5d_high_atr":0.83},"price":8.555,"vwap":8.5294,"ext_from_open_pct":-1.89,"max_ext_allowed_pct":3.0,"volume_pace":1.138,"trend":"flat","recent_slope_pct":0.0917,"volatility":"medium"},"price":8.555,"volume":{"bars":40,"last_bar_volume":16676.0,"baseline_avg":15085.85,"bar_rvol":1.105407,"raw_accel":-0.34152,"smooth_accel":-0.023239,"accel_momentum":-0.024669,"rvol_3bar":[0.665234,1.582674,1.105407],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3059.0,"sell_vol":1255.0,"unclassified_vol":0.0,"imbalance":0.418173,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":0.080833},"context":{"vwap":8.529382,"price_vs_vwap_pct":0.300345,"ema9":8.534864,"ema20":8.53245,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.116705,"dist_to_hod_atr":3.552114,"atr":0.052082,"spread_atr":0.192006,"own_change_pct":0.104277,"rel_strength_pct":{"SPY":0.118609,"IWM":0.125303}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.462252},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e6f6081eba88","ts":"2026-09-21T14:10:07.533329+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.20% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.1,"target":9.09,"target_label":"range_20d_high","reward_risk":3.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3,"vwap":8.1793,"ext_from_open_pct":3.62,"max_ext_allowed_pct":5.0,"volume_pace":7.918,"trend":"flat","recent_slope_pct":0.2243,"volatility":"unknown"},"price":8.3,"volume":{"bars":40,"last_bar_volume":272.0,"baseline_avg":7023.8,"bar_rvol":0.038725,"raw_accel":-0.845098,"smooth_accel":-0.634441,"accel_momentum":-0.55996,"rvol_3bar":[0.40024,0.172941,0.038725],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":5858.0,"sell_vol":104.0,"unclassified_vol":0.0,"imbalance":0.965112,"bid":8.27,"ask":8.37,"spread_pct":1.201923,"quote_size_imbalance":null,"quote_age_s":0.157698},"context":{"vwap":8.177849,"price_vs_vwap_pct":1.493676,"ema9":8.289599,"ema20":8.296092,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.263403,"dist_to_hod_atr":2.129743,"atr":0.131471,"spread_atr":0.760623,"own_change_pct":0.72904,"rel_strength_pct":{"SPY":0.743373,"IWM":0.750066}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.037374},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"dacd9eda0575","ts":"2026-09-21T14:10:12.628480+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.52 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4223,"target":8.76,"target_label":"premarket_high","reward_risk":2.31,"pos_in_5d_range_pct":113.6,"room_to_5d_high_atr":-0.43},"price":8.5242,"vwap":8.5295,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":4.0,"volume_pace":1.442,"trend":"flat","recent_slope_pct":-0.0251,"volatility":"medium"},"price":8.5242,"volume":{"bars":40,"last_bar_volume":1646.0,"baseline_avg":3794.4,"bar_rvol":0.433797,"raw_accel":-0.614791,"smooth_accel":0.37628,"accel_momentum":-0.495039,"rvol_3bar":[1.419715,1.126326,0.433797],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":1546.0,"sell_vol":1089.0,"unclassified_vol":0.0,"imbalance":0.173435,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":9.627047},"context":{"vwap":8.529454,"price_vs_vwap_pct":-0.061603,"ema9":8.529637,"ema20":8.516145,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.454335,"dist_to_hod_atr":2.819629,"atr":0.044616,"spread_atr":0.224136,"own_change_pct":-0.175644,"rel_strength_pct":{"SPY":-0.161311,"IWM":-0.154618}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.075235},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"cdfaae9950cb","ts":"2026-09-21T14:10:12.628480+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.40x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.0033,"target":5.1483,"target_label":"premarket_high","reward_risk":0.67,"pos_in_5d_range_pct":60.3,"room_to_5d_high_atr":0.78},"price":5.09,"vwap":5.0872,"ext_from_open_pct":-1.74,"max_ext_allowed_pct":4.0,"volume_pace":0.4,"trend":"flat","recent_slope_pct":-0.2084,"volatility":"high"},"price":5.09,"volume":{"bars":40,"last_bar_volume":25805.0,"baseline_avg":39146.3,"bar_rvol":0.659194,"raw_accel":0.219403,"smooth_accel":-0.255328,"accel_momentum":-1.098331,"rvol_3bar":[1.186728,0.530916,0.659194],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":5784.0,"sell_vol":3571.0,"unclassified_vol":0.0,"imbalance":0.236558,"bid":5.09,"ask":5.1,"spread_pct":0.196271,"quote_size_imbalance":null,"quote_age_s":0.185185},"context":{"vwap":5.087146,"price_vs_vwap_pct":0.056094,"ema9":5.096825,"ema20":5.085929,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.303263,"dist_to_hod_atr":2.898254,"atr":0.041404,"spread_atr":0.241521,"own_change_pct":-0.072516,"rel_strength_pct":{"SPY":-0.058184,"IWM":-0.05149}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.155938},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bee83a262e01","ts":"2026-09-21T14:10:17.816328+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.4581,"target":8.76,"target_label":"premarket_high","reward_risk":1.96,"pos_in_5d_range_pct":116.4,"room_to_5d_high_atr":-0.52},"price":8.56,"vwap":8.5295,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":4.0,"volume_pace":1.441,"trend":"flat","recent_slope_pct":0.0588,"volatility":"medium"},"price":8.56,"volume":{"bars":40,"last_bar_volume":1646.0,"baseline_avg":3794.4,"bar_rvol":0.433797,"raw_accel":-0.614791,"smooth_accel":0.37628,"accel_momentum":-0.495039,"rvol_3bar":[1.419715,1.126326,0.433797],"trend_3bar":"DECELERATING","projected_rvol":1.256762},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":1344.0,"sell_vol":90.0,"unclassified_vol":0.0,"imbalance":0.874477,"bid":8.56,"ask":8.57,"spread_pct":0.116754,"quote_size_imbalance":null,"quote_age_s":0.581324},"context":{"vwap":8.529454,"price_vs_vwap_pct":0.358119,"ema9":8.529637,"ema20":8.516145,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-1.040462,"dist_to_hod_atr":2.017222,"atr":0.044616,"spread_atr":0.224136,"own_change_pct":-0.175644,"rel_strength_pct":{"SPY":-0.161311,"IWM":-0.154618}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.379346},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"3d41daae5d25","ts":"2026-09-21T14:10:23.001419+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.4631,"target":8.76,"target_label":"premarket_high","reward_risk":1.91,"pos_in_5d_range_pct":116.8,"room_to_5d_high_atr":-0.53},"price":8.565,"vwap":8.5299,"ext_from_open_pct":-0.64,"max_ext_allowed_pct":4.0,"volume_pace":1.462,"trend":"flat","recent_slope_pct":0.0705,"volatility":"medium"},"price":8.565,"volume":{"bars":40,"last_bar_volume":1646.0,"baseline_avg":3794.4,"bar_rvol":0.433797,"raw_accel":-0.614791,"smooth_accel":0.37628,"accel_momentum":-0.495039,"rvol_3bar":[1.419715,1.126326,0.433797],"trend_3bar":"DECELERATING","projected_rvol":4.278811},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":6144.0,"sell_vol":98.0,"unclassified_vol":0.0,"imbalance":0.9686,"bid":8.56,"ask":8.57,"spread_pct":0.116754,"quote_size_imbalance":null,"quote_age_s":0.247534},"context":{"vwap":8.529454,"price_vs_vwap_pct":0.41674,"ema9":8.529637,"ema20":8.516145,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-0.982659,"dist_to_hod_atr":1.905155,"atr":0.044616,"spread_atr":0.224136,"own_change_pct":-0.175644,"rel_strength_pct":{"SPY":-0.161311,"IWM":-0.154618}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.420176},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"4a48473bc815","ts":"2026-09-21T14:10:28.116942+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.15,"target":9.09,"target_label":"range_20d_high","reward_risk":4.22,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.33,"vwap":8.1798,"ext_from_open_pct":4.0,"max_ext_allowed_pct":5.0,"volume_pace":7.874,"trend":"flat","recent_slope_pct":0.2967,"volatility":"unknown"},"price":8.33,"volume":{"bars":40,"last_bar_volume":272.0,"baseline_avg":7023.8,"bar_rvol":0.038725,"raw_accel":-0.845098,"smooth_accel":-0.634441,"accel_momentum":-0.55996,"rvol_3bar":[0.40024,0.172941,0.038725],"trend_3bar":"DECELERATING","projected_rvol":2.180793},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":6024.0,"sell_vol":1154.0,"unclassified_vol":0.0,"imbalance":0.678462,"bid":8.3,"ask":8.36,"spread_pct":0.720288,"quote_size_imbalance":null,"quote_age_s":0.42295},"context":{"vwap":8.177849,"price_vs_vwap_pct":1.86052,"ema9":8.289599,"ema20":8.296092,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.913753,"dist_to_hod_atr":1.901556,"atr":0.131471,"spread_atr":0.456374,"own_change_pct":0.72904,"rel_strength_pct":{"SPY":0.743373,"IWM":0.750066}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.026274},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0adb811607c2","ts":"2026-09-21T14:10:33.197033+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.52 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.412,"target":8.82,"target_label":"prev_day_high","reward_risk":2.75,"pos_in_5d_range_pct":46.0,"room_to_5d_high_atr":0.9},"price":8.5209,"vwap":8.5294,"ext_from_open_pct":-2.28,"max_ext_allowed_pct":3.0,"volume_pace":1.125,"trend":"flat","recent_slope_pct":0.0118,"volatility":"medium"},"price":8.5209,"volume":{"bars":40,"last_bar_volume":16676.0,"baseline_avg":15085.85,"bar_rvol":1.105407,"raw_accel":-0.34152,"smooth_accel":-0.023239,"accel_momentum":-0.024669,"rvol_3bar":[0.665234,1.582674,1.105407],"trend_3bar":"MIXED","projected_rvol":0.59616},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":346.0,"sell_vol":973.0,"unclassified_vol":0.0,"imbalance":-0.47536,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":0.259252},"context":{"vwap":8.529382,"price_vs_vwap_pct":-0.099449,"ema9":8.534864,"ema20":8.53245,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.506865,"dist_to_hod_atr":4.206855,"atr":0.052082,"spread_atr":0.192006,"own_change_pct":0.104277,"rel_strength_pct":{"SPY":0.118609,"IWM":0.125303}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.525466},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5d55eb6dd7d2","ts":"2026-09-21T14:10:38.275929+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4431,"target":8.82,"target_label":"prev_day_high","reward_risk":2.46,"pos_in_5d_range_pct":50.3,"room_to_5d_high_atr":0.83},"price":8.552,"vwap":8.5295,"ext_from_open_pct":-1.93,"max_ext_allowed_pct":3.0,"volume_pace":1.124,"trend":"flat","recent_slope_pct":0.0847,"volatility":"medium"},"price":8.552,"volume":{"bars":40,"last_bar_volume":16676.0,"baseline_avg":15085.85,"bar_rvol":1.105407,"raw_accel":-0.34152,"smooth_accel":-0.023239,"accel_momentum":-0.024669,"rvol_3bar":[0.665234,1.582674,1.105407],"trend_3bar":"MIXED","projected_rvol":0.725913},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":2336.0,"sell_vol":980.0,"unclassified_vol":0.0,"imbalance":0.408926,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":0.637338},"context":{"vwap":8.529382,"price_vs_vwap_pct":0.265173,"ema9":8.534864,"ema20":8.53245,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.15103,"dist_to_hod_atr":3.609716,"atr":0.052082,"spread_atr":0.192006,"own_change_pct":0.104277,"rel_strength_pct":{"SPY":0.118609,"IWM":0.125303}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.45203},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c3430d3c0a90","ts":"2026-09-21T14:10:48.454113+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.09% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.05,"target":9.09,"target_label":"range_20d_high","reward_risk":4.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.23,"vwap":8.1807,"ext_from_open_pct":2.75,"max_ext_allowed_pct":4.0,"volume_pace":7.957,"trend":"flat","recent_slope_pct":0.0551,"volatility":"unknown"},"price":8.23,"volume":{"bars":40,"last_bar_volume":272.0,"baseline_avg":7023.8,"bar_rvol":0.038725,"raw_accel":-0.845098,"smooth_accel":-0.634441,"accel_momentum":-0.55996,"rvol_3bar":[0.40024,0.172941,0.038725],"trend_3bar":"DECELERATING","projected_rvol":2.895349},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":3999.0,"sell_vol":5262.0,"unclassified_vol":0.0,"imbalance":-0.136378,"bid":8.2,"ask":8.29,"spread_pct":1.091571,"quote_size_imbalance":null,"quote_age_s":0.005729},"context":{"vwap":8.177849,"price_vs_vwap_pct":0.637705,"ema9":8.289599,"ema20":8.296092,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.079254,"dist_to_hod_atr":2.662179,"atr":0.131471,"spread_atr":0.68456,"own_change_pct":0.72904,"rel_strength_pct":{"SPY":0.743373,"IWM":0.750066}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.005281},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"8fe31460e33a","ts":"2026-09-21T14:11:03.882865+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 280.6s, plan says PASS; stop 9.01, target 9.12 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.12; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.01,"target":9.117,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":135.2,"room_to_5d_high_atr":-1.12},"price":9.117,"vwap":8.9964,"ext_from_open_pct":1.08,"max_ext_allowed_pct":4.0,"volume_pace":2.18,"trend":"flat","recent_slope_pct":0.1359,"volatility":"medium"},"price":9.117,"volume":{"bars":41,"last_bar_volume":60184.0,"baseline_avg":38047.4,"bar_rvol":1.581816,"raw_accel":-0.315523,"smooth_accel":1.0179,"accel_momentum":0.476365,"rvol_3bar":[0.873949,2.534851,1.581816],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":34416.0,"sell_vol":2631.0,"unclassified_vol":0.0,"imbalance":0.857964,"bid":9.11,"ask":9.12,"spread_pct":0.109709,"quote_size_imbalance":null,"quote_age_s":0.146287},"context":{"vwap":8.996375,"price_vs_vwap_pct":1.340814,"ema9":9.07581,"ema20":9.04856,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.141294,"dist_to_hod_atr":0.2653,"atr":0.048624,"spread_atr":0.205659,"own_change_pct":0.829646,"rel_strength_pct":{"SPY":0.782722,"IWM":0.734986}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.357142},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e7a5ef3f4592","ts":"2026-09-21T14:11:14.098970+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4169,"target":8.82,"target_label":"prev_day_high","reward_risk":2.7,"pos_in_5d_range_pct":46.7,"room_to_5d_high_atr":0.89},"price":8.5258,"vwap":8.5295,"ext_from_open_pct":-2.23,"max_ext_allowed_pct":3.0,"volume_pace":1.112,"trend":"flat","recent_slope_pct":0.0112,"volatility":"medium"},"price":8.5258,"volume":{"bars":41,"last_bar_volume":8318.0,"baseline_avg":15460.6,"bar_rvol":0.538013,"raw_accel":-0.501199,"smooth_accel":-0.199787,"accel_momentum":-0.176548,"rvol_3bar":[1.582674,1.105407,0.538013],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":1653.0,"sell_vol":3234.0,"unclassified_vol":0.0,"imbalance":-0.323511,"bid":8.56,"ask":8.57,"spread_pct":0.116754,"quote_size_imbalance":null,"quote_age_s":0.543477},"context":{"vwap":8.529485,"price_vs_vwap_pct":-0.0432,"ema9":8.538891,"ema20":8.534598,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.450801,"dist_to_hod_atr":4.187323,"atr":0.051154,"spread_atr":0.195487,"own_change_pct":0.647059,"rel_strength_pct":{"SPY":0.600135,"IWM":0.552398}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.174053},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"927061d36251","ts":"2026-09-21T14:11:19.168306+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4208,"target":8.82,"target_label":"prev_day_high","reward_risk":2.67,"pos_in_5d_range_pct":47.2,"room_to_5d_high_atr":0.88},"price":8.5297,"vwap":8.5295,"ext_from_open_pct":-2.18,"max_ext_allowed_pct":3.0,"volume_pace":1.11,"trend":"flat","recent_slope_pct":0.0204,"volatility":"medium"},"price":8.5297,"volume":{"bars":41,"last_bar_volume":8318.0,"baseline_avg":15460.6,"bar_rvol":0.538013,"raw_accel":-0.501199,"smooth_accel":-0.199787,"accel_momentum":-0.176548,"rvol_3bar":[1.582674,1.105407,0.538013],"trend_3bar":"DECELERATING","projected_rvol":0.892043},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":1652.0,"sell_vol":2889.0,"unclassified_vol":0.0,"imbalance":-0.272407,"bid":8.56,"ask":8.57,"spread_pct":0.116754,"quote_size_imbalance":null,"quote_age_s":0.387546},"context":{"vwap":8.529485,"price_vs_vwap_pct":0.002524,"ema9":8.538891,"ema20":8.534598,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.406178,"dist_to_hod_atr":4.111083,"atr":0.051154,"spread_atr":0.195487,"own_change_pct":0.647059,"rel_strength_pct":{"SPY":0.600135,"IWM":0.552398}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.146558},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"9011883ad37b","ts":"2026-09-21T14:11:34.482207+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.0183,"target":5.1483,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":62.5,"room_to_5d_high_atr":0.73},"price":5.105,"vwap":5.0888,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":4.0,"volume_pace":0.425,"trend":"flat","recent_slope_pct":-0.0098,"volatility":"high"},"price":5.105,"volume":{"bars":41,"last_bar_volume":22306.0,"baseline_avg":36684.95,"bar_rvol":0.608042,"raw_accel":-0.135594,"smooth_accel":-0.543443,"accel_momentum":-0.288115,"rvol_3bar":[0.530916,0.659194,0.608042],"trend_3bar":"MIXED","projected_rvol":8.278341},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":171760.0,"sell_vol":2632.0,"unclassified_vol":0.0,"imbalance":0.969815,"bid":5.1,"ask":5.11,"spread_pct":0.195886,"quote_size_imbalance":null,"quote_age_s":1.309204},"context":{"vwap":5.087348,"price_vs_vwap_pct":0.346987,"ema9":5.09946,"ema20":5.088222,"ema_stack":true,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.015355,"dist_to_hod_atr":2.607515,"atr":0.040268,"spread_atr":0.248335,"own_change_pct":0.424495,"rel_strength_pct":{"SPY":0.377571,"IWM":0.329834}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.589689},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"23b7c64ad891","ts":"2026-09-21T14:11:34.482207+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4186,"target":8.82,"target_label":"prev_day_high","reward_risk":2.69,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":0.89},"price":8.5275,"vwap":8.5295,"ext_from_open_pct":-2.21,"max_ext_allowed_pct":3.0,"volume_pace":1.104,"trend":"flat","recent_slope_pct":0.0152,"volatility":"medium"},"price":8.5275,"volume":{"bars":41,"last_bar_volume":8318.0,"baseline_avg":15460.6,"bar_rvol":0.538013,"raw_accel":-0.501199,"smooth_accel":-0.199787,"accel_momentum":-0.176548,"rvol_3bar":[1.582674,1.105407,0.538013],"trend_3bar":"DECELERATING","projected_rvol":0.568695},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":492.0,"sell_vol":767.0,"unclassified_vol":0.0,"imbalance":-0.218427,"bid":8.56,"ask":8.57,"spread_pct":0.116754,"quote_size_imbalance":null,"quote_age_s":0.110235},"context":{"vwap":8.529485,"price_vs_vwap_pct":-0.023269,"ema9":8.538891,"ema20":8.534598,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.43135,"dist_to_hod_atr":4.15409,"atr":0.051154,"spread_atr":0.195487,"own_change_pct":0.647059,"rel_strength_pct":{"SPY":0.600135,"IWM":0.552398}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.117517},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"fdeeb0a69fd3","ts":"2026-09-21T14:11:44.645294+00:00","symbol":"CRML","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7,"target":9.26,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":301.0,"room_to_5d_high_atr":-4.36},"price":9.115,"vwap":9.1142,"ext_from_open_pct":4.89,"max_ext_allowed_pct":5.0,"volume_pace":18.124,"trend":"flat","recent_slope_pct":-0.2519,"volatility":"medium"},"price":9.115,"volume":{"bars":41,"last_bar_volume":245605.0,"baseline_avg":229166.7,"bar_rvol":1.071731,"raw_accel":1.116828,"smooth_accel":-0.082826,"accel_momentum":0.30828,"rvol_3bar":[0.951302,0.489929,1.071731],"trend_3bar":"MIXED","projected_rvol":0.74173},"flow":{"window_s":30,"trades":378,"trade_rate":12.6,"buy_vol":43459.0,"sell_vol":47191.0,"unclassified_vol":0.0,"imbalance":-0.041169,"bid":9.11,"ask":9.12,"spread_pct":0.109709,"quote_size_imbalance":null,"quote_age_s":0.024894},"context":{"vwap":9.114068,"price_vs_vwap_pct":0.010224,"ema9":9.172309,"ema20":9.143815,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-5.446058,"dist_to_hod_atr":3.026915,"atr":0.173444,"spread_atr":0.057656,"own_change_pct":-1.316614,"rel_strength_pct":{"SPY":-1.363538,"IWM":-1.411274}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.044122},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9702ad52d958","ts":"2026-09-21T14:11:44.645294+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4561,"target":8.82,"target_label":"prev_day_high","reward_risk":2.34,"pos_in_5d_range_pct":52.1,"room_to_5d_high_atr":0.8},"price":8.565,"vwap":8.5296,"ext_from_open_pct":-1.78,"max_ext_allowed_pct":3.0,"volume_pace":1.1,"trend":"flat","recent_slope_pct":0.103,"volatility":"medium"},"price":8.565,"volume":{"bars":41,"last_bar_volume":8318.0,"baseline_avg":15460.6,"bar_rvol":0.538013,"raw_accel":-0.501199,"smooth_accel":-0.199787,"accel_momentum":-0.176548,"rvol_3bar":[1.582674,1.105407,0.538013],"trend_3bar":"DECELERATING","projected_rvol":0.476006},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":497.0,"sell_vol":884.0,"unclassified_vol":0.0,"imbalance":-0.280232,"bid":8.56,"ask":8.57,"spread_pct":0.116754,"quote_size_imbalance":null,"quote_age_s":3.625282},"context":{"vwap":8.529485,"price_vs_vwap_pct":0.416382,"ema9":8.538891,"ema20":8.534598,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.002288,"dist_to_hod_atr":3.421015,"atr":0.051154,"spread_atr":0.195487,"own_change_pct":0.647059,"rel_strength_pct":{"SPY":0.600135,"IWM":0.552398}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.150768},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"cb3e171a21e2","ts":"2026-09-21T14:11:49.679943+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $8.69 (max 5%: volume pace strong, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7,"target":9.26,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":302.0,"room_to_5d_high_atr":-4.38},"price":9.125,"vwap":9.1142,"ext_from_open_pct":5.01,"max_ext_allowed_pct":5.0,"volume_pace":18.09,"trend":"flat","recent_slope_pct":-0.23,"volatility":"medium"},"price":9.125,"volume":{"bars":41,"last_bar_volume":245605.0,"baseline_avg":229166.7,"bar_rvol":1.071731,"raw_accel":1.116828,"smooth_accel":-0.082826,"accel_momentum":0.30828,"rvol_3bar":[0.951302,0.489929,1.071731],"trend_3bar":"MIXED","projected_rvol":0.681566},"flow":{"window_s":30,"trades":376,"trade_rate":12.533333,"buy_vol":44952.0,"sell_vol":47081.0,"unclassified_vol":0.0,"imbalance":-0.023133,"bid":9.12,"ask":9.13,"spread_pct":0.109589,"quote_size_imbalance":null,"quote_age_s":0.077401},"context":{"vwap":9.114068,"price_vs_vwap_pct":0.119944,"ema9":9.172309,"ema20":9.143815,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-5.342324,"dist_to_hod_atr":2.96926,"atr":0.173444,"spread_atr":0.057656,"own_change_pct":-1.316614,"rel_strength_pct":{"SPY":-1.363538,"IWM":-1.411274}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.024792},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c7fa76c63abc","ts":"2026-09-21T14:12:04.784160+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 341.5s, plan says WATCH; stop 9.00, target 9.09 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.09; breakout: 1-min close > 9.14 on >= 82018 sh","plan":{"state":"WATCH","setup":"","stop":8.9985,"target":9.085,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":132.3,"room_to_5d_high_atr":-1.03},"price":9.085,"vwap":8.9988,"ext_from_open_pct":0.72,"max_ext_allowed_pct":3.0,"volume_pace":2.182,"trend":"flat","recent_slope_pct":-0.011,"volatility":"medium"},"price":9.085,"volume":{"bars":42,"last_bar_volume":58386.0,"baseline_avg":40756.95,"bar_rvol":1.432541,"raw_accel":-0.029875,"smooth_accel":1.446792,"accel_momentum":0.428892,"rvol_3bar":[2.534851,1.581816,1.432541],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":5112.0,"sell_vol":22367.0,"unclassified_vol":0.0,"imbalance":-0.627934,"bid":9.08,"ask":9.09,"spread_pct":0.110072,"quote_size_imbalance":null,"quote_age_s":0.255473},"context":{"vwap":8.998781,"price_vs_vwap_pct":0.958118,"ema9":9.076648,"ema20":9.051554,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.491791,"dist_to_hod_atr":0.925616,"atr":0.048508,"spread_atr":0.206151,"own_change_pct":0.10915,"rel_strength_pct":{"SPY":0.057008,"IWM":-0.034639}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.899541},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"57a9436c9c73","ts":"2026-09-21T14:12:09.854931+00:00","symbol":"SECZ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.3005,"target":12.0,"target_label":"premarket_high","reward_risk":1.55,"pos_in_5d_range_pct":113.9,"room_to_5d_high_atr":-0.62},"price":11.575,"vwap":11.5223,"ext_from_open_pct":-0.81,"max_ext_allowed_pct":4.0,"volume_pace":0.51,"trend":"flat","recent_slope_pct":0.3387,"volatility":"high"},"price":11.575,"volume":{"bars":42,"last_bar_volume":9611.0,"baseline_avg":15577.3,"bar_rvol":0.616988,"raw_accel":-0.102866,"smooth_accel":0.862549,"accel_momentum":1.356122,"rvol_3bar":[0.560877,0.685334,0.616988],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":9978.0,"sell_vol":1348.0,"unclassified_vol":0.0,"imbalance":0.761964,"bid":11.54,"ask":11.62,"spread_pct":0.690846,"quote_size_imbalance":null,"quote_age_s":2.316014},"context":{"vwap":11.522084,"price_vs_vwap_pct":0.459257,"ema9":11.48901,"ema20":11.481164,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.380634,"dist_to_hod_atr":3.238152,"atr":0.125071,"spread_atr":0.639635,"own_change_pct":1.047162,"rel_strength_pct":{"SPY":0.99502,"IWM":0.903373}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.470122},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"18ebd1e25632","ts":"2026-09-21T14:12:09.854931+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 346.6s, plan says PASS; stop 8.99, target 9.08 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.08; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9935,"target":9.08,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":131.8,"room_to_5d_high_atr":-1.01},"price":9.08,"vwap":8.9988,"ext_from_open_pct":0.67,"max_ext_allowed_pct":3.0,"volume_pace":2.178,"trend":"flat","recent_slope_pct":-0.022,"volatility":"medium"},"price":9.08,"volume":{"bars":42,"last_bar_volume":58386.0,"baseline_avg":40756.95,"bar_rvol":1.432541,"raw_accel":-0.029875,"smooth_accel":1.446792,"accel_momentum":0.428892,"rvol_3bar":[2.534851,1.581816,1.432541],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":4841.0,"sell_vol":21776.0,"unclassified_vol":0.0,"imbalance":-0.636248,"bid":9.08,"ask":9.09,"spread_pct":0.110072,"quote_size_imbalance":null,"quote_age_s":0.778158},"context":{"vwap":8.998781,"price_vs_vwap_pct":0.902555,"ema9":9.076648,"ema20":9.051554,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.546556,"dist_to_hod_atr":1.028691,"atr":0.048508,"spread_atr":0.206151,"own_change_pct":0.10915,"rel_strength_pct":{"SPY":0.057008,"IWM":-0.034639}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.911451},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"525c68c5f56a","ts":"2026-09-21T14:12:19.965154+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.142,"target":9.09,"target_label":"range_20d_high","reward_risk":5.77,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.282,"vwap":8.1825,"ext_from_open_pct":3.4,"max_ext_allowed_pct":4.0,"volume_pace":7.721,"trend":"flat","recent_slope_pct":0.0518,"volatility":"unknown"},"price":8.282,"volume":{"bars":42,"last_bar_volume":1917.0,"baseline_avg":6156.0,"bar_rvol":0.311404,"raw_accel":-0.890999,"smooth_accel":0.610817,"accel_momentum":0.343576,"rvol_3bar":[0.038725,2.927264,0.311404],"trend_3bar":"MIXED","projected_rvol":0.084943},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":10.0,"sell_vol":164.0,"unclassified_vol":0.0,"imbalance":-0.885057,"bid":8.29,"ask":8.36,"spread_pct":0.840841,"quote_size_imbalance":null,"quote_age_s":3.919915},"context":{"vwap":8.182418,"price_vs_vwap_pct":1.217025,"ema9":8.302544,"ema20":8.301381,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.473193,"dist_to_hod_atr":2.359229,"atr":0.126312,"spread_atr":0.554181,"own_change_pct":1.248283,"rel_strength_pct":{"SPY":1.196141,"IWM":1.104494}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.27561},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d2d5ef818545","ts":"2026-09-21T14:12:19.965154+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 356.7s, plan says WATCH; stop 9.01, target 9.10 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.10; breakout: 1-min close > 9.14 on >= 82018 sh","plan":{"state":"WATCH","setup":"","stop":9.01,"target":9.0974,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":133.4,"room_to_5d_high_atr":-1.06},"price":9.0974,"vwap":8.9995,"ext_from_open_pct":0.86,"max_ext_allowed_pct":4.0,"volume_pace":2.186,"trend":"flat","recent_slope_pct":0.0163,"volatility":"medium"},"price":9.0974,"volume":{"bars":42,"last_bar_volume":58386.0,"baseline_avg":40756.95,"bar_rvol":1.432541,"raw_accel":-0.029875,"smooth_accel":1.446792,"accel_momentum":0.428892,"rvol_3bar":[2.534851,1.581816,1.432541],"trend_3bar":"DECELERATING","projected_rvol":1.324954},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":19334.0,"sell_vol":3229.0,"unclassified_vol":0.0,"imbalance":0.713779,"bid":9.09,"ask":9.1,"spread_pct":0.109951,"quote_size_imbalance":null,"quote_age_s":0.224175},"context":{"vwap":8.998781,"price_vs_vwap_pct":1.095914,"ema9":9.076648,"ema20":9.051554,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.355973,"dist_to_hod_atr":0.669989,"atr":0.048508,"spread_atr":0.206151,"own_change_pct":0.10915,"rel_strength_pct":{"SPY":0.057008,"IWM":-0.034639}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.022518},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"c993f0601da9","ts":"2026-09-21T14:12:40.555230+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.08% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.135,"target":9.09,"target_label":"range_20d_high","reward_risk":4.31,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.315,"vwap":8.1827,"ext_from_open_pct":3.81,"max_ext_allowed_pct":5.0,"volume_pace":7.67,"trend":"flat","recent_slope_pct":0.1312,"volatility":"unknown"},"price":8.315,"volume":{"bars":42,"last_bar_volume":1917.0,"baseline_avg":6156.0,"bar_rvol":0.311404,"raw_accel":-0.890999,"smooth_accel":0.610817,"accel_momentum":0.343576,"rvol_3bar":[0.038725,2.927264,0.311404],"trend_3bar":"MIXED","projected_rvol":0.223025},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":573.0,"sell_vol":345.0,"unclassified_vol":0.0,"imbalance":0.248366,"bid":8.27,"ask":8.36,"spread_pct":1.082381,"quote_size_imbalance":null,"quote_age_s":3.937213},"context":{"vwap":8.182418,"price_vs_vwap_pct":1.620329,"ema9":8.302544,"ema20":8.301381,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.088578,"dist_to_hod_atr":2.097972,"atr":0.126312,"spread_atr":0.712519,"own_change_pct":1.248283,"rel_strength_pct":{"SPY":1.196141,"IWM":1.104494}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.077342},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4b8a6cea9b61","ts":"2026-09-21T14:12:50.833160+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 387.5s, plan says PASS; stop 9.00, target 9.08 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.08; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9958,"target":9.0823,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":132.0,"room_to_5d_high_atr":-1.02},"price":9.0823,"vwap":8.9998,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":2.167,"trend":"flat","recent_slope_pct":-0.0169,"volatility":"medium"},"price":9.0823,"volume":{"bars":42,"last_bar_volume":58386.0,"baseline_avg":40756.95,"bar_rvol":1.432541,"raw_accel":-0.029875,"smooth_accel":1.446792,"accel_momentum":0.428892,"rvol_3bar":[2.534851,1.581816,1.432541],"trend_3bar":"DECELERATING","projected_rvol":0.756674},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":5977.0,"sell_vol":2182.0,"unclassified_vol":0.0,"imbalance":0.465131,"bid":9.08,"ask":9.09,"spread_pct":0.110072,"quote_size_imbalance":null,"quote_age_s":0.057216},"context":{"vwap":8.998781,"price_vs_vwap_pct":0.928114,"ema9":9.076648,"ema20":9.051554,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.521364,"dist_to_hod_atr":0.981277,"atr":0.048508,"spread_atr":0.206151,"own_change_pct":0.10915,"rel_strength_pct":{"SPY":0.057008,"IWM":-0.034639}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.666319},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b945fb5f58b1","ts":"2026-09-21T14:12:50.833160+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.08 below VWAP $5.09","plan":{"state":"PASS","setup":"","stop":4.9983,"target":5.1483,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":59.6,"room_to_5d_high_atr":0.79},"price":5.085,"vwap":5.0895,"ext_from_open_pct":-1.83,"max_ext_allowed_pct":3.0,"volume_pace":0.421,"trend":"flat","recent_slope_pct":-0.0071,"volatility":"high"},"price":5.085,"volume":{"bars":42,"last_bar_volume":192933.0,"baseline_avg":37199.4,"bar_rvol":5.186455,"raw_accel":7.649377,"smooth_accel":0.718845,"accel_momentum":1.262288,"rvol_3bar":[0.659194,0.608042,5.186455],"trend_3bar":"MIXED","projected_rvol":0.829482},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":13253.0,"sell_vol":7634.0,"unclassified_vol":0.0,"imbalance":0.269019,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":0.201194},"context":{"vwap":5.089443,"price_vs_vwap_pct":-0.087294,"ema9":5.102568,"ema20":5.090772,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.399232,"dist_to_hod_atr":3.233634,"atr":0.038656,"spread_atr":0.258691,"own_change_pct":-0.389484,"rel_strength_pct":{"SPY":-0.441626,"IWM":-0.533273}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":1.395255},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"48c9b03017f4","ts":"2026-09-21T14:12:55.935553+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.14,"target":9.09,"target_label":"range_20d_high","reward_risk":4.94,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3,"vwap":8.1832,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":7.657,"trend":"flat","recent_slope_pct":0.0951,"volatility":"unknown"},"price":8.3,"volume":{"bars":42,"last_bar_volume":1917.0,"baseline_avg":6156.0,"bar_rvol":0.311404,"raw_accel":-0.890999,"smooth_accel":0.610817,"accel_momentum":0.343576,"rvol_3bar":[0.038725,2.927264,0.311404],"trend_3bar":"MIXED","projected_rvol":0.531627},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":2586.0,"sell_vol":291.0,"unclassified_vol":0.0,"imbalance":0.797706,"bid":8.27,"ask":8.35,"spread_pct":0.962696,"quote_size_imbalance":null,"quote_age_s":2.365767},"context":{"vwap":8.182418,"price_vs_vwap_pct":1.437009,"ema9":8.302544,"ema20":8.301381,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.263403,"dist_to_hod_atr":2.216725,"atr":0.126312,"spread_atr":0.63335,"own_change_pct":1.248283,"rel_strength_pct":{"SPY":1.196141,"IWM":1.104494}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.248408},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ccd5240af8cf","ts":"2026-09-21T14:12:55.935553+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 392.6s, plan says WATCH; stop 9.00, target 9.08 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.08; breakout: 1-min close > 9.14 on >= 82018 sh","plan":{"state":"WATCH","setup":"","stop":8.9972,"target":9.0837,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":132.2,"room_to_5d_high_atr":-1.02},"price":9.0837,"vwap":8.9999,"ext_from_open_pct":0.71,"max_ext_allowed_pct":3.0,"volume_pace":2.165,"trend":"flat","recent_slope_pct":-0.0139,"volatility":"medium"},"price":9.0837,"volume":{"bars":42,"last_bar_volume":58386.0,"baseline_avg":40756.95,"bar_rvol":1.432541,"raw_accel":-0.029875,"smooth_accel":1.446792,"accel_momentum":0.428892,"rvol_3bar":[2.534851,1.581816,1.432541],"trend_3bar":"DECELERATING","projected_rvol":0.747788},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":6012.0,"sell_vol":4424.0,"unclassified_vol":0.0,"imbalance":0.152166,"bid":9.08,"ask":9.09,"spread_pct":0.110072,"quote_size_imbalance":null,"quote_age_s":0.504351},"context":{"vwap":8.998781,"price_vs_vwap_pct":0.943671,"ema9":9.076648,"ema20":9.051554,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.50603,"dist_to_hod_atr":0.952416,"atr":0.048508,"spread_atr":0.206151,"own_change_pct":0.10915,"rel_strength_pct":{"SPY":0.057008,"IWM":-0.034639}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.217983},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"50d44fe73f5d","ts":"2026-09-21T14:13:01.031666+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.08% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.12,"target":9.09,"target_label":"range_20d_high","reward_risk":4.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3,"vwap":8.1834,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":7.656,"trend":"flat","recent_slope_pct":0.0951,"volatility":"unknown"},"price":8.3,"volume":{"bars":42,"last_bar_volume":1917.0,"baseline_avg":6156.0,"bar_rvol":0.311404,"raw_accel":-0.890999,"smooth_accel":0.610817,"accel_momentum":0.343576,"rvol_3bar":[0.038725,2.927264,0.311404],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":2591.0,"sell_vol":1191.0,"unclassified_vol":0.0,"imbalance":0.370175,"bid":8.27,"ask":8.36,"spread_pct":1.082381,"quote_size_imbalance":null,"quote_age_s":2.770743},"context":{"vwap":8.182418,"price_vs_vwap_pct":1.437009,"ema9":8.302544,"ema20":8.301381,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.263403,"dist_to_hod_atr":2.216725,"atr":0.126312,"spread_atr":0.712519,"own_change_pct":1.248283,"rel_strength_pct":{"SPY":1.190282,"IWM":1.150106}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.115274},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"59f79d43d69a","ts":"2026-09-21T14:13:01.031666+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 397.7s, plan says PASS; stop 8.98, target 9.07 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.07; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9845,"target":9.071,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":131.0,"room_to_5d_high_atr":-0.99},"price":9.071,"vwap":9.0003,"ext_from_open_pct":0.57,"max_ext_allowed_pct":3.0,"volume_pace":2.173,"trend":"flat","recent_slope_pct":-0.1078,"volatility":"medium"},"price":9.071,"volume":{"bars":43,"last_bar_volume":41464.0,"baseline_avg":39771.7,"bar_rvol":1.04255,"raw_accel":-0.28983,"smooth_accel":0.204459,"accel_momentum":-1.242333,"rvol_3bar":[1.581816,1.432541,1.04255],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":4684.0,"sell_vol":16181.0,"unclassified_vol":0.0,"imbalance":-0.551018,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.006193},"context":{"vwap":9.000281,"price_vs_vwap_pct":0.78574,"ema9":9.076319,"ema20":9.053787,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.645133,"dist_to_hod_atr":1.257574,"atr":0.046836,"spread_atr":0.21351,"own_change_pct":0.025351,"rel_strength_pct":{"SPY":-0.03265,"IWM":-0.072826}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.574464},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"70bfecbcebe2","ts":"2026-09-21T14:13:16.427502+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.12,"target":9.09,"target_label":"range_20d_high","reward_risk":5.06,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.28,"vwap":8.1834,"ext_from_open_pct":3.37,"max_ext_allowed_pct":4.0,"volume_pace":7.611,"trend":"flat","recent_slope_pct":-0.0482,"volatility":"unknown"},"price":8.28,"volume":{"bars":43,"last_bar_volume":3956.0,"baseline_avg":6065.55,"bar_rvol":0.652208,"raw_accel":1.063641,"smooth_accel":3.434783,"accel_momentum":2.823966,"rvol_3bar":[2.927264,0.311404,0.652208],"trend_3bar":"MIXED","projected_rvol":0.050581},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":19.0,"sell_vol":1093.0,"unclassified_vol":0.0,"imbalance":-0.965827,"bid":8.27,"ask":8.35,"spread_pct":0.962696,"quote_size_imbalance":null,"quote_age_s":1.27102},"context":{"vwap":8.183375,"price_vs_vwap_pct":1.180749,"ema9":8.302035,"ema20":8.30125,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.496503,"dist_to_hod_atr":2.485116,"atr":0.120719,"spread_atr":0.662698,"own_change_pct":0.60728,"rel_strength_pct":{"SPY":0.549279,"IWM":0.509103}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.62992},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"de36df00c773","ts":"2026-09-21T14:13:16.427502+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4192,"target":8.82,"target_label":"prev_day_high","reward_risk":2.68,"pos_in_5d_range_pct":47.0,"room_to_5d_high_atr":0.89},"price":8.5281,"vwap":8.5298,"ext_from_open_pct":-2.2,"max_ext_allowed_pct":3.0,"volume_pace":1.068,"trend":"flat","recent_slope_pct":-0.0136,"volatility":"medium"},"price":8.5281,"volume":{"bars":43,"last_bar_volume":3435.0,"baseline_avg":15641.05,"bar_rvol":0.219614,"raw_accel":-0.677131,"smooth_accel":-0.573469,"accel_momentum":-0.333251,"rvol_3bar":[0.538013,0.68181,0.219614],"trend_3bar":"MIXED","projected_rvol":0.110686},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":539.0,"sell_vol":38.0,"unclassified_vol":0.0,"imbalance":0.868284,"bid":8.57,"ask":8.58,"spread_pct":0.116618,"quote_size_imbalance":null,"quote_age_s":2.005447},"context":{"vwap":8.52979,"price_vs_vwap_pct":-0.019814,"ema9":8.55109,"ema20":8.541496,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.424485,"dist_to_hod_atr":4.14334,"atr":0.051142,"spread_atr":0.195533,"own_change_pct":0.52755,"rel_strength_pct":{"SPY":0.469549,"IWM":0.429373}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.190688},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f6d3aaab5e49","ts":"2026-09-21T14:13:21.527826+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4601,"target":8.82,"target_label":"prev_day_high","reward_risk":2.3,"pos_in_5d_range_pct":52.6,"room_to_5d_high_atr":0.79},"price":8.569,"vwap":8.5298,"ext_from_open_pct":-1.73,"max_ext_allowed_pct":3.0,"volume_pace":1.066,"trend":"flat","recent_slope_pct":0.082,"volatility":"medium"},"price":8.569,"volume":{"bars":43,"last_bar_volume":3435.0,"baseline_avg":15641.05,"bar_rvol":0.219614,"raw_accel":-0.677131,"smooth_accel":-0.573469,"accel_momentum":-0.333251,"rvol_3bar":[0.538013,0.68181,0.219614],"trend_3bar":"MIXED","projected_rvol":0.087135},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":540.0,"sell_vol":40.0,"unclassified_vol":0.0,"imbalance":0.862069,"bid":8.57,"ask":8.58,"spread_pct":0.116618,"quote_size_imbalance":null,"quote_age_s":0.284652},"context":{"vwap":8.52979,"price_vs_vwap_pct":0.459682,"ema9":8.55109,"ema20":8.541496,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.956522,"dist_to_hod_atr":3.343611,"atr":0.051142,"spread_atr":0.195533,"own_change_pct":0.52755,"rel_strength_pct":{"SPY":0.469549,"IWM":0.429373}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.189323},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9a8122730ecb","ts":"2026-09-21T14:13:26.599574+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.08% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.12,"target":9.09,"target_label":"range_20d_high","reward_risk":4.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3,"vwap":8.1834,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":7.584,"trend":"flat","recent_slope_pct":0.0,"volatility":"unknown"},"price":8.3,"volume":{"bars":43,"last_bar_volume":3956.0,"baseline_avg":6065.55,"bar_rvol":0.652208,"raw_accel":1.063641,"smooth_accel":3.434783,"accel_momentum":2.823966,"rvol_3bar":[2.927264,0.311404,0.652208],"trend_3bar":"MIXED","projected_rvol":0.087021},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":51.0,"sell_vol":183.0,"unclassified_vol":0.0,"imbalance":-0.564103,"bid":8.27,"ask":8.36,"spread_pct":1.082381,"quote_size_imbalance":null,"quote_age_s":0.589763},"context":{"vwap":8.183375,"price_vs_vwap_pct":1.425147,"ema9":8.302035,"ema20":8.30125,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.263403,"dist_to_hod_atr":2.319442,"atr":0.120719,"spread_atr":0.745535,"own_change_pct":0.60728,"rel_strength_pct":{"SPY":0.549279,"IWM":0.509103}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.367912},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3cdf7e535fcd","ts":"2026-09-21T14:13:26.599574+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 423.3s, plan says WATCH; stop 9.00, target 9.09 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.09; breakout: 1-min close > 9.14 on >= 81557 sh","plan":{"state":"WATCH","setup":"","stop":9.0035,"target":9.09,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":132.7,"room_to_5d_high_atr":-1.04},"price":9.09,"vwap":9.0006,"ext_from_open_pct":0.78,"max_ext_allowed_pct":3.0,"volume_pace":2.159,"trend":"flat","recent_slope_pct":-0.066,"volatility":"medium"},"price":9.09,"volume":{"bars":43,"last_bar_volume":41464.0,"baseline_avg":39771.7,"bar_rvol":1.04255,"raw_accel":-0.28983,"smooth_accel":0.204459,"accel_momentum":-1.242333,"rvol_3bar":[1.581816,1.432541,1.04255],"trend_3bar":"DECELERATING","projected_rvol":0.443799},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":3974.0,"sell_vol":4078.0,"unclassified_vol":0.0,"imbalance":-0.012916,"bid":9.08,"ask":9.09,"spread_pct":0.110072,"quote_size_imbalance":null,"quote_age_s":0.138589},"context":{"vwap":9.000281,"price_vs_vwap_pct":0.996844,"ema9":9.076319,"ema20":9.053787,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.437026,"dist_to_hod_atr":0.851905,"atr":0.046836,"spread_atr":0.21351,"own_change_pct":0.025351,"rel_strength_pct":{"SPY":-0.03265,"IWM":-0.072826}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.013466},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7a22a9bce4d2","ts":"2026-09-21T14:13:26.599574+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.53 below VWAP $8.53","plan":{"state":"PASS","setup":"","stop":8.4192,"target":8.82,"target_label":"prev_day_high","reward_risk":2.68,"pos_in_5d_range_pct":47.0,"room_to_5d_high_atr":0.89},"price":8.5281,"vwap":8.5298,"ext_from_open_pct":-2.2,"max_ext_allowed_pct":3.0,"volume_pace":1.064,"trend":"flat","recent_slope_pct":-0.0136,"volatility":"medium"},"price":8.5281,"volume":{"bars":43,"last_bar_volume":3435.0,"baseline_avg":15641.05,"bar_rvol":0.219614,"raw_accel":-0.677131,"smooth_accel":-0.573469,"accel_momentum":-0.333251,"rvol_3bar":[0.538013,0.68181,0.219614],"trend_3bar":"MIXED","projected_rvol":0.08826},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":450.0,"sell_vol":163.0,"unclassified_vol":0.0,"imbalance":0.468189,"bid":8.57,"ask":8.58,"spread_pct":0.116618,"quote_size_imbalance":null,"quote_age_s":0.553387},"context":{"vwap":8.52979,"price_vs_vwap_pct":-0.019814,"ema9":8.55109,"ema20":8.541496,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.424485,"dist_to_hod_atr":4.14334,"atr":0.051142,"spread_atr":0.195533,"own_change_pct":0.52755,"rel_strength_pct":{"SPY":0.469549,"IWM":0.429373}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.102821},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f9868c7b4eea","ts":"2026-09-21T14:13:31.678982+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.48 below VWAP $11.52","plan":{"state":"PASS","setup":"","stop":11.2745,"target":12.0,"target_label":"premarket_high","reward_risk":2.55,"pos_in_5d_range_pct":111.2,"room_to_5d_high_atr":-0.5},"price":11.479,"vwap":11.523,"ext_from_open_pct":-1.64,"max_ext_allowed_pct":3.0,"volume_pace":0.502,"trend":"flat","recent_slope_pct":0.059,"volatility":"high"},"price":11.479,"volume":{"bars":43,"last_bar_volume":19183.0,"baseline_avg":15136.55,"bar_rvol":1.26733,"raw_accel":0.995942,"smooth_accel":0.831572,"accel_momentum":-0.030978,"rvol_3bar":[0.685334,0.616988,1.26733],"trend_3bar":"MIXED","projected_rvol":0.69596},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":2962.0,"sell_vol":2599.0,"unclassified_vol":0.0,"imbalance":0.065276,"bid":11.55,"ask":11.61,"spread_pct":0.518135,"quote_size_imbalance":null,"quote_age_s":1.683436},"context":{"vwap":11.522994,"price_vs_vwap_pct":-0.381794,"ema9":11.505208,"ema20":11.489624,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-4.18197,"dist_to_hod_atr":4.123633,"atr":0.121495,"spread_atr":0.493848,"own_change_pct":1.224847,"rel_strength_pct":{"SPY":1.166846,"IWM":1.12667}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.082726},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"90d9cc9a9937","ts":"2026-09-21T14:13:36.721040+00:00","symbol":"SECZ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.3005,"target":12.0,"target_label":"premarket_high","reward_risk":1.26,"pos_in_5d_range_pct":114.8,"room_to_5d_high_atr":-0.66},"price":11.61,"vwap":11.5233,"ext_from_open_pct":-0.51,"max_ext_allowed_pct":3.0,"volume_pace":0.502,"trend":"flat","recent_slope_pct":0.2858,"volatility":"high"},"price":11.61,"volume":{"bars":43,"last_bar_volume":19183.0,"baseline_avg":15136.55,"bar_rvol":1.26733,"raw_accel":0.995942,"smooth_accel":0.831572,"accel_momentum":-0.030978,"rvol_3bar":[0.685334,0.616988,1.26733],"trend_3bar":"MIXED","projected_rvol":0.773114},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":4557.0,"sell_vol":2599.0,"unclassified_vol":0.0,"imbalance":0.273617,"bid":11.56,"ask":11.61,"spread_pct":0.431593,"quote_size_imbalance":null,"quote_age_s":0.992369},"context":{"vwap":11.522994,"price_vs_vwap_pct":0.755063,"ema9":11.505208,"ema20":11.489624,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.088481,"dist_to_hod_atr":3.045398,"atr":0.121495,"spread_atr":0.41154,"own_change_pct":1.224847,"rel_strength_pct":{"SPY":1.166846,"IWM":1.12667}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.346762},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"33d508968cec","ts":"2026-09-21T14:13:36.721040+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4661,"target":8.82,"target_label":"prev_day_high","reward_risk":2.25,"pos_in_5d_range_pct":53.4,"room_to_5d_high_atr":0.78},"price":8.575,"vwap":8.5298,"ext_from_open_pct":-1.66,"max_ext_allowed_pct":3.0,"volume_pace":1.06,"trend":"flat","recent_slope_pct":0.096,"volatility":"medium"},"price":8.575,"volume":{"bars":43,"last_bar_volume":3435.0,"baseline_avg":15641.05,"bar_rvol":0.219614,"raw_accel":-0.677131,"smooth_accel":-0.573469,"accel_momentum":-0.333251,"rvol_3bar":[0.538013,0.68181,0.219614],"trend_3bar":"MIXED","projected_rvol":0.072916},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":79.0,"sell_vol":199.0,"unclassified_vol":0.0,"imbalance":-0.431655,"bid":8.57,"ask":8.58,"spread_pct":0.116618,"quote_size_imbalance":null,"quote_age_s":0.860336},"context":{"vwap":8.52979,"price_vs_vwap_pct":0.530023,"ema9":8.55109,"ema20":8.541496,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.887872,"dist_to_hod_atr":3.226291,"atr":0.051142,"spread_atr":0.195533,"own_change_pct":0.52755,"rel_strength_pct":{"SPY":0.469549,"IWM":0.429373}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.094798},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"049c2c4b444d","ts":"2026-09-21T14:13:41.749187+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.25 below VWAP $5.26","plan":{"state":"PASS","setup":"","stop":5.1973,"target":5.31,"target_label":"ceiling","reward_risk":0.95,"pos_in_5d_range_pct":91.9,"room_to_5d_high_atr":0.26},"price":5.255,"vwap":5.2561,"ext_from_open_pct":-1.22,"max_ext_allowed_pct":4.0,"volume_pace":0.313,"trend":"flat","recent_slope_pct":-0.0369,"volatility":"medium"},"price":5.255,"volume":{"bars":43,"last_bar_volume":71.0,"baseline_avg":1372.2,"bar_rvol":0.051742,"raw_accel":-0.843956,"smooth_accel":-0.490599,"accel_momentum":0.127729,"rvol_3bar":[1.363607,0.288632,0.051742],"trend_3bar":"DECELERATING","projected_rvol":0.717425},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":126.0,"sell_vol":86.0,"unclassified_vol":0.0,"imbalance":0.188679,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":0.471802},"context":{"vwap":5.256042,"price_vs_vwap_pct":-0.019824,"ema9":5.262297,"ema20":5.261098,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.221805,"dist_to_hod_atr":4.078464,"atr":0.015937,"spread_atr":0.627456,"own_change_pct":0.190295,"rel_strength_pct":{"SPY":0.132294,"IWM":0.092118}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.009763},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"c78544b93994","ts":"2026-09-21T14:13:51.823329+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.31x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2066,"target":5.31,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":93.2,"room_to_5d_high_atr":0.22},"price":5.2643,"vwap":5.2561,"ext_from_open_pct":-1.05,"max_ext_allowed_pct":4.0,"volume_pace":0.312,"trend":"flat","recent_slope_pct":-0.0015,"volatility":"medium"},"price":5.2643,"volume":{"bars":43,"last_bar_volume":71.0,"baseline_avg":1372.2,"bar_rvol":0.051742,"raw_accel":-0.843956,"smooth_accel":-0.490599,"accel_momentum":0.127729,"rvol_3bar":[1.363607,0.288632,0.051742],"trend_3bar":"DECELERATING","projected_rvol":0.691867},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":135.0,"sell_vol":186.0,"unclassified_vol":0.0,"imbalance":-0.158879,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":2.099969},"context":{"vwap":5.256042,"price_vs_vwap_pct":0.157115,"ema9":5.262297,"ema20":5.261098,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.046992,"dist_to_hod_atr":3.49493,"atr":0.015937,"spread_atr":0.627456,"own_change_pct":0.190295,"rel_strength_pct":{"SPY":0.132294,"IWM":0.092118}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.008221},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"9b129f7d4ea3","ts":"2026-09-21T14:13:56.854774+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.0032,"target":5.1483,"target_label":"premarket_high","reward_risk":0.67,"pos_in_5d_range_pct":60.3,"room_to_5d_high_atr":0.78},"price":5.0899,"vwap":5.0895,"ext_from_open_pct":-1.74,"max_ext_allowed_pct":3.0,"volume_pace":0.412,"trend":"flat","recent_slope_pct":-0.0786,"volatility":"high"},"price":5.0899,"volume":{"bars":43,"last_bar_volume":27533.0,"baseline_avg":46103.6,"bar_rvol":0.597198,"raw_accel":-0.857292,"smooth_accel":1.622719,"accel_momentum":0.903874,"rvol_3bar":[0.608042,5.186455,0.597198],"trend_3bar":"MIXED","projected_rvol":0.203356},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1104.0,"sell_vol":1172.0,"unclassified_vol":0.0,"imbalance":-0.029877,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":0.227376},"context":{"vwap":5.089522,"price_vs_vwap_pct":0.007426,"ema9":5.099515,"ema20":5.090441,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.305182,"dist_to_hod_atr":3.09918,"atr":0.038752,"spread_atr":0.25805,"own_change_pct":-0.541544,"rel_strength_pct":{"SPY":-0.599545,"IWM":-0.639721}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.017842},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7bdb20767139","ts":"2026-09-21T14:14:01.921912+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.13,"target":9.09,"target_label":"range_20d_high","reward_risk":5.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.29,"vwap":8.184,"ext_from_open_pct":3.5,"max_ext_allowed_pct":4.0,"volume_pace":7.521,"trend":"flat","recent_slope_pct":-0.1204,"volatility":"unknown"},"price":8.29,"volume":{"bars":44,"last_bar_volume":2070.0,"baseline_avg":5759.15,"bar_rvol":0.359428,"raw_accel":-0.476744,"smooth_accel":-0.587933,"accel_momentum":-4.022716,"rvol_3bar":[0.311404,0.652208,0.359428],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1328.0,"sell_vol":1240.0,"unclassified_vol":0.0,"imbalance":0.034268,"bid":8.25,"ask":8.33,"spread_pct":0.965018,"quote_size_imbalance":null,"quote_age_s":1.957734},"context":{"vwap":8.183881,"price_vs_vwap_pct":1.296688,"ema9":8.299628,"ema20":8.300178,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.379953,"dist_to_hod_atr":2.446751,"atr":0.118525,"spread_atr":0.674966,"own_change_pct":0.114727,"rel_strength_pct":{"SPY":0.061291,"IWM":0.00602}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.012317},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a19f50f5b2ef","ts":"2026-09-21T14:14:01.921912+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.09 below VWAP $5.09","plan":{"state":"PASS","setup":"","stop":5.0021,"target":5.1483,"target_label":"premarket_high","reward_risk":0.69,"pos_in_5d_range_pct":60.1,"room_to_5d_high_atr":0.78},"price":5.0888,"vwap":5.0895,"ext_from_open_pct":-1.76,"max_ext_allowed_pct":3.0,"volume_pace":0.412,"trend":"flat","recent_slope_pct":-0.0829,"volatility":"high"},"price":5.0888,"volume":{"bars":43,"last_bar_volume":27533.0,"baseline_avg":46103.6,"bar_rvol":0.597198,"raw_accel":-0.857292,"smooth_accel":1.622719,"accel_momentum":0.903874,"rvol_3bar":[0.608042,5.186455,0.597198],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":916.0,"sell_vol":1172.0,"unclassified_vol":0.0,"imbalance":-0.122605,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":2.850024},"context":{"vwap":5.089522,"price_vs_vwap_pct":-0.014187,"ema9":5.099515,"ema20":5.090441,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.326296,"dist_to_hod_atr":3.127565,"atr":0.038752,"spread_atr":0.25805,"own_change_pct":-0.541544,"rel_strength_pct":{"SPY":-0.59498,"IWM":-0.650252}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.07322},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bb2a7f1d4489","ts":"2026-09-21T14:14:07.067169+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 30.3s, plan says WATCH; stop 8.48, target 8.82 (prev_day_high), R:R 2.16; pullback: buy 8.49-8.57 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.4761,"target":8.82,"target_label":"prev_day_high","reward_risk":2.16,"pos_in_5d_range_pct":54.8,"room_to_5d_high_atr":0.76},"price":8.585,"vwap":8.53,"ext_from_open_pct":-1.55,"max_ext_allowed_pct":3.0,"volume_pace":1.053,"trend":"flat","recent_slope_pct":0.0678,"volatility":"medium"},"price":8.585,"volume":{"bars":44,"last_bar_volume":4190.0,"baseline_avg":15233.1,"bar_rvol":0.275059,"raw_accel":0.100236,"smooth_accel":-0.637036,"accel_momentum":-0.063566,"rvol_3bar":[0.68181,0.219614,0.275059],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":3688.0,"sell_vol":2544.0,"unclassified_vol":0.0,"imbalance":0.183569,"bid":8.58,"ask":8.59,"spread_pct":0.116482,"quote_size_imbalance":null,"quote_age_s":0.066611},"context":{"vwap":8.529883,"price_vs_vwap_pct":0.646169,"ema9":8.554492,"ema20":8.54403,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.773455,"dist_to_hod_atr":3.027554,"atr":0.051196,"spread_atr":0.195326,"own_change_pct":0.364297,"rel_strength_pct":{"SPY":0.310861,"IWM":0.255589}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.050492},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"46ec37da543f","ts":"2026-09-21T14:14:07.067169+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.25 below VWAP $5.26","plan":{"state":"PASS","setup":"","stop":5.1973,"target":5.31,"target_label":"ceiling","reward_risk":0.95,"pos_in_5d_range_pct":91.9,"room_to_5d_high_atr":0.26},"price":5.255,"vwap":5.2561,"ext_from_open_pct":-1.22,"max_ext_allowed_pct":4.0,"volume_pace":0.311,"trend":"flat","recent_slope_pct":-0.039,"volatility":"medium"},"price":5.255,"volume":{"bars":44,"last_bar_volume":820.0,"baseline_avg":1373.45,"bar_rvol":0.597037,"raw_accel":1.388147,"smooth_accel":-0.601657,"accel_momentum":-0.111058,"rvol_3bar":[0.288632,0.051742,0.597037],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":35.0,"sell_vol":187.0,"unclassified_vol":0.0,"imbalance":-0.684685,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":12.166254},"context":{"vwap":5.2561,"price_vs_vwap_pct":-0.020923,"ema9":5.262698,"ema20":5.261403,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.221805,"dist_to_hod_atr":4.18996,"atr":0.015513,"spread_atr":0.644609,"own_change_pct":0.076041,"rel_strength_pct":{"SPY":0.022605,"IWM":-0.032667}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.408782},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0a4010fa55cc","ts":"2026-09-21T14:14:17.209190+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.0032,"target":5.1483,"target_label":"premarket_high","reward_risk":0.67,"pos_in_5d_range_pct":60.3,"room_to_5d_high_atr":0.78},"price":5.0899,"vwap":5.0895,"ext_from_open_pct":-1.74,"max_ext_allowed_pct":3.0,"volume_pace":0.409,"trend":"flat","recent_slope_pct":-0.1302,"volatility":"high"},"price":5.0899,"volume":{"bars":44,"last_bar_volume":8898.0,"baseline_avg":46757.4,"bar_rvol":0.190301,"raw_accel":-0.676824,"smooth_accel":2.311016,"accel_momentum":0.688297,"rvol_3bar":[5.186455,0.597198,0.190301],"trend_3bar":"DECELERATING","projected_rvol":0.05503},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":861.0,"sell_vol":1513.0,"unclassified_vol":0.0,"imbalance":-0.274642,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":9.274258},"context":{"vwap":5.089536,"price_vs_vwap_pct":0.007161,"ema9":5.097372,"ema20":5.090285,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.305182,"dist_to_hod_atr":3.151177,"atr":0.038113,"spread_atr":0.262379,"own_change_pct":-0.121688,"rel_strength_pct":{"SPY":-0.175124,"IWM":-0.230396}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.052265},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a288db40fdce","ts":"2026-09-21T14:14:22.276441+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.08 below VWAP $5.09","plan":{"state":"PASS","setup":"","stop":4.9983,"target":5.1483,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":59.6,"room_to_5d_high_atr":0.79},"price":5.085,"vwap":5.0895,"ext_from_open_pct":-1.83,"max_ext_allowed_pct":3.0,"volume_pace":0.423,"trend":"flat","recent_slope_pct":-0.1495,"volatility":"high"},"price":5.085,"volume":{"bars":44,"last_bar_volume":8898.0,"baseline_avg":46757.4,"bar_rvol":0.190301,"raw_accel":-0.676824,"smooth_accel":2.311016,"accel_momentum":0.688297,"rvol_3bar":[5.186455,0.597198,0.190301],"trend_3bar":"DECELERATING","projected_rvol":4.437204},"flow":{"window_s":30,"trades":268,"trade_rate":8.933333,"buy_vol":32539.0,"sell_vol":45818.0,"unclassified_vol":0.0,"imbalance":-0.169468,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":0.075075},"context":{"vwap":5.089536,"price_vs_vwap_pct":-0.089115,"ema9":5.097372,"ema20":5.090285,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.399232,"dist_to_hod_atr":3.279743,"atr":0.038113,"spread_atr":0.262379,"own_change_pct":-0.121688,"rel_strength_pct":{"SPY":-0.175124,"IWM":-0.230396}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.03225},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"08f1ac3157c9","ts":"2026-09-21T14:14:37.697298+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 494.4s, plan says PASS; stop 8.99, target 9.07 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.07; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9864,"target":9.0729,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":131.2,"room_to_5d_high_atr":-0.99},"price":9.0729,"vwap":9.0013,"ext_from_open_pct":0.59,"max_ext_allowed_pct":4.0,"volume_pace":2.121,"trend":"flat","recent_slope_pct":-0.0733,"volatility":"medium"},"price":9.0729,"volume":{"bars":44,"last_bar_volume":11336.0,"baseline_avg":40571.45,"bar_rvol":0.279408,"raw_accel":-0.726606,"smooth_accel":-0.374583,"accel_momentum":-0.579042,"rvol_3bar":[1.432541,1.04255,0.279408],"trend_3bar":"DECELERATING","projected_rvol":0.715245},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":14055.0,"sell_vol":3460.0,"unclassified_vol":0.0,"imbalance":0.60491,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.007708},"context":{"vwap":9.00071,"price_vs_vwap_pct":0.802045,"ema9":9.080575,"ema20":9.05796,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.624322,"dist_to_hod_atr":1.249079,"atr":0.045634,"spread_atr":0.219137,"own_change_pct":0.193833,"rel_strength_pct":{"SPY":0.140397,"IWM":0.085125}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.169017},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"40caaa4fe106","ts":"2026-09-21T14:14:37.697298+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 61.0s, plan says PASS; stop 8.47, target 8.82 (prev_day_high), R:R 2.20; target 0.24 away > ~0.24 reachable in 340 min","plan":{"state":"PASS","setup":"","stop":8.4716,"target":8.82,"target_label":"prev_day_high","reward_risk":2.2,"pos_in_5d_range_pct":54.2,"room_to_5d_high_atr":0.77},"price":8.5805,"vwap":8.5301,"ext_from_open_pct":-1.6,"max_ext_allowed_pct":3.0,"volume_pace":1.044,"trend":"flat","recent_slope_pct":0.0573,"volatility":"medium"},"price":8.5805,"volume":{"bars":44,"last_bar_volume":4190.0,"baseline_avg":15233.1,"bar_rvol":0.275059,"raw_accel":0.100236,"smooth_accel":-0.637036,"accel_momentum":-0.063566,"rvol_3bar":[0.68181,0.219614,0.275059],"trend_3bar":"MIXED","projected_rvol":0.700152},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":2986.0,"sell_vol":814.0,"unclassified_vol":0.0,"imbalance":0.571579,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":3.826234},"context":{"vwap":8.529883,"price_vs_vwap_pct":0.593413,"ema9":8.554492,"ema20":8.54403,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.824943,"dist_to_hod_atr":3.115451,"atr":0.051196,"spread_atr":0.195326,"own_change_pct":0.364297,"rel_strength_pct":{"SPY":0.310861,"IWM":0.255589}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.157218},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a931746b1245","ts":"2026-09-21T14:14:42.797853+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 499.5s, plan says WATCH; stop 9.00, target 9.09 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.09; breakout: 1-min close > 9.14 on >= 80090 sh","plan":{"state":"WATCH","setup":"","stop":8.9986,"target":9.0851,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":132.3,"room_to_5d_high_atr":-1.03},"price":9.0851,"vwap":9.0014,"ext_from_open_pct":0.72,"max_ext_allowed_pct":4.0,"volume_pace":2.118,"trend":"flat","recent_slope_pct":-0.0464,"volatility":"medium"},"price":9.0851,"volume":{"bars":44,"last_bar_volume":11336.0,"baseline_avg":40571.45,"bar_rvol":0.279408,"raw_accel":-0.726606,"smooth_accel":-0.374583,"accel_momentum":-0.579042,"rvol_3bar":[1.432541,1.04255,0.279408],"trend_3bar":"DECELERATING","projected_rvol":0.674026},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":13767.0,"sell_vol":3605.0,"unclassified_vol":0.0,"imbalance":0.584964,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.163302},"context":{"vwap":9.00071,"price_vs_vwap_pct":0.93759,"ema9":9.080575,"ema20":9.05796,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.490695,"dist_to_hod_atr":0.981732,"atr":0.045634,"spread_atr":0.219137,"own_change_pct":0.193833,"rel_strength_pct":{"SPY":0.140397,"IWM":0.085125}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.163444},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"be6482e8b860","ts":"2026-09-21T14:14:47.971330+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9785,"target":9.065,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-0.97},"price":9.065,"vwap":9.0014,"ext_from_open_pct":0.5,"max_ext_allowed_pct":3.0,"volume_pace":2.115,"trend":"flat","recent_slope_pct":-0.0907,"volatility":"medium"},"price":9.065,"volume":{"bars":44,"last_bar_volume":11336.0,"baseline_avg":40571.45,"bar_rvol":0.279408,"raw_accel":-0.726606,"smooth_accel":-0.374583,"accel_momentum":-0.579042,"rvol_3bar":[1.432541,1.04255,0.279408],"trend_3bar":"DECELERATING","projected_rvol":0.650969},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":13932.0,"sell_vol":4924.0,"unclassified_vol":0.0,"imbalance":0.477726,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":1.433909},"context":{"vwap":9.00071,"price_vs_vwap_pct":0.714274,"ema9":9.080575,"ema20":9.05796,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.710851,"dist_to_hod_atr":1.422197,"atr":0.045634,"spread_atr":0.219137,"own_change_pct":0.193833,"rel_strength_pct":{"SPY":0.140397,"IWM":0.085125}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.133481},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"39832f35002d","ts":"2026-09-21T14:14:47.971330+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 71.3s, plan says WATCH; stop 8.48, target 8.82 (prev_day_high), R:R 1.96; R:R 1.96 < 2.0 at 8.60; pullback: buy 8.49-8.57 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.48,"target":8.82,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":56.2,"room_to_5d_high_atr":0.73},"price":8.595,"vwap":8.5301,"ext_from_open_pct":-1.43,"max_ext_allowed_pct":3.0,"volume_pace":1.04,"trend":"flat","recent_slope_pct":0.0911,"volatility":"medium"},"price":8.595,"volume":{"bars":44,"last_bar_volume":4190.0,"baseline_avg":15233.1,"bar_rvol":0.275059,"raw_accel":0.100236,"smooth_accel":-0.637036,"accel_momentum":-0.063566,"rvol_3bar":[0.68181,0.219614,0.275059],"trend_3bar":"MIXED","projected_rvol":0.560546},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":826.0,"sell_vol":405.0,"unclassified_vol":0.0,"imbalance":0.341998,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":2.983447},"context":{"vwap":8.529883,"price_vs_vwap_pct":0.763404,"ema9":8.554492,"ema20":8.54403,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.659039,"dist_to_hod_atr":2.832228,"atr":0.051196,"spread_atr":0.195326,"own_change_pct":0.364297,"rel_strength_pct":{"SPY":0.310861,"IWM":0.255589}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.09407},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f1ef78d5abb8","ts":"2026-09-21T14:15:18.478975+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 101.8s, plan says PASS; stop 8.46, target 8.82 (prev_day_high), R:R 2.28; target 0.25 away > ~0.24 reachable in 340 min","plan":{"state":"PASS","setup":"","stop":8.4631,"target":8.82,"target_label":"prev_day_high","reward_risk":2.28,"pos_in_5d_range_pct":53.0,"room_to_5d_high_atr":0.79},"price":8.572,"vwap":8.5302,"ext_from_open_pct":-1.7,"max_ext_allowed_pct":4.0,"volume_pace":1.03,"trend":"flat","recent_slope_pct":0.0338,"volatility":"medium"},"price":8.572,"volume":{"bars":45,"last_bar_volume":6836.0,"baseline_avg":15217.65,"bar_rvol":0.449215,"raw_accel":0.631504,"smooth_accel":-0.594168,"accel_momentum":0.042867,"rvol_3bar":[0.219614,0.275059,0.449215],"trend_3bar":"ACCELERATING","projected_rvol":0.319623},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":76.0,"sell_vol":1431.0,"unclassified_vol":0.0,"imbalance":-0.899137,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":1.516285},"context":{"vwap":8.530127,"price_vs_vwap_pct":0.490886,"ema9":8.563594,"ema20":8.54936,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.922197,"dist_to_hod_atr":3.201944,"atr":0.052468,"spread_atr":0.190592,"own_change_pct":0.656609,"rel_strength_pct":{"SPY":0.601876,"IWM":0.551456}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.403906},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9984823fec6d","ts":"2026-09-21T14:15:23.593078+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 106.9s, plan says WATCH; stop 8.48, target 8.82 (prev_day_high), R:R 1.96; R:R 1.96 < 2.0 at 8.60; pullback: buy 8.49-8.57 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.48,"target":8.82,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":56.2,"room_to_5d_high_atr":0.73},"price":8.595,"vwap":8.5302,"ext_from_open_pct":-1.43,"max_ext_allowed_pct":4.0,"volume_pace":1.028,"trend":"flat","recent_slope_pct":0.0874,"volatility":"medium"},"price":8.595,"volume":{"bars":45,"last_bar_volume":6836.0,"baseline_avg":15217.65,"bar_rvol":0.449215,"raw_accel":0.631504,"smooth_accel":-0.594168,"accel_momentum":0.042867,"rvol_3bar":[0.219614,0.275059,0.449215],"trend_3bar":"ACCELERATING","projected_rvol":0.28744},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":196.0,"sell_vol":1531.0,"unclassified_vol":0.0,"imbalance":-0.773017,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":2.574691},"context":{"vwap":8.530127,"price_vs_vwap_pct":0.760519,"ema9":8.563594,"ema20":8.54936,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.659039,"dist_to_hod_atr":2.763583,"atr":0.052468,"spread_atr":0.190592,"own_change_pct":0.656609,"rel_strength_pct":{"SPY":0.601876,"IWM":0.551456}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.347251},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d8df88c371ea","ts":"2026-09-21T14:15:28.710909+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.0078,"target":9.0943,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":133.1,"room_to_5d_high_atr":-1.05},"price":9.0943,"vwap":9.0017,"ext_from_open_pct":0.82,"max_ext_allowed_pct":3.0,"volume_pace":2.092,"trend":"flat","recent_slope_pct":0.0205,"volatility":"medium"},"price":9.0943,"volume":{"bars":45,"last_bar_volume":24743.0,"baseline_avg":40136.65,"bar_rvol":0.616469,"raw_accel":1.182692,"smooth_accel":-0.624484,"accel_momentum":-0.249901,"rvol_3bar":[1.04255,0.279408,0.616469],"trend_3bar":"MIXED","projected_rvol":0.325836},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":3957.0,"sell_vol":2492.0,"unclassified_vol":0.0,"imbalance":0.227167,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":0.141897},"context":{"vwap":9.001485,"price_vs_vwap_pct":1.031105,"ema9":9.07746,"ema20":9.05863,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.389928,"dist_to_hod_atr":0.787315,"atr":0.045217,"spread_atr":0.221156,"own_change_pct":-0.384615,"rel_strength_pct":{"SPY":-0.439348,"IWM":-0.489768}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.140041},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"223232276352","ts":"2026-09-21T14:15:33.780109+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9785,"target":9.065,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-0.97},"price":9.065,"vwap":9.0017,"ext_from_open_pct":0.5,"max_ext_allowed_pct":3.0,"volume_pace":2.089,"trend":"flat","recent_slope_pct":-0.0441,"volatility":"medium"},"price":9.065,"volume":{"bars":45,"last_bar_volume":24743.0,"baseline_avg":40136.65,"bar_rvol":0.616469,"raw_accel":1.182692,"smooth_accel":-0.624484,"accel_momentum":-0.249901,"rvol_3bar":[1.04255,0.279408,0.616469],"trend_3bar":"MIXED","projected_rvol":0.290702},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":3435.0,"sell_vol":2583.0,"unclassified_vol":0.0,"imbalance":0.141575,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":2.850095},"context":{"vwap":9.001485,"price_vs_vwap_pct":0.705603,"ema9":9.07746,"ema20":9.05863,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.710851,"dist_to_hod_atr":1.435303,"atr":0.045217,"spread_atr":0.221156,"own_change_pct":-0.384615,"rel_strength_pct":{"SPY":-0.439348,"IWM":-0.489768}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.087277},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5481eb2ca6c2","ts":"2026-09-21T14:15:33.780109+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 117.1s, plan says PASS; stop 8.46, target 8.82 (prev_day_high), R:R 2.26; target 0.25 away > ~0.24 reachable in 339 min","plan":{"state":"PASS","setup":"","stop":8.4649,"target":8.82,"target_label":"prev_day_high","reward_risk":2.26,"pos_in_5d_range_pct":53.3,"room_to_5d_high_atr":0.78},"price":8.5738,"vwap":8.5304,"ext_from_open_pct":-1.68,"max_ext_allowed_pct":3.0,"volume_pace":1.029,"trend":"flat","recent_slope_pct":0.038,"volatility":"medium"},"price":8.5738,"volume":{"bars":45,"last_bar_volume":6836.0,"baseline_avg":15217.65,"bar_rvol":0.449215,"raw_accel":0.631504,"smooth_accel":-0.594168,"accel_momentum":0.042867,"rvol_3bar":[0.219614,0.275059,0.449215],"trend_3bar":"ACCELERATING","projected_rvol":0.858354},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":1969.0,"sell_vol":5376.0,"unclassified_vol":0.0,"imbalance":-0.463853,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":0.904049},"context":{"vwap":8.530127,"price_vs_vwap_pct":0.511988,"ema9":8.563594,"ema20":8.54936,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.901602,"dist_to_hod_atr":3.167638,"atr":0.052468,"spread_atr":0.190592,"own_change_pct":0.656609,"rel_strength_pct":{"SPY":0.601876,"IWM":0.551456}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.20837},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b9cb011a22e4","ts":"2026-09-21T14:15:38.940353+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 122.2s, plan says WATCH; stop 8.48, target 8.82 (prev_day_high), R:R 1.96; R:R 1.96 < 2.0 at 8.60; pullback: buy 8.49-8.57 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.48,"target":8.82,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":56.2,"room_to_5d_high_atr":0.73},"price":8.595,"vwap":8.5305,"ext_from_open_pct":-1.43,"max_ext_allowed_pct":3.0,"volume_pace":1.028,"trend":"flat","recent_slope_pct":0.0874,"volatility":"medium"},"price":8.595,"volume":{"bars":45,"last_bar_volume":6836.0,"baseline_avg":15217.65,"bar_rvol":0.449215,"raw_accel":0.631504,"smooth_accel":-0.594168,"accel_momentum":0.042867,"rvol_3bar":[0.219614,0.275059,0.449215],"trend_3bar":"ACCELERATING","projected_rvol":0.900536},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":2000.0,"sell_vol":6880.0,"unclassified_vol":0.0,"imbalance":-0.54955,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":0.263243},"context":{"vwap":8.530127,"price_vs_vwap_pct":0.760519,"ema9":8.563594,"ema20":8.54936,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.659039,"dist_to_hod_atr":2.763583,"atr":0.052468,"spread_atr":0.190592,"own_change_pct":0.656609,"rel_strength_pct":{"SPY":0.601876,"IWM":0.551456}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.246866},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fbc3672fb04b","ts":"2026-09-21T14:15:59.243372+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.07% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.21,"target":9.09,"target_label":"range_20d_high","reward_risk":3.63,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.4,"vwap":8.1872,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":7.344,"trend":"flat","recent_slope_pct":0.1562,"volatility":"unknown"},"price":8.4,"volume":{"bars":45,"last_bar_volume":1803.0,"baseline_avg":5800.75,"bar_rvol":0.310822,"raw_accel":-0.128986,"smooth_accel":-0.604116,"accel_momentum":-0.016183,"rvol_3bar":[0.652208,0.359428,0.310822],"trend_3bar":"DECELERATING","projected_rvol":1.563657},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":7971.0,"sell_vol":735.0,"unclassified_vol":0.0,"imbalance":0.831151,"bid":8.35,"ask":8.44,"spread_pct":1.072067,"quote_size_imbalance":null,"quote_age_s":2.318144},"context":{"vwap":8.184244,"price_vs_vwap_pct":2.636236,"ema9":8.297702,"ema20":8.299209,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.097902,"dist_to_hod_atr":1.606407,"atr":0.112051,"spread_atr":0.803203,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.054732,"IWM":-0.105152}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.25834},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"1f36d7a7ed77","ts":"2026-09-21T14:15:59.243372+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.0134,"target":5.1483,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":61.8,"room_to_5d_high_atr":0.75},"price":5.1001,"vwap":5.0892,"ext_from_open_pct":-1.54,"max_ext_allowed_pct":3.0,"volume_pace":0.415,"trend":"flat","recent_slope_pct":-0.0925,"volatility":"high"},"price":5.1001,"volume":{"bars":45,"last_bar_volume":96930.0,"baseline_avg":46025.7,"bar_rvol":2.105997,"raw_accel":7.423989,"smooth_accel":-0.446736,"accel_momentum":-2.757752,"rvol_3bar":[0.597198,0.190301,2.105997],"trend_3bar":"MIXED","projected_rvol":0.439936},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":3818.0,"sell_vol":3072.0,"unclassified_vol":0.0,"imbalance":0.108273,"bid":5.05,"ask":5.06,"spread_pct":0.197824,"quote_size_imbalance":null,"quote_age_s":1.790544},"context":{"vwap":5.089272,"price_vs_vwap_pct":0.212769,"ema9":5.091897,"ema20":5.088353,"ema_stack":true,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.109405,"dist_to_hod_atr":2.87446,"atr":0.038233,"spread_atr":0.261552,"own_change_pct":-0.560938,"rel_strength_pct":{"SPY":-0.615671,"IWM":-0.666091}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.228022},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c88d8064e724","ts":"2026-09-21T14:15:59.243372+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 142.5s, plan says PASS; stop 8.47, target 8.82 (prev_day_high), R:R 2.19; target 0.24 away > ~0.24 reachable in 339 min","plan":{"state":"PASS","setup":"","stop":8.4727,"target":8.82,"target_label":"prev_day_high","reward_risk":2.19,"pos_in_5d_range_pct":54.3,"room_to_5d_high_atr":0.77},"price":8.5816,"vwap":8.5306,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":3.0,"volume_pace":1.022,"trend":"flat","recent_slope_pct":0.0562,"volatility":"medium"},"price":8.5816,"volume":{"bars":45,"last_bar_volume":6836.0,"baseline_avg":15217.65,"bar_rvol":0.449215,"raw_accel":0.631504,"smooth_accel":-0.594168,"accel_momentum":0.042867,"rvol_3bar":[0.219614,0.275059,0.449215],"trend_3bar":"ACCELERATING","projected_rvol":0.738066},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":1171.0,"sell_vol":3045.0,"unclassified_vol":0.0,"imbalance":-0.444497,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":1.868804},"context":{"vwap":8.530127,"price_vs_vwap_pct":0.603428,"ema9":8.563594,"ema20":8.54936,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.812357,"dist_to_hod_atr":3.018976,"atr":0.052468,"spread_atr":0.190592,"own_change_pct":0.656609,"rel_strength_pct":{"SPY":0.601876,"IWM":0.551456}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.199675},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c661b6601d45","ts":"2026-09-21T14:16:04.316391+00:00","symbol":"BNC","event":"ENTRY","bot":{"state":"BUY","reason":"held 739.2s","plan":{"state":"BUY","setup":"pullback","stop":6.4067,"target":6.95,"target_label":"premarket_high","reward_risk":2.33,"pos_in_5d_range_pct":108.5,"room_to_5d_high_atr":-0.23},"price":6.57,"vwap":6.4186,"ext_from_open_pct":2.82,"max_ext_allowed_pct":4.0,"volume_pace":1.344,"trend":"flat","recent_slope_pct":0.1449,"volatility":"high"},"price":6.57,"volume":{"bars":46,"last_bar_volume":6343.0,"baseline_avg":5496.4,"bar_rvol":1.154028,"raw_accel":1.943387,"smooth_accel":0.938135,"accel_momentum":0.702395,"rvol_3bar":[0.367295,0.397345,1.154028],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":1325.0,"sell_vol":339.0,"unclassified_vol":0.0,"imbalance":0.592548,"bid":6.56,"ask":6.58,"spread_pct":0.304414,"quote_size_imbalance":null,"quote_age_s":3.261931},"context":{"vwap":6.418543,"price_vs_vwap_pct":2.35968,"ema9":6.538745,"ema20":6.501491,"ema_stack":true,"ema_warm":true,"hod":6.6,"dist_to_hod_pct":-0.454545,"dist_to_hod_atr":0.70601,"atr":0.042492,"spread_atr":0.470673,"own_change_pct":0.305344,"rel_strength_pct":{"SPY":0.242808,"IWM":0.27382}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.683817},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c12082b53f20","ts":"2026-09-21T14:16:04.316391+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.05 below VWAP $5.09","plan":{"state":"PASS","setup":"","stop":4.9633,"target":5.1483,"target_label":"premarket_high","reward_risk":1.13,"pos_in_5d_range_pct":54.4,"room_to_5d_high_atr":0.89},"price":5.05,"vwap":5.0892,"ext_from_open_pct":-2.51,"max_ext_allowed_pct":3.0,"volume_pace":0.414,"trend":"flat","recent_slope_pct":-0.1246,"volatility":"high"},"price":5.05,"volume":{"bars":46,"last_bar_volume":19993.0,"baseline_avg":43679.7,"bar_rvol":0.457718,"raw_accel":-0.793738,"smooth_accel":-0.481732,"accel_momentum":-0.034996,"rvol_3bar":[0.190301,2.105997,0.457718],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":3818.0,"sell_vol":2464.0,"unclassified_vol":0.0,"imbalance":0.215536,"bid":5.05,"ask":5.06,"spread_pct":0.197824,"quote_size_imbalance":null,"quote_age_s":2.019008},"context":{"vwap":5.089221,"price_vs_vwap_pct":-0.770669,"ema9":5.093538,"ema20":5.089472,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-3.071017,"dist_to_hod_atr":4.094073,"atr":0.039081,"spread_atr":0.25588,"own_change_pct":-0.193738,"rel_strength_pct":{"SPY":-0.256274,"IWM":-0.225261}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.098655},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bc5907f13b69","ts":"2026-09-21T14:16:04.316391+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 147.6s, plan says WATCH; stop 8.48, target 8.82 (prev_day_high), R:R 1.96; R:R 1.96 < 2.0 at 8.60; pullback: buy 8.49-8.57 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.48,"target":8.82,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":56.2,"room_to_5d_high_atr":0.73},"price":8.595,"vwap":8.5306,"ext_from_open_pct":-1.43,"max_ext_allowed_pct":3.0,"volume_pace":1.02,"trend":"flat","recent_slope_pct":0.0623,"volatility":"medium"},"price":8.595,"volume":{"bars":46,"last_bar_volume":11090.0,"baseline_avg":13567.6,"bar_rvol":0.817388,"raw_accel":0.622294,"smooth_accel":-0.012326,"accel_momentum":0.581842,"rvol_3bar":[0.275059,0.449215,0.817388],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1014.0,"sell_vol":2971.0,"unclassified_vol":0.0,"imbalance":-0.491092,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":3.808443},"context":{"vwap":8.53058,"price_vs_vwap_pct":0.75516,"ema9":8.567195,"ema20":8.552431,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.659039,"dist_to_hod_atr":2.85881,"atr":0.05072,"spread_atr":0.197159,"own_change_pct":0.310929,"rel_strength_pct":{"SPY":0.248393,"IWM":0.279406}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.401413},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e34afe377de0","ts":"2026-09-21T14:16:14.503444+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.9979,"target":9.0844,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":132.2,"room_to_5d_high_atr":-1.02},"price":9.0844,"vwap":9.002,"ext_from_open_pct":0.71,"max_ext_allowed_pct":3.0,"volume_pace":2.066,"trend":"flat","recent_slope_pct":-0.0152,"volatility":"medium"},"price":9.0844,"volume":{"bars":46,"last_bar_volume":13855.0,"baseline_avg":40186.7,"bar_rvol":0.344766,"raw_accel":-0.440044,"smooth_accel":-0.687979,"accel_momentum":-0.063495,"rvol_3bar":[0.279408,0.616469,0.344766],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":801.0,"sell_vol":5262.0,"unclassified_vol":0.0,"imbalance":-0.735774,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":0.070937},"context":{"vwap":9.001903,"price_vs_vwap_pct":0.916436,"ema9":9.074968,"ema20":9.059237,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.498363,"dist_to_hod_atr":1.021783,"atr":0.04453,"spread_atr":0.224568,"own_change_pct":-0.548546,"rel_strength_pct":{"SPY":-0.611082,"IWM":-0.58007}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.25367},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"572787f5a5d4","ts":"2026-09-21T14:16:19.571608+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1401,"target":9.09,"target_label":"range_20d_high","reward_risk":5.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2801,"vwap":8.1901,"ext_from_open_pct":3.37,"max_ext_allowed_pct":4.0,"volume_pace":7.437,"trend":"flat","recent_slope_pct":0.0845,"volatility":"unknown"},"price":8.2801,"volume":{"bars":46,"last_bar_volume":8956.0,"baseline_avg":5563.3,"bar_rvol":1.609836,"raw_accel":3.967277,"smooth_accel":-0.453154,"accel_momentum":0.150962,"rvol_3bar":[0.359428,0.310822,1.609836],"trend_3bar":"MIXED","projected_rvol":5.721018},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2471.0,"sell_vol":8895.0,"unclassified_vol":0.0,"imbalance":-0.565194,"bid":8.3,"ask":8.37,"spread_pct":0.839832,"quote_size_imbalance":null,"quote_age_s":3.333139},"context":{"vwap":8.187241,"price_vs_vwap_pct":1.134197,"ema9":8.318162,"ema20":8.308808,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.495338,"dist_to_hod_atr":2.646342,"atr":0.113326,"spread_atr":0.617686,"own_change_pct":0.961538,"rel_strength_pct":{"SPY":0.899003,"IWM":0.930015}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.90987},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7514e14bc5bf","ts":"2026-09-21T14:16:19.571608+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9738,"target":9.0603,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":130.0,"room_to_5d_high_atr":-0.95},"price":9.0603,"vwap":9.002,"ext_from_open_pct":0.45,"max_ext_allowed_pct":3.0,"volume_pace":2.063,"trend":"flat","recent_slope_pct":-0.0683,"volatility":"medium"},"price":9.0603,"volume":{"bars":46,"last_bar_volume":13855.0,"baseline_avg":40186.7,"bar_rvol":0.344766,"raw_accel":-0.440044,"smooth_accel":-0.687979,"accel_momentum":-0.063495,"rvol_3bar":[0.279408,0.616469,0.344766],"trend_3bar":"MIXED","projected_rvol":0.182017},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":789.0,"sell_vol":4476.0,"unclassified_vol":0.0,"imbalance":-0.700285,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":1.078384},"context":{"vwap":9.001903,"price_vs_vwap_pct":0.648715,"ema9":9.074968,"ema20":9.059237,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.76233,"dist_to_hod_atr":1.56299,"atr":0.04453,"spread_atr":0.224568,"own_change_pct":-0.548546,"rel_strength_pct":{"SPY":-0.611082,"IWM":-0.58007}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.241434},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8574ed97a476","ts":"2026-09-21T14:16:24.639280+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $8.01 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":8.21,"target":9.09,"target_label":"range_20d_high","reward_risk":4.5,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.37,"vwap":8.1907,"ext_from_open_pct":4.49,"max_ext_allowed_pct":4.0,"volume_pace":7.424,"trend":"flat","recent_slope_pct":0.3001,"volatility":"unknown"},"price":8.37,"volume":{"bars":46,"last_bar_volume":8956.0,"baseline_avg":5563.3,"bar_rvol":1.609836,"raw_accel":3.967277,"smooth_accel":-0.453154,"accel_momentum":0.150962,"rvol_3bar":[0.359428,0.310822,1.609836],"trend_3bar":"MIXED","projected_rvol":4.54829},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":2465.0,"sell_vol":8896.0,"unclassified_vol":0.0,"imbalance":-0.566059,"bid":8.3,"ask":8.37,"spread_pct":0.839832,"quote_size_imbalance":null,"quote_age_s":8.400811},"context":{"vwap":8.187241,"price_vs_vwap_pct":2.232247,"ema9":8.318162,"ema20":8.308808,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.447552,"dist_to_hod_atr":1.853057,"atr":0.113326,"spread_atr":0.617686,"own_change_pct":0.961538,"rel_strength_pct":{"SPY":0.899003,"IWM":0.930015}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.911263},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e32a74db3e09","ts":"2026-09-21T14:16:39.915506+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.16,"target":9.09,"target_label":"range_20d_high","reward_risk":5.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3,"vwap":8.1903,"ext_from_open_pct":3.62,"max_ext_allowed_pct":5.0,"volume_pace":7.384,"trend":"flat","recent_slope_pct":0.1323,"volatility":"unknown"},"price":8.3,"volume":{"bars":46,"last_bar_volume":8956.0,"baseline_avg":5563.3,"bar_rvol":1.609836,"raw_accel":3.967277,"smooth_accel":-0.453154,"accel_momentum":0.150962,"rvol_3bar":[0.359428,0.310822,1.609836],"trend_3bar":"MIXED","projected_rvol":2.820024},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1278.0,"sell_vol":7627.0,"unclassified_vol":0.0,"imbalance":-0.71297,"bid":8.3,"ask":8.37,"spread_pct":0.839832,"quote_size_imbalance":null,"quote_age_s":23.677037},"context":{"vwap":8.187241,"price_vs_vwap_pct":1.377258,"ema9":8.318162,"ema20":8.308808,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.263403,"dist_to_hod_atr":2.470743,"atr":0.113326,"spread_atr":0.617686,"own_change_pct":0.961538,"rel_strength_pct":{"SPY":0.899003,"IWM":0.930015}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.147765},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f99288592786","ts":"2026-09-21T14:16:39.915506+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 183.2s, plan says PASS; stop 8.44, target 8.82 (prev_day_high), R:R 2.49; target 0.27 away > ~0.23 reachable in 338 min","plan":{"state":"PASS","setup":"","stop":8.4397,"target":8.82,"target_label":"prev_day_high","reward_risk":2.49,"pos_in_5d_range_pct":49.8,"room_to_5d_high_atr":0.84},"price":8.5486,"vwap":8.5308,"ext_from_open_pct":-1.97,"max_ext_allowed_pct":4.0,"volume_pace":1.014,"trend":"flat","recent_slope_pct":-0.0458,"volatility":"medium"},"price":8.5486,"volume":{"bars":46,"last_bar_volume":11090.0,"baseline_avg":13567.6,"bar_rvol":0.817388,"raw_accel":0.622294,"smooth_accel":-0.012326,"accel_momentum":0.581842,"rvol_3bar":[0.275059,0.449215,0.817388],"trend_3bar":"ACCELERATING","projected_rvol":1.041219},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":6768.0,"sell_vol":1270.0,"unclassified_vol":0.0,"imbalance":0.684001,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":0.59646},"context":{"vwap":8.53058,"price_vs_vwap_pct":0.211234,"ema9":8.567195,"ema20":8.552431,"ema_stack":false,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-2.189931,"dist_to_hod_atr":3.77363,"atr":0.05072,"spread_atr":0.197159,"own_change_pct":0.310929,"rel_strength_pct":{"SPY":0.248393,"IWM":0.279406}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.559095},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"72771c3d3fd5","ts":"2026-09-21T14:16:45.023554+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 188.3s, plan says WATCH; stop 8.48, target 8.82 (prev_day_high), R:R 1.96; R:R 1.96 < 2.0 at 8.60; pullback: buy 8.49-8.57 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.48,"target":8.82,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":56.2,"room_to_5d_high_atr":0.73},"price":8.595,"vwap":8.531,"ext_from_open_pct":-1.43,"max_ext_allowed_pct":4.0,"volume_pace":1.013,"trend":"flat","recent_slope_pct":0.0623,"volatility":"medium"},"price":8.595,"volume":{"bars":46,"last_bar_volume":11090.0,"baseline_avg":13567.6,"bar_rvol":0.817388,"raw_accel":0.622294,"smooth_accel":-0.012326,"accel_momentum":0.581842,"rvol_3bar":[0.275059,0.449215,0.817388],"trend_3bar":"ACCELERATING","projected_rvol":1.057654},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":7782.0,"sell_vol":661.0,"unclassified_vol":0.0,"imbalance":0.843421,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":0.967739},"context":{"vwap":8.53058,"price_vs_vwap_pct":0.75516,"ema9":8.567195,"ema20":8.552431,"ema_stack":true,"ema_warm":true,"hod":8.74,"dist_to_hod_pct":-1.659039,"dist_to_hod_atr":2.85881,"atr":0.05072,"spread_atr":0.197159,"own_change_pct":0.310929,"rel_strength_pct":{"SPY":0.248393,"IWM":0.279406}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.689402},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"010083077375","ts":"2026-09-21T14:16:50.175440+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.44% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.12,"target":9.09,"target_label":"range_20d_high","reward_risk":3.04,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.36,"vwap":8.1907,"ext_from_open_pct":4.37,"max_ext_allowed_pct":5.0,"volume_pace":7.359,"trend":"flat","recent_slope_pct":0.2762,"volatility":"unknown"},"price":8.36,"volume":{"bars":46,"last_bar_volume":8956.0,"baseline_avg":5563.3,"bar_rvol":1.609836,"raw_accel":3.967277,"smooth_accel":-0.453154,"accel_momentum":0.150962,"rvol_3bar":[0.359428,0.310822,1.609836],"trend_3bar":"MIXED","projected_rvol":2.273689},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":179.0,"sell_vol":17.0,"unclassified_vol":0.0,"imbalance":0.826531,"bid":8.3,"ask":8.42,"spread_pct":1.435407,"quote_size_imbalance":null,"quote_age_s":0.912353},"context":{"vwap":8.187241,"price_vs_vwap_pct":2.110106,"ema9":8.318162,"ema20":8.308808,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.564103,"dist_to_hod_atr":1.941298,"atr":0.113326,"spread_atr":1.05889,"own_change_pct":0.961538,"rel_strength_pct":{"SPY":0.899003,"IWM":0.930015}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.330579},"shadow":{"decision":"FAIL","failed":["vas","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d21bc1a306bd","ts":"2026-09-21T14:17:00.391191+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.53 below VWAP $11.53","plan":{"state":"PASS","setup":"","stop":11.3005,"target":12.0,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":112.5,"room_to_5d_high_atr":-0.56},"price":11.525,"vwap":11.5258,"ext_from_open_pct":-1.24,"max_ext_allowed_pct":3.0,"volume_pace":0.481,"trend":"flat","recent_slope_pct":-0.0034,"volatility":"high"},"price":11.525,"volume":{"bars":46,"last_bar_volume":14936.0,"baseline_avg":13572.95,"bar_rvol":1.100424,"raw_accel":2.049408,"smooth_accel":-0.313641,"accel_momentum":-0.370488,"rvol_3bar":[0.484129,0.362655,1.100424],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":644.0,"sell_vol":13389.0,"unclassified_vol":0.0,"imbalance":-0.908216,"bid":11.5,"ask":11.55,"spread_pct":0.433839,"quote_size_imbalance":null,"quote_age_s":0.395516},"context":{"vwap":11.52506,"price_vs_vwap_pct":-0.000517,"ema9":11.568047,"ema20":11.526108,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.797997,"dist_to_hod_atr":3.80221,"atr":0.119667,"spread_atr":0.417825,"own_change_pct":1.44184,"rel_strength_pct":{"SPY":1.34608,"IWM":1.413824}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.999423},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5d4737bbad73","ts":"2026-09-21T14:17:00.391191+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9785,"target":9.065,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-0.97},"price":9.065,"vwap":9.002,"ext_from_open_pct":0.5,"max_ext_allowed_pct":3.0,"volume_pace":2.035,"trend":"flat","recent_slope_pct":-0.0719,"volatility":"medium"},"price":9.065,"volume":{"bars":47,"last_bar_volume":4536.0,"baseline_avg":39784.25,"bar_rvol":0.114015,"raw_accel":-0.672609,"smooth_accel":-0.612055,"accel_momentum":0.075923,"rvol_3bar":[0.616469,0.344766,0.114015],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":775.0,"sell_vol":1517.0,"unclassified_vol":0.0,"imbalance":-0.323735,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":2.339821},"context":{"vwap":9.002037,"price_vs_vwap_pct":0.699431,"ema9":9.072974,"ema20":9.059786,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.710851,"dist_to_hod_atr":1.486607,"atr":0.043656,"spread_atr":0.229061,"own_change_pct":-0.165198,"rel_strength_pct":{"SPY":-0.260959,"IWM":-0.193214}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.036911},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"0a223e0a684c","ts":"2026-09-21T14:17:05.430232+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.43% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.13,"target":9.09,"target_label":"range_20d_high","reward_risk":3.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.37,"vwap":8.1907,"ext_from_open_pct":4.49,"max_ext_allowed_pct":4.0,"volume_pace":7.332,"trend":"flat","recent_slope_pct":0.228,"volatility":"unknown"},"price":8.37,"volume":{"bars":47,"last_bar_volume":11470.0,"baseline_avg":5683.45,"bar_rvol":2.01814,"raw_accel":0.280706,"smooth_accel":1.798565,"accel_momentum":2.251719,"rvol_3bar":[0.310822,1.609836,2.01814],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":760.0,"sell_vol":296.0,"unclassified_vol":0.0,"imbalance":0.439394,"bid":8.31,"ask":8.43,"spread_pct":1.433692,"quote_size_imbalance":null,"quote_age_s":6.81895},"context":{"vwap":8.190712,"price_vs_vwap_pct":2.18892,"ema9":8.318529,"ema20":8.309874,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.447552,"dist_to_hod_atr":1.800212,"atr":0.116653,"spread_atr":1.028692,"own_change_pct":-0.120048,"rel_strength_pct":{"SPY":-0.215809,"IWM":-0.148064}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.886759},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"87ca8d253de4","ts":"2026-09-21T14:17:10.548871+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7896,"target":8.95,"target_label":"premarket_high","reward_risk":0.14,"pos_in_5d_range_pct":135.1,"room_to_5d_high_atr":-0.46},"price":8.93,"vwap":8.8751,"ext_from_open_pct":2.29,"max_ext_allowed_pct":4.0,"volume_pace":1.607,"trend":"flat","recent_slope_pct":0.1387,"volatility":"high"},"price":8.93,"volume":{"bars":47,"last_bar_volume":4278.0,"baseline_avg":6914.6,"bar_rvol":0.618691,"raw_accel":0.850346,"smooth_accel":-0.675656,"accel_momentum":0.060418,"rvol_3bar":[0.874435,0.33516,0.618691],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":9386.0,"sell_vol":1009.0,"unclassified_vol":0.0,"imbalance":0.805868,"bid":8.92,"ask":8.94,"spread_pct":0.223964,"quote_size_imbalance":null,"quote_age_s":0.009967},"context":{"vwap":8.874681,"price_vs_vwap_pct":0.623338,"ema9":8.858826,"ema20":8.858366,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.54355,"dist_to_hod_atr":2.811299,"atr":0.049799,"spread_atr":0.401614,"own_change_pct":0.519284,"rel_strength_pct":{"SPY":0.423523,"IWM":0.491268}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.498583},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8b00710d4ff3","ts":"2026-09-21T14:17:15.683926+00:00","symbol":"SECZ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.3005,"target":12.0,"target_label":"premarket_high","reward_risk":1.92,"pos_in_5d_range_pct":112.9,"room_to_5d_high_atr":-0.57},"price":11.5399,"vwap":11.5258,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.479,"trend":"flat","recent_slope_pct":-0.165,"volatility":"high"},"price":11.5399,"volume":{"bars":47,"last_bar_volume":20466.0,"baseline_avg":13836.7,"bar_rvol":1.47911,"raw_accel":0.370246,"smooth_accel":0.117086,"accel_momentum":0.430727,"rvol_3bar":[0.362655,1.100424,1.47911],"trend_3bar":"ACCELERATING","projected_rvol":0.09898},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":348.0,"sell_vol":11991.0,"unclassified_vol":0.0,"imbalance":-0.943593,"bid":11.5,"ask":11.54,"spread_pct":0.347222,"quote_size_imbalance":null,"quote_age_s":3.680989},"context":{"vwap":11.52579,"price_vs_vwap_pct":0.122417,"ema9":11.559437,"ema20":11.526002,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.673623,"dist_to_hod_atr":3.537428,"atr":0.124412,"spread_atr":0.321511,"own_change_pct":-0.388076,"rel_strength_pct":{"SPY":-0.483836,"IWM":-0.416092}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.395678},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4e892af19ab2","ts":"2026-09-21T14:17:20.795181+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.52 below VWAP $11.53","plan":{"state":"PASS","setup":"","stop":11.3005,"target":12.0,"target_label":"premarket_high","reward_risk":2.19,"pos_in_5d_range_pct":112.4,"room_to_5d_high_atr":-0.55},"price":11.52,"vwap":11.5258,"ext_from_open_pct":-1.29,"max_ext_allowed_pct":3.0,"volume_pace":0.478,"trend":"flat","recent_slope_pct":-0.1994,"volatility":"high"},"price":11.52,"volume":{"bars":47,"last_bar_volume":20466.0,"baseline_avg":13836.7,"bar_rvol":1.47911,"raw_accel":0.370246,"smooth_accel":0.117086,"accel_momentum":0.430727,"rvol_3bar":[0.362655,1.100424,1.47911],"trend_3bar":"ACCELERATING","projected_rvol":0.116356},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":273.0,"sell_vol":12141.0,"unclassified_vol":0.0,"imbalance":-0.956017,"bid":11.5,"ask":11.54,"spread_pct":0.347222,"quote_size_imbalance":null,"quote_age_s":0.242791},"context":{"vwap":11.52579,"price_vs_vwap_pct":-0.050239,"ema9":11.559437,"ema20":11.526002,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.839733,"dist_to_hod_atr":3.69738,"atr":0.124412,"spread_atr":0.321511,"own_change_pct":-0.388076,"rel_strength_pct":{"SPY":-0.483836,"IWM":-0.416092}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.414055},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"de2e4520ab71","ts":"2026-09-21T14:17:20.795181+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7519,"target":5.85,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.81,"vwap":5.7122,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":2.079,"trend":"flat","recent_slope_pct":-0.0946,"volatility":"unknown"},"price":5.81,"volume":{"bars":47,"last_bar_volume":54528.0,"baseline_avg":165506.85,"bar_rvol":0.329461,"raw_accel":0.317843,"smooth_accel":-0.4797,"accel_momentum":0.067892,"rvol_3bar":[0.496729,0.21685,0.329461],"trend_3bar":"MIXED","projected_rvol":0.76062},"flow":{"window_s":30,"trades":145,"trade_rate":4.833333,"buy_vol":45933.0,"sell_vol":7009.0,"unclassified_vol":0.0,"imbalance":0.73522,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":0.118275},"context":{"vwap":5.711632,"price_vs_vwap_pct":1.722239,"ema9":5.820061,"ema20":5.803045,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.683761,"dist_to_hod_atr":1.163426,"atr":0.034381,"spread_atr":0.290856,"own_change_pct":-0.343053,"rel_strength_pct":{"SPY":-0.438814,"IWM":-0.371069}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.242226},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ab5a35303d38","ts":"2026-09-21T14:17:25.948605+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":5.7626,"target":6.07,"target_label":"range_20d_high","reward_risk":4.28,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.8208,"vwap":5.7123,"ext_from_open_pct":5.07,"max_ext_allowed_pct":4.0,"volume_pace":2.075,"trend":"flat","recent_slope_pct":-0.0574,"volatility":"unknown"},"price":5.8208,"volume":{"bars":47,"last_bar_volume":54528.0,"baseline_avg":165506.85,"bar_rvol":0.329461,"raw_accel":0.317843,"smooth_accel":-0.4797,"accel_momentum":0.067892,"rvol_3bar":[0.496729,0.21685,0.329461],"trend_3bar":"MIXED","projected_rvol":0.626115},"flow":{"window_s":30,"trades":132,"trade_rate":4.4,"buy_vol":39061.0,"sell_vol":6252.0,"unclassified_vol":0.0,"imbalance":0.724053,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":0.135518},"context":{"vwap":5.711632,"price_vs_vwap_pct":1.911327,"ema9":5.820061,"ema20":5.803045,"ema_stack":true,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.499145,"dist_to_hod_atr":0.849301,"atr":0.034381,"spread_atr":0.290856,"own_change_pct":-0.343053,"rel_strength_pct":{"SPY":-0.438814,"IWM":-0.371069}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.238547},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a75583b50dfb","ts":"2026-09-21T14:17:31.086854+00:00","symbol":"SECZ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.3005,"target":12.0,"target_label":"premarket_high","reward_risk":1.8,"pos_in_5d_range_pct":113.2,"room_to_5d_high_atr":-0.59},"price":11.55,"vwap":11.5259,"ext_from_open_pct":-1.03,"max_ext_allowed_pct":4.0,"volume_pace":0.478,"trend":"flat","recent_slope_pct":-0.1475,"volatility":"high"},"price":11.55,"volume":{"bars":47,"last_bar_volume":20466.0,"baseline_avg":13836.7,"bar_rvol":1.47911,"raw_accel":0.370246,"smooth_accel":0.117086,"accel_momentum":0.430727,"rvol_3bar":[0.362655,1.100424,1.47911],"trend_3bar":"ACCELERATING","projected_rvol":0.664808},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":3930.0,"sell_vol":836.0,"unclassified_vol":0.0,"imbalance":0.649182,"bid":11.52,"ask":11.57,"spread_pct":0.433088,"quote_size_imbalance":null,"quote_age_s":0.171581},"context":{"vwap":11.52579,"price_vs_vwap_pct":0.210046,"ema9":11.559437,"ema20":11.526002,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.589316,"dist_to_hod_atr":3.456246,"atr":0.124412,"spread_atr":0.401889,"own_change_pct":-0.388076,"rel_strength_pct":{"SPY":-0.483836,"IWM":-0.416092}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.960211},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a3bfd7897a13","ts":"2026-09-21T14:17:51.560804+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9635,"target":9.05,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":129.1,"room_to_5d_high_atr":-0.92},"price":9.05,"vwap":9.0021,"ext_from_open_pct":0.33,"max_ext_allowed_pct":3.0,"volume_pace":2.002,"trend":"flat","recent_slope_pct":-0.105,"volatility":"medium"},"price":9.05,"volume":{"bars":47,"last_bar_volume":4536.0,"baseline_avg":39784.25,"bar_rvol":0.114015,"raw_accel":-0.672609,"smooth_accel":-0.612055,"accel_momentum":0.075923,"rvol_3bar":[0.616469,0.344766,0.114015],"trend_3bar":"DECELERATING","projected_rvol":0.125042},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":783.0,"sell_vol":1964.0,"unclassified_vol":0.0,"imbalance":-0.429924,"bid":9.05,"ask":9.06,"spread_pct":0.110436,"quote_size_imbalance":null,"quote_age_s":0.593732},"context":{"vwap":9.002037,"price_vs_vwap_pct":0.532802,"ema9":9.072974,"ema20":9.059786,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.875146,"dist_to_hod_atr":1.830199,"atr":0.043656,"spread_atr":0.229061,"own_change_pct":-0.165198,"rel_strength_pct":{"SPY":-0.260959,"IWM":-0.193214}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.049018},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"4ff66579fc25","ts":"2026-09-21T14:18:01.880593+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9685,"target":9.055,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":129.5,"room_to_5d_high_atr":-0.94},"price":9.055,"vwap":9.0026,"ext_from_open_pct":0.39,"max_ext_allowed_pct":3.0,"volume_pace":2.008,"trend":"flat","recent_slope_pct":-0.0331,"volatility":"medium"},"price":9.055,"volume":{"bars":48,"last_bar_volume":20332.0,"baseline_avg":38791.05,"bar_rvol":0.524142,"raw_accel":1.096566,"smooth_accel":-0.500625,"accel_momentum":0.11143,"rvol_3bar":[0.344766,0.114015,0.524142],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":869.0,"sell_vol":17400.0,"unclassified_vol":0.0,"imbalance":-0.904866,"bid":9.05,"ask":9.06,"spread_pct":0.110436,"quote_size_imbalance":null,"quote_age_s":3.440345},"context":{"vwap":9.002577,"price_vs_vwap_pct":0.582316,"ema9":9.069379,"ema20":9.05933,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.820381,"dist_to_hod_atr":1.716951,"atr":0.043624,"spread_atr":0.229232,"own_change_pct":-0.220386,"rel_strength_pct":{"SPY":-0.308314,"IWM":-0.297449}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.474278},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e0dafcaa6ae9","ts":"2026-09-21T14:18:01.880593+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 458.9s, plan says PASS; stop 8.47, target 8.76 (premarket_high), R:R 1.84; R:R 1.84 < 2.0 at 8.57; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.4702,"target":8.76,"target_label":"premarket_high","reward_risk":1.84,"pos_in_5d_range_pct":117.3,"room_to_5d_high_atr":-0.54},"price":8.5721,"vwap":8.534,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":1.336,"trend":"flat","recent_slope_pct":0.0098,"volatility":"medium"},"price":8.5721,"volume":{"bars":48,"last_bar_volume":3887.0,"baseline_avg":4296.6,"bar_rvol":0.904669,"raw_accel":1.38174,"smooth_accel":1.784107,"accel_momentum":1.378039,"rvol_3bar":[2.756947,0.376936,0.904669],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":356.0,"sell_vol":202.0,"unclassified_vol":0.0,"imbalance":0.275986,"bid":8.6,"ask":8.62,"spread_pct":0.232288,"quote_size_imbalance":null,"quote_age_s":0.662158},"context":{"vwap":8.533992,"price_vs_vwap_pct":0.446542,"ema9":8.580457,"ema20":8.555627,"ema_stack":false,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-0.900578,"dist_to_hod_atr":1.717971,"atr":0.045344,"spread_atr":0.441071,"own_change_pct":0.223646,"rel_strength_pct":{"SPY":0.135718,"IWM":0.146583}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.249676},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a07c5627792b","ts":"2026-09-21T14:18:07.146994+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 464.1s, plan says WATCH; stop 8.50, target 8.76 (premarket_high), R:R 1.46; R:R 1.46 < 2.0 at 8.61; breakout: 1-min close > 8.63 on >= 10092 sh","plan":{"state":"WATCH","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":1.46,"pos_in_5d_range_pct":119.9,"room_to_5d_high_atr":-0.63},"price":8.6056,"vwap":8.534,"ext_from_open_pct":-0.17,"max_ext_allowed_pct":3.0,"volume_pace":1.334,"trend":"flat","recent_slope_pct":0.0877,"volatility":"medium"},"price":8.6056,"volume":{"bars":48,"last_bar_volume":3887.0,"baseline_avg":4296.6,"bar_rvol":0.904669,"raw_accel":1.38174,"smooth_accel":1.784107,"accel_momentum":1.378039,"rvol_3bar":[2.756947,0.376936,0.904669],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":336.0,"sell_vol":206.0,"unclassified_vol":0.0,"imbalance":0.239852,"bid":8.6,"ask":8.61,"spread_pct":0.116212,"quote_size_imbalance":null,"quote_age_s":1.192357},"context":{"vwap":8.533992,"price_vs_vwap_pct":0.839089,"ema9":8.580457,"ema20":8.555627,"ema_stack":true,"ema_warm":true,"hod":8.65,"dist_to_hod_pct":-0.513295,"dist_to_hod_atr":0.979178,"atr":0.045344,"spread_atr":0.220535,"own_change_pct":0.223646,"rel_strength_pct":{"SPY":0.135718,"IWM":0.146583}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.216987},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5a284f36dbf6","ts":"2026-09-21T14:18:17.514065+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.6s / 18s","plan":{"state":"WATCH","setup":"","stop":9.004,"target":9.0905,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":132.8,"room_to_5d_high_atr":-1.04},"price":9.0905,"vwap":9.0035,"ext_from_open_pct":0.78,"max_ext_allowed_pct":4.0,"volume_pace":2.022,"trend":"flat","recent_slope_pct":0.0452,"volatility":"medium"},"price":9.0905,"volume":{"bars":48,"last_bar_volume":20332.0,"baseline_avg":38791.05,"bar_rvol":0.524142,"raw_accel":1.096566,"smooth_accel":-0.500625,"accel_momentum":0.11143,"rvol_3bar":[0.344766,0.114015,0.524142],"trend_3bar":"MIXED","projected_rvol":2.645465},"flow":{"window_s":30,"trades":178,"trade_rate":5.933333,"buy_vol":26128.0,"sell_vol":20581.0,"unclassified_vol":0.0,"imbalance":0.118757,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.952176},"context":{"vwap":9.002577,"price_vs_vwap_pct":0.976647,"ema9":9.069379,"ema20":9.05933,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.431549,"dist_to_hod_atr":0.903176,"atr":0.043624,"spread_atr":0.229232,"own_change_pct":-0.220386,"rel_strength_pct":{"SPY":-0.308314,"IWM":-0.297449}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.062245},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5e24c80fd6f5","ts":"2026-09-21T14:18:22.722636+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.8s, plan says PASS; stop 8.99, target 9.07 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.07; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9885,"target":9.075,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.075,"vwap":9.0035,"ext_from_open_pct":0.61,"max_ext_allowed_pct":4.0,"volume_pace":2.021,"trend":"flat","recent_slope_pct":0.011,"volatility":"medium"},"price":9.075,"volume":{"bars":48,"last_bar_volume":20332.0,"baseline_avg":38791.05,"bar_rvol":0.524142,"raw_accel":1.096566,"smooth_accel":-0.500625,"accel_momentum":0.11143,"rvol_3bar":[0.344766,0.114015,0.524142],"trend_3bar":"MIXED","projected_rvol":2.238169},"flow":{"window_s":30,"trades":178,"trade_rate":5.933333,"buy_vol":27583.0,"sell_vol":21303.0,"unclassified_vol":0.0,"imbalance":0.128462,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.584576},"context":{"vwap":9.002577,"price_vs_vwap_pct":0.804475,"ema9":9.069379,"ema20":9.05933,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.601321,"dist_to_hod_atr":1.258486,"atr":0.043624,"spread_atr":0.229232,"own_change_pct":-0.220386,"rel_strength_pct":{"SPY":-0.308314,"IWM":-0.297449}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.067332},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ef2b4a74bf72","ts":"2026-09-21T14:18:43.323215+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7519,"target":5.85,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.81,"vwap":5.7154,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":2.081,"trend":"flat","recent_slope_pct":0.0148,"volatility":"unknown"},"price":5.81,"volume":{"bars":48,"last_bar_volume":78443.0,"baseline_avg":154699.5,"bar_rvol":0.507067,"raw_accel":0.438582,"smooth_accel":-0.396796,"accel_momentum":0.082904,"rvol_3bar":[0.21685,0.329461,0.507067],"trend_3bar":"ACCELERATING","projected_rvol":1.730284},"flow":{"window_s":30,"trades":144,"trade_rate":4.8,"buy_vol":104930.0,"sell_vol":34884.0,"unclassified_vol":0.0,"imbalance":0.500994,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":1.053678},"context":{"vwap":5.712791,"price_vs_vwap_pct":1.701596,"ema9":5.821769,"ema20":5.805479,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.683761,"dist_to_hod_atr":1.200542,"atr":0.033318,"spread_atr":0.300136,"own_change_pct":-0.195205,"rel_strength_pct":{"SPY":-0.283133,"IWM":-0.272269}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.254038},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fff743274501","ts":"2026-09-21T14:18:48.413931+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":5.7569,"target":6.07,"target_label":"range_20d_high","reward_risk":4.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.815,"vwap":5.7154,"ext_from_open_pct":4.96,"max_ext_allowed_pct":4.0,"volume_pace":2.078,"trend":"flat","recent_slope_pct":0.032,"volatility":"unknown"},"price":5.815,"volume":{"bars":48,"last_bar_volume":78443.0,"baseline_avg":154699.5,"bar_rvol":0.507067,"raw_accel":0.438582,"smooth_accel":-0.396796,"accel_momentum":0.082904,"rvol_3bar":[0.21685,0.329461,0.507067],"trend_3bar":"ACCELERATING","projected_rvol":1.551189},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":98595.0,"sell_vol":35029.0,"unclassified_vol":0.0,"imbalance":0.475708,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":0.080057},"context":{"vwap":5.712791,"price_vs_vwap_pct":1.789118,"ema9":5.821769,"ema20":5.805479,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.598291,"dist_to_hod_atr":1.050474,"atr":0.033318,"spread_atr":0.300136,"own_change_pct":-0.195205,"rel_strength_pct":{"SPY":-0.283133,"IWM":-0.272269}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.241216},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a74e7aaaf05a","ts":"2026-09-21T14:18:53.551502+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7519,"target":5.85,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.81,"vwap":5.7154,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":2.074,"trend":"flat","recent_slope_pct":0.0148,"volatility":"unknown"},"price":5.81,"volume":{"bars":48,"last_bar_volume":78443.0,"baseline_avg":154699.5,"bar_rvol":0.507067,"raw_accel":0.438582,"smooth_accel":-0.396796,"accel_momentum":0.082904,"rvol_3bar":[0.21685,0.329461,0.507067],"trend_3bar":"ACCELERATING","projected_rvol":1.405168},"flow":{"window_s":30,"trades":124,"trade_rate":4.133333,"buy_vol":98410.0,"sell_vol":30577.0,"unclassified_vol":0.0,"imbalance":0.52589,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":0.305469},"context":{"vwap":5.712791,"price_vs_vwap_pct":1.701596,"ema9":5.821769,"ema20":5.805479,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.683761,"dist_to_hod_atr":1.200542,"atr":0.033318,"spread_atr":0.300136,"own_change_pct":-0.195205,"rel_strength_pct":{"SPY":-0.283133,"IWM":-0.272269}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.266662},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d9bf57683dbd","ts":"2026-09-21T14:18:58.703215+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 56.8s, plan says WATCH; stop 9.00, target 9.09 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.09; breakout: 1-min close > 9.14 on >= 75399 sh","plan":{"state":"WATCH","setup":"","stop":9.0039,"target":9.0904,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":132.8,"room_to_5d_high_atr":-1.04},"price":9.0904,"vwap":9.0037,"ext_from_open_pct":0.78,"max_ext_allowed_pct":3.0,"volume_pace":1.999,"trend":"flat","recent_slope_pct":0.045,"volatility":"medium"},"price":9.0904,"volume":{"bars":48,"last_bar_volume":20332.0,"baseline_avg":38791.05,"bar_rvol":0.524142,"raw_accel":1.096566,"smooth_accel":-0.500625,"accel_momentum":0.11143,"rvol_3bar":[0.344766,0.114015,0.524142],"trend_3bar":"MIXED","projected_rvol":0.956349},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1009.0,"sell_vol":460.0,"unclassified_vol":0.0,"imbalance":0.373724,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":5.96949},"context":{"vwap":9.002577,"price_vs_vwap_pct":0.975537,"ema9":9.069379,"ema20":9.05933,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.432644,"dist_to_hod_atr":0.905468,"atr":0.043624,"spread_atr":0.229232,"own_change_pct":-0.220386,"rel_strength_pct":{"SPY":-0.308314,"IWM":-0.297449}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.195884},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4027b7ac04e9","ts":"2026-09-21T14:19:03.870037+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 62.0s, plan says PASS; stop 8.99, target 9.07 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.07; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9885,"target":9.075,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.075,"vwap":9.0037,"ext_from_open_pct":0.61,"max_ext_allowed_pct":4.0,"volume_pace":1.996,"trend":"flat","recent_slope_pct":0.0501,"volatility":"medium"},"price":9.075,"volume":{"bars":49,"last_bar_volume":36296.0,"baseline_avg":39142.2,"bar_rvol":0.927286,"raw_accel":0.785166,"smooth_accel":0.224897,"accel_momentum":0.725522,"rvol_3bar":[0.114015,0.524142,0.927286],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1009.0,"sell_vol":565.0,"unclassified_vol":0.0,"imbalance":0.282084,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.985135},"context":{"vwap":9.00369,"price_vs_vwap_pct":0.792004,"ema9":9.073584,"ema20":9.062289,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.601321,"dist_to_hod_atr":1.269763,"atr":0.043236,"spread_atr":0.231286,"own_change_pct":-0.079142,"rel_strength_pct":{"SPY":-0.152071,"IWM":-0.166651}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.261572},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6093f3bbaf00","ts":"2026-09-21T14:19:09.103327+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":5.7576,"target":6.07,"target_label":"range_20d_high","reward_risk":4.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.8158,"vwap":5.7154,"ext_from_open_pct":4.98,"max_ext_allowed_pct":4.0,"volume_pace":2.064,"trend":"positive","recent_slope_pct":0.0199,"volatility":"unknown"},"price":5.8158,"volume":{"bars":49,"last_bar_volume":194392.0,"baseline_avg":141423.7,"bar_rvol":1.374536,"raw_accel":1.478131,"smooth_accel":0.857853,"accel_momentum":1.254649,"rvol_3bar":[0.329461,0.507067,1.374536],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":2577.0,"sell_vol":658.0,"unclassified_vol":0.0,"imbalance":0.593199,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":0.021389},"context":{"vwap":5.715411,"price_vs_vwap_pct":1.756469,"ema9":5.819415,"ema20":5.805909,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.584615,"dist_to_hod_atr":1.056633,"atr":0.032367,"spread_atr":0.308957,"own_change_pct":-0.428449,"rel_strength_pct":{"SPY":-0.501378,"IWM":-0.515958}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.815374},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f982d3f51019","ts":"2026-09-21T14:19:24.369349+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.07% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.1801,"target":9.09,"target_label":"range_20d_high","reward_risk":4.06,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3601,"vwap":8.1925,"ext_from_open_pct":4.37,"max_ext_allowed_pct":4.0,"volume_pace":7.058,"trend":"flat","recent_slope_pct":-0.0117,"volatility":"unknown"},"price":8.3601,"volume":{"bars":49,"last_bar_volume":110.0,"baseline_avg":6243.0,"bar_rvol":0.01762,"raw_accel":-0.97862,"smooth_accel":0.303687,"accel_momentum":-1.962503,"rvol_3bar":[2.01814,0.824097,0.01762],"trend_3bar":"DECELERATING","projected_rvol":0.007888},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":67.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.970588,"bid":8.35,"ask":8.44,"spread_pct":1.072067,"quote_size_imbalance":null,"quote_age_s":47.701709},"context":{"vwap":8.192516,"price_vs_vwap_pct":2.045575,"ema9":8.341027,"ema20":8.322669,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.562937,"dist_to_hod_atr":1.991567,"atr":0.110416,"spread_atr":0.815103,"own_change_pct":1.206273,"rel_strength_pct":{"SPY":1.133344,"IWM":1.118763}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.017102},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"1c46fad65f5d","ts":"2026-09-21T14:19:29.518440+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.07% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.215,"target":9.09,"target_label":"range_20d_high","reward_risk":3.86,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.395,"vwap":8.1925,"ext_from_open_pct":4.81,"max_ext_allowed_pct":4.0,"volume_pace":7.046,"trend":"flat","recent_slope_pct":0.0716,"volatility":"unknown"},"price":8.395,"volume":{"bars":49,"last_bar_volume":110.0,"baseline_avg":6243.0,"bar_rvol":0.01762,"raw_accel":-0.97862,"smooth_accel":0.303687,"accel_momentum":-1.962503,"rvol_3bar":[2.01814,0.824097,0.01762],"trend_3bar":"DECELERATING","projected_rvol":0.016605},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":48.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.882353,"bid":8.35,"ask":8.44,"spread_pct":1.072067,"quote_size_imbalance":null,"quote_age_s":52.8508},"context":{"vwap":8.192516,"price_vs_vwap_pct":2.471574,"ema9":8.341027,"ema20":8.322669,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.156177,"dist_to_hod_atr":1.675489,"atr":0.110416,"spread_atr":0.815103,"own_change_pct":1.206273,"rel_strength_pct":{"SPY":1.133344,"IWM":1.118763}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.015547},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"c9e073519e52","ts":"2026-09-21T14:19:34.595312+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.07% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.17,"target":9.09,"target_label":"range_20d_high","reward_risk":4.11,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.35,"vwap":8.1925,"ext_from_open_pct":4.24,"max_ext_allowed_pct":4.0,"volume_pace":7.034,"trend":"flat","recent_slope_pct":-0.0359,"volatility":"unknown"},"price":8.35,"volume":{"bars":49,"last_bar_volume":110.0,"baseline_avg":6243.0,"bar_rvol":0.01762,"raw_accel":-0.97862,"smooth_accel":0.303687,"accel_momentum":-1.962503,"rvol_3bar":[2.01814,0.824097,0.01762],"trend_3bar":"DECELERATING","projected_rvol":0.014446},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":42.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.826087,"bid":8.35,"ask":8.44,"spread_pct":1.072067,"quote_size_imbalance":null,"quote_age_s":57.927672},"context":{"vwap":8.192516,"price_vs_vwap_pct":1.922292,"ema9":8.341027,"ema20":8.322669,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.680653,"dist_to_hod_atr":2.08304,"atr":0.110416,"spread_atr":0.815103,"own_change_pct":1.206273,"rel_strength_pct":{"SPY":1.133344,"IWM":1.118763}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.014555},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"190b580997d6","ts":"2026-09-21T14:19:34.595312+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7296,"target":8.95,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.36},"price":8.87,"vwap":8.8756,"ext_from_open_pct":1.6,"max_ext_allowed_pct":3.0,"volume_pace":1.554,"trend":"flat","recent_slope_pct":0.0608,"volatility":"high"},"price":8.87,"volume":{"bars":49,"last_bar_volume":11738.0,"baseline_avg":7017.7,"bar_rvol":1.672628,"raw_accel":0.013644,"smooth_accel":1.485902,"accel_momentum":1.873561,"rvol_3bar":[0.618691,1.651007,1.672628],"trend_3bar":"ACCELERATING","projected_rvol":0.205866},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":584.0,"sell_vol":248.0,"unclassified_vol":0.0,"imbalance":0.403846,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":1.125519},"context":{"vwap":8.875639,"price_vs_vwap_pct":-0.063539,"ema9":8.877449,"ema20":8.867978,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.205072,"dist_to_hod_atr":3.942021,"atr":0.050735,"spread_atr":0.591303,"own_change_pct":0.213964,"rel_strength_pct":{"SPY":0.141035,"IWM":0.126455}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.675484},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2a7aeaf74332","ts":"2026-09-21T14:19:39.739533+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.07% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.2519,"target":9.09,"target_label":"range_20d_high","reward_risk":3.66,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.4319,"vwap":8.1927,"ext_from_open_pct":5.27,"max_ext_allowed_pct":5.0,"volume_pace":7.028,"trend":"flat","recent_slope_pct":0.1596,"volatility":"unknown"},"price":8.4319,"volume":{"bars":49,"last_bar_volume":110.0,"baseline_avg":6243.0,"bar_rvol":0.01762,"raw_accel":-0.97862,"smooth_accel":0.303687,"accel_momentum":-1.962503,"rvol_3bar":[2.01814,0.824097,0.01762],"trend_3bar":"DECELERATING","projected_rvol":0.133498},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":542.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.985348,"bid":8.35,"ask":8.44,"spread_pct":1.072067,"quote_size_imbalance":null,"quote_age_s":2.538218},"context":{"vwap":8.192516,"price_vs_vwap_pct":2.921985,"ema9":8.341027,"ema20":8.322669,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-1.726107,"dist_to_hod_atr":1.341297,"atr":0.110416,"spread_atr":0.815103,"own_change_pct":1.206273,"rel_strength_pct":{"SPY":1.133344,"IWM":1.118763}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.017362},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"50e29d9316ca","ts":"2026-09-21T14:19:39.739533+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7396,"target":8.95,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":128.4,"room_to_5d_high_atr":-0.37},"price":8.88,"vwap":8.8756,"ext_from_open_pct":1.72,"max_ext_allowed_pct":3.0,"volume_pace":1.552,"trend":"flat","recent_slope_pct":0.0833,"volatility":"high"},"price":8.88,"volume":{"bars":49,"last_bar_volume":11738.0,"baseline_avg":7017.7,"bar_rvol":1.672628,"raw_accel":0.013644,"smooth_accel":1.485902,"accel_momentum":1.873561,"rvol_3bar":[0.618691,1.651007,1.672628],"trend_3bar":"ACCELERATING","projected_rvol":0.20568},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":527.0,"sell_vol":371.0,"unclassified_vol":0.0,"imbalance":0.173719,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":0.012908},"context":{"vwap":8.875639,"price_vs_vwap_pct":0.049129,"ema9":8.877449,"ema20":8.867978,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.094818,"dist_to_hod_atr":3.74492,"atr":0.050735,"spread_atr":0.591303,"own_change_pct":0.213964,"rel_strength_pct":{"SPY":0.141035,"IWM":0.126455}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.290568},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0cb5068065f8","ts":"2026-09-21T14:19:39.739533+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.56,"target":10.86,"target_label":"prev_day_high","reward_risk":0.5,"pos_in_5d_range_pct":91.7,"room_to_5d_high_atr":0.19},"price":10.76,"vwap":10.7389,"ext_from_open_pct":-2.0,"max_ext_allowed_pct":3.0,"volume_pace":0.971,"trend":"flat","recent_slope_pct":0.0993,"volatility":"medium"},"price":10.76,"volume":{"bars":49,"last_bar_volume":137697.0,"baseline_avg":276956.25,"bar_rvol":0.49718,"raw_accel":0.013223,"smooth_accel":-0.285669,"accel_momentum":-0.146522,"rvol_3bar":[0.524908,0.476518,0.49718],"trend_3bar":"MIXED","projected_rvol":0.671245},"flow":{"window_s":30,"trades":181,"trade_rate":6.033333,"buy_vol":81227.0,"sell_vol":35934.0,"unclassified_vol":0.0,"imbalance":0.386588,"bid":10.76,"ask":10.77,"spread_pct":0.092894,"quote_size_imbalance":null,"quote_age_s":0.052206},"context":{"vwap":10.738807,"price_vs_vwap_pct":0.197351,"ema9":10.721965,"ema20":10.705174,"ema_stack":true,"ema_warm":true,"hod":11.0,"dist_to_hod_pct":-2.181818,"dist_to_hod_atr":4.468799,"atr":0.053706,"spread_atr":0.1862,"own_change_pct":0.298424,"rel_strength_pct":{"SPY":0.225495,"IWM":0.210915}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.192204},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b139e2ea2e52","ts":"2026-09-21T14:19:54.955564+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $8.01 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":8.19,"target":9.09,"target_label":"range_20d_high","reward_risk":4.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.35,"vwap":8.1929,"ext_from_open_pct":4.24,"max_ext_allowed_pct":4.0,"volume_pace":6.999,"trend":"flat","recent_slope_pct":-0.0359,"volatility":"unknown"},"price":8.35,"volume":{"bars":49,"last_bar_volume":110.0,"baseline_avg":6243.0,"bar_rvol":0.01762,"raw_accel":-0.97862,"smooth_accel":0.303687,"accel_momentum":-1.962503,"rvol_3bar":[2.01814,0.824097,0.01762],"trend_3bar":"DECELERATING","projected_rvol":0.179604},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":565.0,"sell_vol":442.0,"unclassified_vol":0.0,"imbalance":0.122145,"bid":8.32,"ask":8.4,"spread_pct":0.956938,"quote_size_imbalance":null,"quote_age_s":2.059043},"context":{"vwap":8.192516,"price_vs_vwap_pct":1.922292,"ema9":8.341027,"ema20":8.322669,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.680653,"dist_to_hod_atr":2.08304,"atr":0.110416,"spread_atr":0.724536,"own_change_pct":1.206273,"rel_strength_pct":{"SPY":1.133344,"IWM":1.118763}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.002152},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b50c3aacbb1e","ts":"2026-09-21T14:20:00.069454+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 118.2s, plan says WATCH; stop 8.99, target 9.07 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.07; pullback: buy 9.05-9.07 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.9885,"target":9.075,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.075,"vwap":9.004,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":1.966,"trend":"flat","recent_slope_pct":0.034,"volatility":"medium"},"price":9.075,"volume":{"bars":50,"last_bar_volume":9810.0,"baseline_avg":40362.0,"bar_rvol":0.24305,"raw_accel":-0.729722,"smooth_accel":0.54027,"accel_momentum":0.315373,"rvol_3bar":[0.524142,0.927286,0.24305],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1251.0,"sell_vol":934.0,"unclassified_vol":0.0,"imbalance":0.14508,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":1.31254},"context":{"vwap":9.003963,"price_vs_vwap_pct":0.78895,"ema9":9.072027,"ema20":9.062623,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.601321,"dist_to_hod_atr":1.297273,"atr":0.04232,"spread_atr":0.236297,"own_change_pct":0.008825,"rel_strength_pct":{"SPY":-0.073229,"IWM":-0.008682}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.035262},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7e56a59fee22","ts":"2026-09-21T14:20:05.239272+00:00","symbol":"KRRO","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.07,"target":10.56,"target_label":"ceiling","reward_risk":2.06,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.23,"vwap":10.2241,"ext_from_open_pct":1.09,"max_ext_allowed_pct":4.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":0.1374,"volatility":"unknown"},"price":10.23,"volume":{"bars":48,"last_bar_volume":126.0,"baseline_avg":809.05,"bar_rvol":0.155738,"raw_accel":-0.80938,"smooth_accel":3.237875,"accel_momentum":3.651869,"rvol_3bar":[1.066287,0.80792,0.155738],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":1.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":10.15,"ask":10.23,"spread_pct":0.785083,"quote_size_imbalance":null,"quote_age_s":185.610463},"context":{"vwap":10.224109,"price_vs_vwap_pct":0.057621,"ema9":10.156134,"ema20":10.142712,"ema_stack":true,"ema_warm":true,"hod":10.77,"dist_to_hod_pct":-5.013928,"dist_to_hod_atr":5.843437,"atr":0.092411,"spread_atr":0.865694,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.082054,"IWM":-0.017507}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.155738},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"068b1e8a3c4a","ts":"2026-09-21T14:20:05.239272+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 582.2s, plan says PASS; stop 8.50, target 8.76 (premarket_high), R:R 0.73; R:R 0.73 < 2.0 at 8.65; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":123.4,"room_to_5d_high_atr":-0.74},"price":8.65,"vwap":8.5361,"ext_from_open_pct":0.35,"max_ext_allowed_pct":3.0,"volume_pace":1.309,"trend":"flat","recent_slope_pct":0.1575,"volatility":"medium"},"price":8.65,"volume":{"bars":50,"last_bar_volume":5468.0,"baseline_avg":3836.0,"bar_rvol":1.425443,"raw_accel":4.308738,"smooth_accel":-0.173103,"accel_momentum":0.323089,"rvol_3bar":[0.904669,0.234897,1.425443],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":271.0,"sell_vol":709.0,"unclassified_vol":0.0,"imbalance":-0.446939,"bid":8.64,"ask":8.66,"spread_pct":0.231214,"quote_size_imbalance":null,"quote_age_s":0.649397},"context":{"vwap":8.535895,"price_vs_vwap_pct":1.336761,"ema9":8.599893,"ema20":8.569731,"ema_stack":true,"ema_warm":true,"hod":8.6555,"dist_to_hod_pct":-0.063543,"dist_to_hod_atr":0.12033,"atr":0.045707,"spread_atr":0.437565,"own_change_pct":0.874636,"rel_strength_pct":{"SPY":0.792582,"IWM":0.857129}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.637086},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a164c06838e3","ts":"2026-09-21T14:20:05.239272+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":11.05,"target":12.0486,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.37,"vwap":11.3608,"ext_from_open_pct":-1.98,"max_ext_allowed_pct":3.0,"volume_pace":1.191,"trend":"flat","recent_slope_pct":0.1145,"volatility":"unknown"},"price":11.37,"volume":{"bars":50,"last_bar_volume":145.0,"baseline_avg":779.5,"bar_rvol":0.186017,"raw_accel":-0.255933,"smooth_accel":-0.53271,"accel_momentum":0.25127,"rvol_3bar":[0.014892,0.036942,0.186017],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":109.0,"sell_vol":244.0,"unclassified_vol":0.0,"imbalance":-0.382436,"bid":11.29,"ask":11.45,"spread_pct":1.407212,"quote_size_imbalance":null,"quote_age_s":23.764436},"context":{"vwap":11.360874,"price_vs_vwap_pct":0.080333,"ema9":11.308684,"ema20":11.263355,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.853556,"dist_to_hod_atr":6.086864,"atr":0.095287,"spread_atr":1.679135,"own_change_pct":0.620567,"rel_strength_pct":{"SPY":0.538514,"IWM":0.60306}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.07114},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"43a7ec39c943","ts":"2026-09-21T14:20:15.558500+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7296,"target":8.95,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.36},"price":8.87,"vwap":8.8756,"ext_from_open_pct":1.6,"max_ext_allowed_pct":3.0,"volume_pace":1.534,"trend":"flat","recent_slope_pct":-0.0843,"volatility":"high"},"price":8.87,"volume":{"bars":50,"last_bar_volume":1136.0,"baseline_avg":6913.5,"bar_rvol":0.164316,"raw_accel":-0.90322,"smooth_accel":0.813691,"accel_momentum":-0.672211,"rvol_3bar":[1.651007,1.672628,0.164316],"trend_3bar":"MIXED","projected_rvol":0.012272},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":82.0,"sell_vol":110.0,"unclassified_vol":0.0,"imbalance":-0.145833,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":0.034347},"context":{"vwap":8.875649,"price_vs_vwap_pct":-0.063648,"ema9":8.877959,"ema20":8.869123,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.205072,"dist_to_hod_atr":4.060559,"atr":0.049254,"spread_atr":0.609084,"own_change_pct":0.205376,"rel_strength_pct":{"SPY":0.123322,"IWM":0.187869}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.023963},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ab44a2e4c2d1","ts":"2026-09-21T14:20:20.677875+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7796,"target":8.95,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":133.8,"room_to_5d_high_atr":-0.45},"price":8.92,"vwap":8.8757,"ext_from_open_pct":2.18,"max_ext_allowed_pct":3.0,"volume_pace":1.536,"trend":"flat","recent_slope_pct":0.0281,"volatility":"high"},"price":8.92,"volume":{"bars":50,"last_bar_volume":1136.0,"baseline_avg":6913.5,"bar_rvol":0.164316,"raw_accel":-0.90322,"smooth_accel":0.813691,"accel_momentum":-0.672211,"rvol_3bar":[1.651007,1.672628,0.164316],"trend_3bar":"MIXED","projected_rvol":1.145803},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1314.0,"sell_vol":1516.0,"unclassified_vol":0.0,"imbalance":-0.071378,"bid":8.91,"ask":8.94,"spread_pct":0.336134,"quote_size_imbalance":null,"quote_age_s":0.86855},"context":{"vwap":8.875649,"price_vs_vwap_pct":0.499691,"ema9":8.877959,"ema20":8.869123,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.653804,"dist_to_hod_atr":3.04542,"atr":0.049254,"spread_atr":0.609084,"own_change_pct":0.205376,"rel_strength_pct":{"SPY":0.123322,"IWM":0.187869}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.011729},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5d5014f61bba","ts":"2026-09-21T14:20:25.792772+00:00","symbol":"KRRO","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.15 below VWAP $10.22","plan":{"state":"PASS","setup":"","stop":10.0485,"target":10.56,"target_label":"ceiling","reward_risk":4.04,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.15,"vwap":10.2241,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.626,"trend":"flat","recent_slope_pct":-0.0197,"volatility":"unknown"},"price":10.15,"volume":{"bars":48,"last_bar_volume":126.0,"baseline_avg":809.05,"bar_rvol":0.155738,"raw_accel":-0.80938,"smooth_accel":3.237875,"accel_momentum":3.651869,"rvol_3bar":[1.066287,0.80792,0.155738],"trend_3bar":"DECELERATING","projected_rvol":0.097759},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":34.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":10.15,"ask":10.19,"spread_pct":0.393314,"quote_size_imbalance":null,"quote_age_s":3.810843},"context":{"vwap":10.224109,"price_vs_vwap_pct":-0.724844,"ema9":10.156134,"ema20":10.142712,"ema_stack":false,"ema_warm":true,"hod":10.77,"dist_to_hod_pct":-5.756732,"dist_to_hod_atr":6.709132,"atr":0.092411,"spread_atr":0.432847,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.082054,"IWM":-0.017507}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.155738},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"726afb6f4e56","ts":"2026-09-21T14:20:30.994161+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.73 below VWAP $10.74","plan":{"state":"PASS","setup":"","stop":10.56,"target":10.86,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":89.4,"room_to_5d_high_atr":0.25},"price":10.7323,"vwap":10.739,"ext_from_open_pct":-2.26,"max_ext_allowed_pct":4.0,"volume_pace":0.961,"trend":"flat","recent_slope_pct":0.0462,"volatility":"medium"},"price":10.7323,"volume":{"bars":50,"last_bar_volume":214705.0,"baseline_avg":264846.05,"bar_rvol":0.810679,"raw_accel":0.559257,"smooth_accel":0.125958,"accel_momentum":0.411627,"rvol_3bar":[0.476518,0.49718,0.810679],"trend_3bar":"ACCELERATING","projected_rvol":0.364677},"flow":{"window_s":30,"trades":109,"trade_rate":3.633333,"buy_vol":38563.0,"sell_vol":11291.0,"unclassified_vol":0.0,"imbalance":0.547037,"bid":10.76,"ask":10.77,"spread_pct":0.092894,"quote_size_imbalance":null,"quote_age_s":0.158649},"context":{"vwap":10.738945,"price_vs_vwap_pct":-0.061874,"ema9":10.729572,"ema20":10.710395,"ema_stack":true,"ema_warm":true,"hod":11.0,"dist_to_hod_pct":-2.433636,"dist_to_hod_atr":5.043642,"atr":0.053077,"spread_atr":0.188407,"own_change_pct":0.419972,"rel_strength_pct":{"SPY":0.337918,"IWM":0.402465}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.443471},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b266ec824083","ts":"2026-09-21T14:20:36.147891+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.56,"target":10.86,"target_label":"prev_day_high","reward_risk":0.49,"pos_in_5d_range_pct":91.8,"room_to_5d_high_atr":0.19},"price":10.761,"vwap":10.739,"ext_from_open_pct":-1.99,"max_ext_allowed_pct":3.0,"volume_pace":0.96,"trend":"flat","recent_slope_pct":0.0996,"volatility":"medium"},"price":10.761,"volume":{"bars":50,"last_bar_volume":214705.0,"baseline_avg":264846.05,"bar_rvol":0.810679,"raw_accel":0.559257,"smooth_accel":0.125958,"accel_momentum":0.411627,"rvol_3bar":[0.476518,0.49718,0.810679],"trend_3bar":"ACCELERATING","projected_rvol":0.388085},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":38591.0,"sell_vol":15617.0,"unclassified_vol":0.0,"imbalance":0.423812,"bid":10.76,"ask":10.77,"spread_pct":0.092894,"quote_size_imbalance":null,"quote_age_s":0.904258},"context":{"vwap":10.738945,"price_vs_vwap_pct":0.205377,"ema9":10.729572,"ema20":10.710395,"ema_stack":true,"ema_warm":true,"hod":11.0,"dist_to_hod_pct":-2.172727,"dist_to_hod_atr":4.502916,"atr":0.053077,"spread_atr":0.188407,"own_change_pct":0.419972,"rel_strength_pct":{"SPY":0.337918,"IWM":0.402465}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.343575},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"017363ae7d92","ts":"2026-09-21T14:21:06.632189+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 643.6s, plan says WATCH; stop 8.50, target 8.76 (premarket_high), R:R 0.79; R:R 0.79 < 2.0 at 8.64; breakout: 1-min close > 8.67 on >= 9889 sh","plan":{"state":"WATCH","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":123.0,"room_to_5d_high_atr":-0.72},"price":8.645,"vwap":8.538,"ext_from_open_pct":0.29,"max_ext_allowed_pct":3.0,"volume_pace":1.309,"trend":"flat","recent_slope_pct":0.1269,"volatility":"medium"},"price":8.645,"volume":{"bars":51,"last_bar_volume":6767.0,"baseline_avg":3927.55,"bar_rvol":1.722957,"raw_accel":0.237564,"smooth_accel":-0.175113,"accel_momentum":-0.002011,"rvol_3bar":[0.234897,1.425443,1.722957],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":561.0,"sell_vol":878.0,"unclassified_vol":0.0,"imbalance":-0.220292,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":1.638984},"context":{"vwap":8.537904,"price_vs_vwap_pct":1.254356,"ema9":8.608494,"ema20":8.5767,"ema_stack":true,"ema_warm":true,"hod":8.66,"dist_to_hod_pct":-0.17321,"dist_to_hod_atr":0.323078,"atr":0.046428,"spread_atr":0.215386,"own_change_pct":0.615832,"rel_strength_pct":{"SPY":0.582631,"IWM":0.607079}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.379553},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0afabc8df3ec","ts":"2026-09-21T14:21:21.861790+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.22 below VWAP $11.36","plan":{"state":"PASS","setup":"","stop":11.08,"target":12.0486,"target_label":"premarket_high","reward_risk":5.92,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.22,"vwap":11.36,"ext_from_open_pct":-3.28,"max_ext_allowed_pct":3.0,"volume_pace":1.172,"trend":"flat","recent_slope_pct":-0.1589,"volatility":"unknown"},"price":11.22,"volume":{"bars":51,"last_bar_volume":233.0,"baseline_avg":736.2,"bar_rvol":0.31649,"raw_accel":0.26596,"smooth_accel":0.791304,"accel_momentum":1.324015,"rvol_3bar":[0.036942,0.186017,0.31649],"trend_3bar":"ACCELERATING","projected_rvol":2.613291},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":173.0,"sell_vol":528.0,"unclassified_vol":0.0,"imbalance":-0.506419,"bid":11.21,"ask":11.28,"spread_pct":0.622499,"quote_size_imbalance":null,"quote_age_s":1.647733},"context":{"vwap":11.360833,"price_vs_vwap_pct":-1.239633,"ema9":11.320947,"ema20":11.273512,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-6.108787,"dist_to_hod_atr":7.809079,"atr":0.093481,"spread_atr":0.748816,"own_change_pct":0.308778,"rel_strength_pct":{"SPY":0.275577,"IWM":0.300024}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.160277},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a59adbf978fd","ts":"2026-09-21T14:22:08.635621+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"held 108.0s, plan says WATCH; stop 8.78, target 8.95 (premarket_high), R:R 0.21; R:R 0.21 < 2.0 at 8.92; pullback: buy 8.87-8.89 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.7796,"target":8.95,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":133.8,"room_to_5d_high_atr":-0.45},"price":8.92,"vwap":8.8759,"ext_from_open_pct":2.18,"max_ext_allowed_pct":3.0,"volume_pace":1.491,"trend":"flat","recent_slope_pct":0.0844,"volatility":"high"},"price":8.92,"volume":{"bars":52,"last_bar_volume":3237.0,"baseline_avg":6535.7,"bar_rvol":0.49528,"raw_accel":-0.285273,"smooth_accel":-0.677417,"accel_momentum":-0.635205,"rvol_3bar":[0.164316,0.70401,0.49528],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":2129.0,"sell_vol":811.0,"unclassified_vol":0.0,"imbalance":0.448299,"bid":8.9,"ask":8.92,"spread_pct":0.224467,"quote_size_imbalance":null,"quote_age_s":13.172382},"context":{"vwap":8.875913,"price_vs_vwap_pct":0.496704,"ema9":8.888514,"ema20":8.875972,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.653804,"dist_to_hod_atr":3.090191,"atr":0.048541,"spread_atr":0.412025,"own_change_pct":0.316263,"rel_strength_pct":{"SPY":0.242722,"IWM":0.281253}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.222034},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1dfb52b1d953","ts":"2026-09-21T14:23:05.395740+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 762.4s, plan says PASS; stop 8.50, target 8.76 (premarket_high), R:R 0.33; R:R 0.33 < 2.0 at 8.70; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.85},"price":8.695,"vwap":8.5534,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":1.418,"trend":"flat","recent_slope_pct":0.1555,"volatility":"medium"},"price":8.695,"volume":{"bars":53,"last_bar_volume":9281.0,"baseline_avg":5473.65,"bar_rvol":1.695578,"raw_accel":-0.715053,"smooth_accel":3.681656,"accel_momentum":-2.159999,"rvol_3bar":[1.722957,7.873096,1.695578],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":365.0,"sell_vol":359.0,"unclassified_vol":0.0,"imbalance":0.008287,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":1.850382},"context":{"vwap":8.553132,"price_vs_vwap_pct":1.658667,"ema9":8.634976,"ema20":8.595742,"ema_stack":true,"ema_warm":true,"hod":8.71,"dist_to_hod_pct":-0.172216,"dist_to_hod_atr":0.309243,"atr":0.048506,"spread_atr":0.206162,"own_change_pct":0.970456,"rel_strength_pct":{"SPY":0.87805,"IWM":0.910953}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.014052},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c28c3c061f3f","ts":"2026-09-21T14:23:21.009490+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.50 below VWAP $11.53","plan":{"state":"PASS","setup":"","stop":11.2955,"target":12.0,"target_label":"premarket_high","reward_risk":2.45,"pos_in_5d_range_pct":111.8,"room_to_5d_high_atr":-0.53},"price":11.5,"vwap":11.5268,"ext_from_open_pct":-1.46,"max_ext_allowed_pct":3.0,"volume_pace":0.437,"trend":"flat","recent_slope_pct":-0.1455,"volatility":"high"},"price":11.5,"volume":{"bars":53,"last_bar_volume":5053.0,"baseline_avg":11333.15,"bar_rvol":0.44586,"raw_accel":0.195128,"smooth_accel":-0.19541,"accel_momentum":0.582026,"rvol_3bar":[0.085727,0.368023,0.44586],"trend_3bar":"ACCELERATING","projected_rvol":3.677053},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":2179.0,"sell_vol":14415.0,"unclassified_vol":0.0,"imbalance":-0.737375,"bid":11.5,"ask":11.54,"spread_pct":0.347222,"quote_size_imbalance":null,"quote_age_s":0.095901},"context":{"vwap":11.526718,"price_vs_vwap_pct":-0.231796,"ema9":11.577276,"ema20":11.551119,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-4.006678,"dist_to_hod_atr":4.822352,"atr":0.099536,"spread_atr":0.401863,"own_change_pct":0.123535,"rel_strength_pct":{"SPY":0.031129,"IWM":0.064032}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.328766},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0ad7002d53c3","ts":"2026-09-21T14:23:26.203247+00:00","symbol":"SECZ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.3355,"target":12.0,"target_label":"premarket_high","reward_risk":2.25,"pos_in_5d_range_pct":112.9,"room_to_5d_high_atr":-0.57},"price":11.54,"vwap":11.5271,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.441,"trend":"flat","recent_slope_pct":-0.0763,"volatility":"high"},"price":11.54,"volume":{"bars":53,"last_bar_volume":5053.0,"baseline_avg":11333.15,"bar_rvol":0.44586,"raw_accel":0.195128,"smooth_accel":-0.19541,"accel_momentum":0.582026,"rvol_3bar":[0.085727,0.368023,0.44586],"trend_3bar":"ACCELERATING","projected_rvol":5.842904},"flow":{"window_s":30,"trades":245,"trade_rate":8.166667,"buy_vol":6396.0,"sell_vol":24523.0,"unclassified_vol":0.0,"imbalance":-0.586274,"bid":11.52,"ask":11.58,"spread_pct":0.519481,"quote_size_imbalance":null,"quote_age_s":0.049429},"context":{"vwap":11.526718,"price_vs_vwap_pct":0.115224,"ema9":11.577276,"ema20":11.551119,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.672788,"dist_to_hod_atr":4.42049,"atr":0.099536,"spread_atr":0.602794,"own_change_pct":0.123535,"rel_strength_pct":{"SPY":0.031129,"IWM":0.064032}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.261396},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"28c7950155dc","ts":"2026-09-21T14:23:31.381789+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.51 below VWAP $11.53","plan":{"state":"PASS","setup":"","stop":11.3055,"target":12.0,"target_label":"premarket_high","reward_risk":2.4,"pos_in_5d_range_pct":112.1,"room_to_5d_high_atr":-0.54},"price":11.51,"vwap":11.5269,"ext_from_open_pct":-1.37,"max_ext_allowed_pct":3.0,"volume_pace":0.441,"trend":"flat","recent_slope_pct":-0.1282,"volatility":"high"},"price":11.51,"volume":{"bars":53,"last_bar_volume":5053.0,"baseline_avg":11333.15,"bar_rvol":0.44586,"raw_accel":0.195128,"smooth_accel":-0.19541,"accel_momentum":0.582026,"rvol_3bar":[0.085727,0.368023,0.44586],"trend_3bar":"ACCELERATING","projected_rvol":5.090108},"flow":{"window_s":30,"trades":259,"trade_rate":8.633333,"buy_vol":6406.0,"sell_vol":23766.0,"unclassified_vol":0.0,"imbalance":-0.575368,"bid":11.5,"ask":11.57,"spread_pct":0.606849,"quote_size_imbalance":null,"quote_age_s":0.06442},"context":{"vwap":11.526718,"price_vs_vwap_pct":-0.145041,"ema9":11.577276,"ema20":11.551119,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.923205,"dist_to_hod_atr":4.721887,"atr":0.099536,"spread_atr":0.70326,"own_change_pct":0.123535,"rel_strength_pct":{"SPY":0.031129,"IWM":0.064032}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.256534},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f2cb372353d4","ts":"2026-09-21T14:23:41.662878+00:00","symbol":"SECZ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.3255,"target":12.0,"target_label":"premarket_high","reward_risk":2.3,"pos_in_5d_range_pct":112.6,"room_to_5d_high_atr":-0.56},"price":11.53,"vwap":11.5271,"ext_from_open_pct":-1.2,"max_ext_allowed_pct":3.0,"volume_pace":0.44,"trend":"flat","recent_slope_pct":-0.0936,"volatility":"high"},"price":11.53,"volume":{"bars":53,"last_bar_volume":5053.0,"baseline_avg":11333.15,"bar_rvol":0.44586,"raw_accel":0.195128,"smooth_accel":-0.19541,"accel_momentum":0.582026,"rvol_3bar":[0.085727,0.368023,0.44586],"trend_3bar":"ACCELERATING","projected_rvol":4.032135},"flow":{"window_s":30,"trades":219,"trade_rate":7.3,"buy_vol":4429.0,"sell_vol":20697.0,"unclassified_vol":0.0,"imbalance":-0.647457,"bid":11.5,"ask":11.56,"spread_pct":0.520382,"quote_size_imbalance":null,"quote_age_s":4.991359},"context":{"vwap":11.526718,"price_vs_vwap_pct":0.028469,"ema9":11.577276,"ema20":11.551119,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.75626,"dist_to_hod_atr":4.520955,"atr":0.099536,"spread_atr":0.602794,"own_change_pct":0.123535,"rel_strength_pct":{"SPY":0.031129,"IWM":0.064032}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.288675},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5815f5ada766","ts":"2026-09-21T14:23:51.815516+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.53 below VWAP $11.53","plan":{"state":"PASS","setup":"","stop":11.3205,"target":12.0,"target_label":"premarket_high","reward_risk":2.32,"pos_in_5d_range_pct":112.5,"room_to_5d_high_atr":-0.56},"price":11.525,"vwap":11.527,"ext_from_open_pct":-1.24,"max_ext_allowed_pct":3.0,"volume_pace":0.439,"trend":"flat","recent_slope_pct":-0.1023,"volatility":"high"},"price":11.525,"volume":{"bars":53,"last_bar_volume":5053.0,"baseline_avg":11333.15,"bar_rvol":0.44586,"raw_accel":0.195128,"smooth_accel":-0.19541,"accel_momentum":0.582026,"rvol_3bar":[0.085727,0.368023,0.44586],"trend_3bar":"ACCELERATING","projected_rvol":3.286123},"flow":{"window_s":30,"trades":167,"trade_rate":5.566667,"buy_vol":4259.0,"sell_vol":10394.0,"unclassified_vol":0.0,"imbalance":-0.418686,"bid":11.5,"ask":11.54,"spread_pct":0.347222,"quote_size_imbalance":null,"quote_age_s":0.591632},"context":{"vwap":11.526718,"price_vs_vwap_pct":-0.014908,"ema9":11.577276,"ema20":11.551119,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.797997,"dist_to_hod_atr":4.571188,"atr":0.099536,"spread_atr":0.401863,"own_change_pct":0.123535,"rel_strength_pct":{"SPY":0.031129,"IWM":0.064032}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.186675},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7d87cf673ca5","ts":"2026-09-21T14:24:02.012159+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 819.0s, plan says WATCH; stop 8.50, target 8.76 (premarket_high), R:R 0.21; R:R 0.21 < 2.0 at 8.71; breakout: 1-min close > 8.73 on >= 11032 sh","plan":{"state":"WATCH","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":128.4,"room_to_5d_high_atr":-0.9},"price":8.715,"vwap":8.5603,"ext_from_open_pct":1.1,"max_ext_allowed_pct":3.0,"volume_pace":1.463,"trend":"flat","recent_slope_pct":0.216,"volatility":"medium"},"price":8.715,"volume":{"bars":54,"last_bar_volume":19097.0,"baseline_avg":5573.0,"bar_rvol":3.4267,"raw_accel":1.057645,"smooth_accel":3.594723,"accel_momentum":-0.086933,"rvol_3bar":[7.873096,1.695578,3.4267],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":444.0,"sell_vol":534.0,"unclassified_vol":0.0,"imbalance":-0.092025,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":0.469715},"context":{"vwap":8.560079,"price_vs_vwap_pct":1.809812,"ema9":8.651681,"ema20":8.607433,"ema_stack":true,"ema_warm":true,"hod":8.72,"dist_to_hod_pct":-0.057339,"dist_to_hod_atr":0.100535,"atr":0.049734,"spread_atr":0.201071,"own_change_pct":1.201393,"rel_strength_pct":{"SPY":1.114202,"IWM":1.211889}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.315341},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"870e722ebea1","ts":"2026-09-21T14:24:12.405798+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6575,"target":9.21,"target_label":"prev_day_high","reward_risk":5.32,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.745,"vwap":8.7344,"ext_from_open_pct":2.64,"max_ext_allowed_pct":3.0,"volume_pace":0.851,"trend":"flat","recent_slope_pct":0.0993,"volatility":"unknown"},"price":8.745,"volume":{"bars":54,"last_bar_volume":104249.0,"baseline_avg":57076.25,"bar_rvol":1.826486,"raw_accel":0.702886,"smooth_accel":0.672104,"accel_momentum":0.573545,"rvol_3bar":[0.929532,0.958388,1.826486],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":117,"trade_rate":3.9,"buy_vol":10745.0,"sell_vol":135360.0,"unclassified_vol":0.0,"imbalance":-0.852914,"bid":8.74,"ask":8.75,"spread_pct":0.114351,"quote_size_imbalance":null,"quote_age_s":0.117553},"context":{"vwap":8.734151,"price_vs_vwap_pct":0.124211,"ema9":8.707262,"ema20":8.700298,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-2.126469,"dist_to_hod_atr":3.807098,"atr":0.049907,"spread_atr":0.200374,"own_change_pct":0.513411,"rel_strength_pct":{"SPY":0.42622,"IWM":0.523907}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.557836},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b503316a8120","ts":"2026-09-21T14:24:22.527204+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.9891,"target":9.1299,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.0756,"vwap":9.0059,"ext_from_open_pct":0.62,"max_ext_allowed_pct":3.0,"volume_pace":1.86,"trend":"flat","recent_slope_pct":0.0205,"volatility":"medium"},"price":9.0756,"volume":{"bars":54,"last_bar_volume":8603.0,"baseline_avg":29629.15,"bar_rvol":0.290356,"raw_accel":-0.499476,"smooth_accel":-0.05018,"accel_momentum":0.121664,"rvol_3bar":[0.75113,0.557843,0.290356],"trend_3bar":"DECELERATING","projected_rvol":0.680578},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":3849.0,"sell_vol":4418.0,"unclassified_vol":0.0,"imbalance":-0.068828,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":0.088458},"context":{"vwap":9.005747,"price_vs_vwap_pct":0.775651,"ema9":9.073924,"ema20":9.066645,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.594749,"dist_to_hod_atr":1.449241,"atr":0.037468,"spread_atr":0.266895,"own_change_pct":-0.160609,"rel_strength_pct":{"SPY":-0.2478,"IWM":-0.150113}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.019985},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"5801e352b59c","ts":"2026-09-21T14:24:22.527204+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.72 below VWAP $8.73","plan":{"state":"PASS","setup":"","stop":8.6296,"target":9.21,"target_label":"prev_day_high","reward_risk":5.66,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7168,"vwap":8.7341,"ext_from_open_pct":2.31,"max_ext_allowed_pct":3.0,"volume_pace":0.85,"trend":"flat","recent_slope_pct":0.0346,"volatility":"unknown"},"price":8.7168,"volume":{"bars":54,"last_bar_volume":104249.0,"baseline_avg":57076.25,"bar_rvol":1.826486,"raw_accel":0.702886,"smooth_accel":0.672104,"accel_momentum":0.573545,"rvol_3bar":[0.929532,0.958388,1.826486],"trend_3bar":"ACCELERATING","projected_rvol":6.875204},"flow":{"window_s":30,"trades":109,"trade_rate":3.633333,"buy_vol":14555.0,"sell_vol":136814.0,"unclassified_vol":0.0,"imbalance":-0.807688,"bid":8.74,"ask":8.75,"spread_pct":0.114351,"quote_size_imbalance":null,"quote_age_s":0.006351},"context":{"vwap":8.734151,"price_vs_vwap_pct":-0.198659,"ema9":8.707262,"ema20":8.700298,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-2.442082,"dist_to_hod_atr":4.372152,"atr":0.049907,"spread_atr":0.200374,"own_change_pct":0.513411,"rel_strength_pct":{"SPY":0.42622,"IWM":0.523907}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.475232},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6141c7a61e64","ts":"2026-09-21T14:24:27.560779+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.9769,"target":9.1299,"target_label":"ceiling","reward_risk":0.77,"pos_in_5d_range_pct":130.3,"room_to_5d_high_atr":-0.96},"price":9.0634,"vwap":9.0059,"ext_from_open_pct":0.48,"max_ext_allowed_pct":3.0,"volume_pace":1.857,"trend":"flat","recent_slope_pct":-0.0064,"volatility":"medium"},"price":9.0634,"volume":{"bars":54,"last_bar_volume":8603.0,"baseline_avg":29629.15,"bar_rvol":0.290356,"raw_accel":-0.499476,"smooth_accel":-0.05018,"accel_momentum":0.121664,"rvol_3bar":[0.75113,0.557843,0.290356],"trend_3bar":"DECELERATING","projected_rvol":0.563701},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":3579.0,"sell_vol":4194.0,"unclassified_vol":0.0,"imbalance":-0.07912,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":0.015947},"context":{"vwap":9.005747,"price_vs_vwap_pct":0.640182,"ema9":9.073924,"ema20":9.066645,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.728376,"dist_to_hod_atr":1.774853,"atr":0.037468,"spread_atr":0.266895,"own_change_pct":-0.160609,"rel_strength_pct":{"SPY":-0.2478,"IWM":-0.150113}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.022973},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"2d080810fa03","ts":"2026-09-21T14:24:32.604654+00:00","symbol":"SECZ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.3224,"target":12.0,"target_label":"premarket_high","reward_risk":2.31,"pos_in_5d_range_pct":112.6,"room_to_5d_high_atr":-0.56},"price":11.5269,"vwap":11.5268,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":4.0,"volume_pace":0.434,"trend":"flat","recent_slope_pct":-0.1481,"volatility":"high"},"price":11.5269,"volume":{"bars":54,"last_bar_volume":32892.0,"baseline_avg":9733.55,"bar_rvol":3.37924,"raw_accel":5.5094,"smooth_accel":4.01105,"accel_momentum":4.206461,"rvol_3bar":[0.368023,0.44586,3.37924],"trend_3bar":"ACCELERATING","projected_rvol":0.442968},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1927.0,"sell_vol":416.0,"unclassified_vol":0.0,"imbalance":0.6449,"bid":11.5,"ask":11.53,"spread_pct":0.26053,"quote_size_imbalance":null,"quote_age_s":1.676596},"context":{"vwap":11.526821,"price_vs_vwap_pct":0.000687,"ema9":11.561821,"ema20":11.54625,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.782137,"dist_to_hod_atr":4.511105,"atr":0.100441,"spread_atr":0.298683,"own_change_pct":-0.4329,"rel_strength_pct":{"SPY":-0.520091,"IWM":-0.422404}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.179271},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f9be2e79d511","ts":"2026-09-21T14:24:32.604654+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6557,"target":9.21,"target_label":"prev_day_high","reward_risk":5.34,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7431,"vwap":8.7343,"ext_from_open_pct":2.62,"max_ext_allowed_pct":3.0,"volume_pace":0.848,"trend":"flat","recent_slope_pct":0.0949,"volatility":"unknown"},"price":8.7431,"volume":{"bars":54,"last_bar_volume":104249.0,"baseline_avg":57076.25,"bar_rvol":1.826486,"raw_accel":0.702886,"smooth_accel":0.672104,"accel_momentum":0.573545,"rvol_3bar":[0.929532,0.958388,1.826486],"trend_3bar":"ACCELERATING","projected_rvol":4.825145},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":11162.0,"sell_vol":137065.0,"unclassified_vol":0.0,"imbalance":-0.849393,"bid":8.74,"ask":8.75,"spread_pct":0.114351,"quote_size_imbalance":null,"quote_age_s":0.497088},"context":{"vwap":8.734151,"price_vs_vwap_pct":0.102458,"ema9":8.707262,"ema20":8.700298,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-2.147734,"dist_to_hod_atr":3.845169,"atr":0.049907,"spread_atr":0.200374,"own_change_pct":0.513411,"rel_strength_pct":{"SPY":0.42622,"IWM":0.523907}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.551405},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e25e42da3d61","ts":"2026-09-21T14:24:37.633971+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.40 below VWAP $11.53","plan":{"state":"PASS","setup":"","stop":11.1955,"target":12.0,"target_label":"premarket_high","reward_risk":2.93,"pos_in_5d_range_pct":109.1,"room_to_5d_high_atr":-0.4},"price":11.4,"vwap":11.5254,"ext_from_open_pct":-2.31,"max_ext_allowed_pct":3.0,"volume_pace":0.44,"trend":"flat","recent_slope_pct":-0.3686,"volatility":"high"},"price":11.4,"volume":{"bars":54,"last_bar_volume":32892.0,"baseline_avg":9733.55,"bar_rvol":3.37924,"raw_accel":5.5094,"smooth_accel":4.01105,"accel_momentum":4.206461,"rvol_3bar":[0.368023,0.44586,3.37924],"trend_3bar":"ACCELERATING","projected_rvol":3.423146},"flow":{"window_s":30,"trades":126,"trade_rate":4.2,"buy_vol":3962.0,"sell_vol":16676.0,"unclassified_vol":0.0,"imbalance":-0.616048,"bid":11.39,"ask":11.44,"spread_pct":0.43802,"quote_size_imbalance":null,"quote_age_s":0.04385},"context":{"vwap":11.526821,"price_vs_vwap_pct":-1.100224,"ema9":11.561821,"ema20":11.54625,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-4.841402,"dist_to_hod_atr":5.774533,"atr":0.100441,"spread_atr":0.497805,"own_change_pct":-0.4329,"rel_strength_pct":{"SPY":-0.520091,"IWM":-0.422404}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.081774},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3f2406ab67e0","ts":"2026-09-21T14:24:37.633971+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 854.6s, plan says PASS; stop 8.50, target 8.76 (premarket_high), R:R 0.62; R:R 0.62 < 2.0 at 8.66; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":124.2,"room_to_5d_high_atr":-0.76},"price":8.6605,"vwap":8.5606,"ext_from_open_pct":0.47,"max_ext_allowed_pct":3.0,"volume_pace":1.451,"trend":"flat","recent_slope_pct":0.0907,"volatility":"medium"},"price":8.6605,"volume":{"bars":54,"last_bar_volume":19097.0,"baseline_avg":5573.0,"bar_rvol":3.4267,"raw_accel":1.057645,"smooth_accel":3.594723,"accel_momentum":-0.086933,"rvol_3bar":[7.873096,1.695578,3.4267],"trend_3bar":"MIXED","projected_rvol":0.484614},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":1.0,"sell_vol":988.0,"unclassified_vol":0.0,"imbalance":-0.997978,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":2.479758},"context":{"vwap":8.560079,"price_vs_vwap_pct":1.173136,"ema9":8.651681,"ema20":8.607433,"ema_stack":true,"ema_warm":true,"hod":8.72,"dist_to_hod_pct":-0.682339,"dist_to_hod_atr":1.19637,"atr":0.049734,"spread_atr":0.201071,"own_change_pct":1.201393,"rel_strength_pct":{"SPY":1.114202,"IWM":1.211889}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-3.419771},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"55526f2acde3","ts":"2026-09-21T14:24:37.633971+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":8.6526,"target":9.21,"target_label":"prev_day_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.74,"vwap":8.7342,"ext_from_open_pct":2.58,"max_ext_allowed_pct":3.0,"volume_pace":0.847,"trend":"flat","recent_slope_pct":0.0878,"volatility":"unknown"},"price":8.74,"volume":{"bars":54,"last_bar_volume":104249.0,"baseline_avg":57076.25,"bar_rvol":1.826486,"raw_accel":0.702886,"smooth_accel":0.672104,"accel_momentum":0.573545,"rvol_3bar":[0.929532,0.958388,1.826486],"trend_3bar":"ACCELERATING","projected_rvol":4.393731},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":12369.0,"sell_vol":143179.0,"unclassified_vol":0.0,"imbalance":-0.840962,"bid":8.73,"ask":8.74,"spread_pct":0.114482,"quote_size_imbalance":null,"quote_age_s":0.057077},"context":{"vwap":8.734151,"price_vs_vwap_pct":0.066965,"ema9":8.707262,"ema20":8.700298,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-2.182429,"dist_to_hod_atr":3.907285,"atr":0.049907,"spread_atr":0.200374,"own_change_pct":0.513411,"rel_strength_pct":{"SPY":0.42622,"IWM":0.523907}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.536006},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c2d33c6d7bed","ts":"2026-09-21T14:24:42.674744+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 859.7s, plan says WATCH; stop 8.50, target 8.76 (premarket_high), R:R 0.33; R:R 0.33 < 2.0 at 8.70; breakout: 1-min close > 8.73 on >= 11032 sh","plan":{"state":"WATCH","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.85},"price":8.695,"vwap":8.5606,"ext_from_open_pct":0.87,"max_ext_allowed_pct":3.0,"volume_pace":1.449,"trend":"flat","recent_slope_pct":0.1701,"volatility":"medium"},"price":8.695,"volume":{"bars":54,"last_bar_volume":19097.0,"baseline_avg":5573.0,"bar_rvol":3.4267,"raw_accel":1.057645,"smooth_accel":3.594723,"accel_momentum":-0.086933,"rvol_3bar":[7.873096,1.695578,3.4267],"trend_3bar":"MIXED","projected_rvol":0.42838},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":5.0,"sell_vol":988.0,"unclassified_vol":0.0,"imbalance":-0.98993,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":3.5367},"context":{"vwap":8.560079,"price_vs_vwap_pct":1.57617,"ema9":8.651681,"ema20":8.607433,"ema_stack":true,"ema_warm":true,"hod":8.72,"dist_to_hod_pct":-0.286697,"dist_to_hod_atr":0.502677,"atr":0.049734,"spread_atr":0.201071,"own_change_pct":1.201393,"rel_strength_pct":{"SPY":1.114202,"IWM":1.211889}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-3.392192},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8f1fd5588531","ts":"2026-09-21T14:24:47.843262+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.989,"target":9.1299,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.0755,"vwap":9.006,"ext_from_open_pct":0.62,"max_ext_allowed_pct":3.0,"volume_pace":1.848,"trend":"flat","recent_slope_pct":0.0203,"volatility":"medium"},"price":9.0755,"volume":{"bars":54,"last_bar_volume":8603.0,"baseline_avg":29629.15,"bar_rvol":0.290356,"raw_accel":-0.499476,"smooth_accel":-0.05018,"accel_momentum":0.121664,"rvol_3bar":[0.75113,0.557843,0.290356],"trend_3bar":"DECELERATING","projected_rvol":0.464532},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":5483.0,"sell_vol":4413.0,"unclassified_vol":0.0,"imbalance":0.108124,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":2.806531},"context":{"vwap":9.005747,"price_vs_vwap_pct":0.774541,"ema9":9.073924,"ema20":9.066645,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.595844,"dist_to_hod_atr":1.45191,"atr":0.037468,"spread_atr":0.266895,"own_change_pct":-0.160609,"rel_strength_pct":{"SPY":-0.2478,"IWM":-0.150113}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.031395},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"400e24edf6a5","ts":"2026-09-21T14:24:52.968245+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.9735,"target":9.1299,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":130.0,"room_to_5d_high_atr":-0.95},"price":9.06,"vwap":9.006,"ext_from_open_pct":0.44,"max_ext_allowed_pct":3.0,"volume_pace":1.846,"trend":"flat","recent_slope_pct":-0.0139,"volatility":"medium"},"price":9.06,"volume":{"bars":54,"last_bar_volume":8603.0,"baseline_avg":29629.15,"bar_rvol":0.290356,"raw_accel":-0.499476,"smooth_accel":-0.05018,"accel_momentum":0.121664,"rvol_3bar":[0.75113,0.557843,0.290356],"trend_3bar":"DECELERATING","projected_rvol":0.449674},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":2247.0,"sell_vol":1944.0,"unclassified_vol":0.0,"imbalance":0.072298,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":1.514195},"context":{"vwap":9.005747,"price_vs_vwap_pct":0.602429,"ema9":9.073924,"ema20":9.066645,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.765616,"dist_to_hod_atr":1.865598,"atr":0.037468,"spread_atr":0.266895,"own_change_pct":-0.160609,"rel_strength_pct":{"SPY":-0.2478,"IWM":-0.150113}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.020992},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"490e921ee75d","ts":"2026-09-21T14:25:03.150030+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.7546,"target":8.95,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":130.4,"room_to_5d_high_atr":-0.4},"price":8.895,"vwap":8.8765,"ext_from_open_pct":1.89,"max_ext_allowed_pct":3.0,"volume_pace":1.443,"trend":"flat","recent_slope_pct":-0.0431,"volatility":"high"},"price":8.895,"volume":{"bars":55,"last_bar_volume":1051.0,"baseline_avg":6775.2,"bar_rvol":0.155125,"raw_accel":-0.939629,"smooth_accel":1.216468,"accel_momentum":0.957088,"rvol_3bar":[0.192152,2.684544,0.155125],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":17.0,"sell_vol":140.0,"unclassified_vol":0.0,"imbalance":-0.783439,"bid":8.88,"ask":8.91,"spread_pct":0.337268,"quote_size_imbalance":null,"quote_age_s":3.128894},"context":{"vwap":8.876534,"price_vs_vwap_pct":0.208033,"ema9":8.896263,"ema20":8.883369,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.929438,"dist_to_hod_atr":3.956477,"atr":0.044231,"spread_atr":0.678253,"own_change_pct":0.256757,"rel_strength_pct":{"SPY":0.177373,"IWM":0.207746}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.121531},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"332fc9738582","ts":"2026-09-21T14:25:08.252222+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 3.61% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.985,"target":9.74,"target_label":"premarket_high","reward_risk":0.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.685,"vwap":9.5971,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.121,"trend":"flat","recent_slope_pct":-0.4415,"volatility":"unknown"},"price":9.685,"volume":{"bars":41,"last_bar_volume":200.0,"baseline_avg":767.75,"bar_rvol":0.260501,"raw_accel":-0.425287,"smooth_accel":-0.594064,"accel_momentum":0.33608,"rvol_3bar":[0.370691,0.451303,0.260501],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":181.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":9.51,"ask":9.86,"spread_pct":3.613836,"quote_size_imbalance":null,"quote_age_s":1.552142},"context":{"vwap":9.596911,"price_vs_vwap_pct":0.917891,"ema9":9.699426,"ema20":9.650727,"ema_stack":false,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-4.013875,"dist_to_hod_atr":2.204568,"atr":0.183709,"spread_atr":1.905182,"own_change_pct":-1.958763,"rel_strength_pct":{"SPY":-2.038147,"IWM":-2.007774}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.260501},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"911e77a652ba","ts":"2026-09-21T14:25:13.340746+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.7482,"target":8.95,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":129.5,"room_to_5d_high_atr":-0.39},"price":8.8886,"vwap":8.8765,"ext_from_open_pct":1.82,"max_ext_allowed_pct":3.0,"volume_pace":1.439,"trend":"flat","recent_slope_pct":-0.0575,"volatility":"high"},"price":8.8886,"volume":{"bars":55,"last_bar_volume":1051.0,"baseline_avg":6775.2,"bar_rvol":0.155125,"raw_accel":-0.939629,"smooth_accel":1.216468,"accel_momentum":0.957088,"rvol_3bar":[0.192152,2.684544,0.155125],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":519.0,"sell_vol":94.0,"unclassified_vol":0.0,"imbalance":0.693312,"bid":8.88,"ask":8.91,"spread_pct":0.337268,"quote_size_imbalance":null,"quote_age_s":0.684647},"context":{"vwap":8.876534,"price_vs_vwap_pct":0.135933,"ema9":8.896263,"ema20":8.883369,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.0,"dist_to_hod_atr":4.101171,"atr":0.044231,"spread_atr":0.678253,"own_change_pct":0.256757,"rel_strength_pct":{"SPY":0.177373,"IWM":0.207746}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.10755},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0770911ecf73","ts":"2026-09-21T14:25:18.486980+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 895.5s, plan says PASS; stop 8.50, target 8.76 (premarket_high), R:R 0.61; R:R 0.61 < 2.0 at 8.66; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":124.3,"room_to_5d_high_atr":-0.76},"price":8.6613,"vwap":8.561,"ext_from_open_pct":0.48,"max_ext_allowed_pct":3.0,"volume_pace":1.437,"trend":"flat","recent_slope_pct":-0.0174,"volatility":"medium"},"price":8.6613,"volume":{"bars":55,"last_bar_volume":2660.0,"baseline_avg":6277.0,"bar_rvol":0.423769,"raw_accel":-0.860711,"smooth_accel":-0.30728,"accel_momentum":-3.902003,"rvol_3bar":[1.695578,3.4267,0.423769],"trend_3bar":"MIXED","projected_rvol":0.051188},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":132.0,"sell_vol":288.0,"unclassified_vol":0.0,"imbalance":-0.371429,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":2.334437},"context":{"vwap":8.560955,"price_vs_vwap_pct":1.172121,"ema9":8.661345,"ema20":8.616249,"ema_stack":false,"ema_warm":true,"hod":8.72,"dist_to_hod_pct":-0.673165,"dist_to_hod_atr":1.166437,"atr":0.050324,"spread_atr":0.198712,"own_change_pct":0.578035,"rel_strength_pct":{"SPY":0.498651,"IWM":0.529024}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.1574},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2f14ec87fc60","ts":"2026-09-21T14:25:18.486980+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.7546,"target":8.95,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":130.4,"room_to_5d_high_atr":-0.4},"price":8.895,"vwap":8.8765,"ext_from_open_pct":1.89,"max_ext_allowed_pct":3.0,"volume_pace":1.437,"trend":"flat","recent_slope_pct":-0.0431,"volatility":"high"},"price":8.895,"volume":{"bars":55,"last_bar_volume":1051.0,"baseline_avg":6775.2,"bar_rvol":0.155125,"raw_accel":-0.939629,"smooth_accel":1.216468,"accel_momentum":0.957088,"rvol_3bar":[0.192152,2.684544,0.155125],"trend_3bar":"MIXED","projected_rvol":0.279275},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":523.0,"sell_vol":69.0,"unclassified_vol":0.0,"imbalance":0.766892,"bid":8.88,"ask":8.91,"spread_pct":0.337268,"quote_size_imbalance":null,"quote_age_s":0.437123},"context":{"vwap":8.876534,"price_vs_vwap_pct":0.208033,"ema9":8.896263,"ema20":8.883369,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.929438,"dist_to_hod_atr":3.956477,"atr":0.044231,"spread_atr":0.678253,"own_change_pct":0.256757,"rel_strength_pct":{"SPY":0.177373,"IWM":0.207746}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.118964},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3365f4c4f39a","ts":"2026-09-21T14:25:23.561059+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 900.6s, plan says WATCH; stop 8.50, target 8.76 (premarket_high), R:R 0.18; R:R 0.18 < 2.0 at 8.72; breakout: 1-min close > 8.73 on >= 10904 sh","plan":{"state":"WATCH","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.18,"pos_in_5d_range_pct":128.8,"room_to_5d_high_atr":-0.91},"price":8.72,"vwap":8.5612,"ext_from_open_pct":1.16,"max_ext_allowed_pct":4.0,"volume_pace":1.437,"trend":"flat","recent_slope_pct":0.1176,"volatility":"medium"},"price":8.72,"volume":{"bars":55,"last_bar_volume":2660.0,"baseline_avg":6277.0,"bar_rvol":0.423769,"raw_accel":-0.860711,"smooth_accel":-0.30728,"accel_momentum":-3.902003,"rvol_3bar":[1.695578,3.4267,0.423769],"trend_3bar":"MIXED","projected_rvol":0.334702},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":812.0,"sell_vol":203.0,"unclassified_vol":0.0,"imbalance":0.6,"bid":8.72,"ask":8.74,"spread_pct":0.229095,"quote_size_imbalance":null,"quote_age_s":0.395632},"context":{"vwap":8.560955,"price_vs_vwap_pct":1.857793,"ema9":8.661345,"ema20":8.616249,"ema_stack":true,"ema_warm":true,"hod":8.72,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.050324,"spread_atr":0.397423,"own_change_pct":0.578035,"rel_strength_pct":{"SPY":0.498651,"IWM":0.529024}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.254262},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f114c943702c","ts":"2026-09-21T14:26:04.800060+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.7596,"target":8.95,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":131.1,"room_to_5d_high_atr":-0.41},"price":8.9,"vwap":8.8766,"ext_from_open_pct":1.95,"max_ext_allowed_pct":3.0,"volume_pace":1.419,"trend":"flat","recent_slope_pct":-0.0209,"volatility":"high"},"price":8.9,"volume":{"bars":56,"last_bar_volume":1303.0,"baseline_avg":6359.0,"bar_rvol":0.204906,"raw_accel":-0.180374,"smooth_accel":1.186898,"accel_momentum":-0.02957,"rvol_3bar":[2.684544,0.155125,0.204906],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":335.0,"sell_vol":666.0,"unclassified_vol":0.0,"imbalance":-0.330669,"bid":8.9,"ask":8.91,"spread_pct":0.112296,"quote_size_imbalance":null,"quote_age_s":3.096307},"context":{"vwap":8.876561,"price_vs_vwap_pct":0.264057,"ema9":8.89647,"ema20":8.884696,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.874311,"dist_to_hod_atr":3.933842,"atr":0.043215,"spread_atr":0.231402,"own_change_pct":-0.030337,"rel_strength_pct":{"SPY":-0.136416,"IWM":-0.116117}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.067756},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"86f41161889a","ts":"2026-09-21T14:26:40.541098+00:00","symbol":"MAT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.94,"target":13.42,"target_label":"prev_day_high","reward_risk":2.55,"pos_in_5d_range_pct":0.5,"room_to_5d_high_atr":2.97},"price":13.0754,"vwap":13.0719,"ext_from_open_pct":-1.17,"max_ext_allowed_pct":4.0,"volume_pace":0.402,"trend":"flat","recent_slope_pct":0.0122,"volatility":"low"},"price":13.0754,"volume":{"bars":56,"last_bar_volume":3406.0,"baseline_avg":7996.65,"bar_rvol":0.425928,"raw_accel":-0.840849,"smooth_accel":0.517808,"accel_momentum":-2.75297,"rvol_3bar":[4.611678,3.010452,0.425928],"trend_3bar":"DECELERATING","projected_rvol":2.452613},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":10824.0,"sell_vol":1406.0,"unclassified_vol":0.0,"imbalance":0.770074,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":0.794727},"context":{"vwap":13.071941,"price_vs_vwap_pct":0.026464,"ema9":13.053465,"ema20":13.035596,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-1.983508,"dist_to_hod_atr":7.268181,"atr":0.036405,"spread_atr":0.274686,"own_change_pct":0.209208,"rel_strength_pct":{"SPY":0.103129,"IWM":0.123428}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.327996},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"bd459b47c457","ts":"2026-09-21T14:26:45.675397+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.05 below VWAP $13.07","plan":{"state":"PASS","setup":"","stop":12.94,"target":13.42,"target_label":"prev_day_high","reward_risk":3.36,"pos_in_5d_range_pct":-1.7,"room_to_5d_high_atr":3.04},"price":13.05,"vwap":13.0717,"ext_from_open_pct":-1.36,"max_ext_allowed_pct":3.0,"volume_pace":0.402,"trend":"flat","recent_slope_pct":-0.0267,"volatility":"medium"},"price":13.05,"volume":{"bars":56,"last_bar_volume":3406.0,"baseline_avg":7996.65,"bar_rvol":0.425928,"raw_accel":-0.840849,"smooth_accel":0.517808,"accel_momentum":-2.75297,"rvol_3bar":[4.611678,3.010452,0.425928],"trend_3bar":"DECELERATING","projected_rvol":2.193346},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":2265.0,"sell_vol":971.0,"unclassified_vol":0.0,"imbalance":0.399876,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":2.1342},"context":{"vwap":13.071941,"price_vs_vwap_pct":-0.167845,"ema9":13.053465,"ema20":13.035596,"ema_stack":false,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-2.173913,"dist_to_hod_atr":7.965882,"atr":0.036405,"spread_atr":0.274686,"own_change_pct":0.209208,"rel_strength_pct":{"SPY":0.103129,"IWM":0.123428}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.170319},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"968fc750183f","ts":"2026-09-21T14:27:16.243325+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1013.2s, plan says PASS; stop 8.50, target 8.76 (premarket_high), R:R 0.45; R:R 0.45 < 2.0 at 8.68; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":125.7,"room_to_5d_high_atr":-0.81},"price":8.6799,"vwap":8.5632,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":1.411,"trend":"flat","recent_slope_pct":-0.1153,"volatility":"medium"},"price":8.6799,"volume":{"bars":57,"last_bar_volume":1598.0,"baseline_avg":6485.3,"bar_rvol":0.246403,"raw_accel":-0.634241,"smooth_accel":-0.858455,"accel_momentum":-0.395817,"rvol_3bar":[0.423769,0.694539,0.246403],"trend_3bar":"MIXED","projected_rvol":0.545647},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":434.0,"sell_vol":598.0,"unclassified_vol":0.0,"imbalance":-0.158915,"bid":8.7,"ask":8.72,"spread_pct":0.229621,"quote_size_imbalance":null,"quote_age_s":1.53017},"context":{"vwap":8.562935,"price_vs_vwap_pct":1.365944,"ema9":8.666581,"ema20":8.627054,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.801143,"dist_to_hod_atr":1.307053,"atr":0.053632,"spread_atr":0.372911,"own_change_pct":0.023055,"rel_strength_pct":{"SPY":-0.015952,"IWM":-0.046941}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.039157},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"462e917bb230","ts":"2026-09-21T14:27:21.399716+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1018.4s, plan says WATCH; stop 8.50, target 8.76 (premarket_high), R:R 0.21; R:R 0.21 < 2.0 at 8.72; breakout: 1-min close > 8.75 on >= 10679 sh","plan":{"state":"WATCH","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":128.5,"room_to_5d_high_atr":-0.9},"price":8.7155,"vwap":8.5633,"ext_from_open_pct":1.11,"max_ext_allowed_pct":3.0,"volume_pace":1.409,"trend":"flat","recent_slope_pct":-0.0333,"volatility":"medium"},"price":8.7155,"volume":{"bars":57,"last_bar_volume":1598.0,"baseline_avg":6485.3,"bar_rvol":0.246403,"raw_accel":-0.634241,"smooth_accel":-0.858455,"accel_momentum":-0.395817,"rvol_3bar":[0.423769,0.694539,0.246403],"trend_3bar":"MIXED","projected_rvol":0.415035},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":436.0,"sell_vol":598.0,"unclassified_vol":0.0,"imbalance":-0.156673,"bid":8.7,"ask":8.72,"spread_pct":0.229621,"quote_size_imbalance":null,"quote_age_s":1.727305},"context":{"vwap":8.562935,"price_vs_vwap_pct":1.78169,"ema9":8.666581,"ema20":8.627054,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.394286,"dist_to_hod_atr":0.643272,"atr":0.053632,"spread_atr":0.372911,"own_change_pct":0.023055,"rel_strength_pct":{"SPY":-0.015952,"IWM":-0.046941}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.038605},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6ebd481f9d45","ts":"2026-09-21T14:27:31.755399+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7296,"target":8.95,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.36},"price":8.87,"vwap":8.8768,"ext_from_open_pct":1.6,"max_ext_allowed_pct":3.0,"volume_pace":1.427,"trend":"flat","recent_slope_pct":-0.0839,"volatility":"high"},"price":8.87,"volume":{"bars":57,"last_bar_volume":4295.0,"baseline_avg":6171.85,"bar_rvol":0.695902,"raw_accel":1.783606,"smooth_accel":-0.696628,"accel_momentum":-1.883526,"rvol_3bar":[0.155125,0.204906,0.695902],"trend_3bar":"ACCELERATING","projected_rvol":7.899911},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":6171.0,"sell_vol":16281.0,"unclassified_vol":0.0,"imbalance":-0.450294,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":1.651235},"context":{"vwap":8.876653,"price_vs_vwap_pct":-0.074951,"ema9":8.897176,"ema20":8.886153,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.205072,"dist_to_hod_atr":4.731394,"atr":0.042271,"spread_atr":0.709709,"own_change_pct":-0.146975,"rel_strength_pct":{"SPY":-0.185981,"IWM":-0.216971}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.31336},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"59d2aa957eb7","ts":"2026-09-21T14:27:36.829322+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.7396,"target":8.95,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":128.4,"room_to_5d_high_atr":-0.37},"price":8.88,"vwap":8.8769,"ext_from_open_pct":1.72,"max_ext_allowed_pct":3.0,"volume_pace":1.426,"trend":"flat","recent_slope_pct":-0.0614,"volatility":"high"},"price":8.88,"volume":{"bars":57,"last_bar_volume":4295.0,"baseline_avg":6171.85,"bar_rvol":0.695902,"raw_accel":1.783606,"smooth_accel":-0.696628,"accel_momentum":-1.883526,"rvol_3bar":[0.155125,0.204906,0.695902],"trend_3bar":"ACCELERATING","projected_rvol":6.893908},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":425.0,"sell_vol":4683.0,"unclassified_vol":0.0,"imbalance":-0.833594,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":1.756571},"context":{"vwap":8.876653,"price_vs_vwap_pct":0.037704,"ema9":8.897176,"ema20":8.886153,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.094818,"dist_to_hod_atr":4.494824,"atr":0.042271,"spread_atr":0.709709,"own_change_pct":-0.146975,"rel_strength_pct":{"SPY":-0.185981,"IWM":-0.216971}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.5801},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f11cb03e5e3f","ts":"2026-09-21T14:27:52.031735+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.51 below VWAP $9.60","plan":{"state":"PASS","setup":"","stop":8.75,"target":9.74,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.51,"vwap":9.5969,"ext_from_open_pct":-1.86,"max_ext_allowed_pct":3.0,"volume_pace":0.116,"trend":"flat","recent_slope_pct":-1.0257,"volatility":"unknown"},"price":9.51,"volume":{"bars":42,"last_bar_volume":181.0,"baseline_avg":777.5,"bar_rvol":0.232797,"raw_accel":-0.095,"smooth_accel":-0.681659,"accel_momentum":-0.087595,"rvol_3bar":[0.451303,0.260501,0.232797],"trend_3bar":"DECELERATING","projected_rvol":0.324808},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":219.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.51,"ask":9.89,"spread_pct":3.917526,"quote_size_imbalance":null,"quote_age_s":1.501874},"context":{"vwap":9.597091,"price_vs_vwap_pct":-0.907471,"ema9":9.696541,"ema20":9.653992,"ema_stack":false,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-5.748266,"dist_to_hod_atr":3.167887,"atr":0.183087,"spread_atr":2.075512,"own_change_pct":-0.206079,"rel_strength_pct":{"SPY":-0.245086,"IWM":-0.276075}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.232797},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"527afd6abc16","ts":"2026-09-21T14:28:02.203343+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1059.2s, plan says PASS; stop 8.50, target 8.76 (premarket_high), R:R 0.30; R:R 0.30 < 2.0 at 8.70; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":127.3,"room_to_5d_high_atr":-0.86},"price":8.7,"vwap":8.5648,"ext_from_open_pct":0.93,"max_ext_allowed_pct":4.0,"volume_pace":1.408,"trend":"flat","recent_slope_pct":0.0293,"volatility":"medium"},"price":8.7,"volume":{"bars":58,"last_bar_volume":5315.0,"baseline_avg":6303.2,"bar_rvol":0.843222,"raw_accel":2.326033,"smooth_accel":-0.63651,"accel_momentum":0.221945,"rvol_3bar":[0.694539,0.246403,0.843222],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1304.0,"sell_vol":2984.0,"unclassified_vol":0.0,"imbalance":-0.391791,"bid":8.69,"ask":8.71,"spread_pct":0.229885,"quote_size_imbalance":null,"quote_age_s":0.467304},"context":{"vwap":8.564754,"price_vs_vwap_pct":1.579098,"ema9":8.673265,"ema20":8.634001,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.571429,"dist_to_hod_atr":0.931821,"atr":0.053658,"spread_atr":0.372728,"own_change_pct":0.141579,"rel_strength_pct":{"SPY":0.135078,"IWM":0.13105}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.330367},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"89b8bfa7daeb","ts":"2026-09-21T14:28:07.345400+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.4967,"target":6.95,"target_label":"premarket_high","reward_risk":1.78,"pos_in_5d_range_pct":113.6,"room_to_5d_high_atr":-0.37},"price":6.66,"vwap":6.4446,"ext_from_open_pct":4.23,"max_ext_allowed_pct":3.0,"volume_pace":1.201,"trend":"flat","recent_slope_pct":-0.0771,"volatility":"high"},"price":6.66,"volume":{"bars":58,"last_bar_volume":43463.0,"baseline_avg":6399.6,"bar_rvol":6.791518,"raw_accel":1.218405,"smooth_accel":0.719116,"accel_momentum":0.082797,"rvol_3bar":[0.151558,3.547187,6.791518],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":200.0,"sell_vol":1700.0,"unclassified_vol":0.0,"imbalance":-0.789474,"bid":6.65,"ask":6.67,"spread_pct":0.3003,"quote_size_imbalance":null,"quote_age_s":1.046685},"context":{"vwap":6.444535,"price_vs_vwap_pct":3.343383,"ema9":6.644722,"ema20":6.594229,"ema_stack":true,"ema_warm":true,"hod":6.74,"dist_to_hod_pct":-1.186944,"dist_to_hod_atr":1.698671,"atr":0.047096,"spread_atr":0.424668,"own_change_pct":0.001504,"rel_strength_pct":{"SPY":-0.004998,"IWM":-0.009026}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-5.361725},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"954d1bc6ad80","ts":"2026-09-21T14:29:03.603873+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 250.6s, plan says PASS; stop 8.99, target 9.13 (ceiling), R:R 0.64; R:R 0.64 < 2.0 at 9.07; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9878,"target":9.1299,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":131.3,"room_to_5d_high_atr":-1.0},"price":9.0743,"vwap":9.008,"ext_from_open_pct":0.6,"max_ext_allowed_pct":3.0,"volume_pace":1.771,"trend":"flat","recent_slope_pct":0.0421,"volatility":"medium"},"price":9.0743,"volume":{"bars":59,"last_bar_volume":5625.0,"baseline_avg":27134.6,"bar_rvol":0.2073,"raw_accel":-0.768041,"smooth_accel":0.464858,"accel_momentum":-0.347521,"rvol_3bar":[0.967207,0.908725,0.2073],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":371.0,"sell_vol":8913.0,"unclassified_vol":0.0,"imbalance":-0.920078,"bid":9.08,"ask":9.09,"spread_pct":0.110072,"quote_size_imbalance":null,"quote_age_s":0.419707},"context":{"vwap":9.007815,"price_vs_vwap_pct":0.738086,"ema9":9.074688,"ema20":9.069599,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.608988,"dist_to_hod_atr":1.710444,"atr":0.032506,"spread_atr":0.307634,"own_change_pct":0.096961,"rel_strength_pct":{"SPY":0.094361,"IWM":0.009484}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.190732},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"e10d1cccc262","ts":"2026-09-21T14:29:08.845639+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.23,"target":9.09,"target_label":"range_20d_high","reward_risk":7.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.33,"vwap":8.206,"ext_from_open_pct":4.0,"max_ext_allowed_pct":4.0,"volume_pace":6.281,"trend":"flat","recent_slope_pct":-0.2096,"volatility":"unknown"},"price":8.33,"volume":{"bars":59,"last_bar_volume":2864.0,"baseline_avg":4315.25,"bar_rvol":0.663693,"raw_accel":1.654771,"smooth_accel":0.40791,"accel_momentum":-0.274274,"rvol_3bar":[0.792523,0.161912,0.663693],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":203.0,"sell_vol":352.0,"unclassified_vol":0.0,"imbalance":-0.268468,"bid":8.3,"ask":8.35,"spread_pct":0.600601,"quote_size_imbalance":null,"quote_age_s":8.749371},"context":{"vwap":8.205938,"price_vs_vwap_pct":1.511855,"ema9":8.369604,"ema20":8.359842,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.913753,"dist_to_hod_atr":2.662553,"atr":0.093895,"spread_atr":0.532511,"own_change_pct":-1.073583,"rel_strength_pct":{"SPY":-1.076184,"IWM":-1.16106}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.178181},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a5b7ba7f635c","ts":"2026-09-21T14:29:08.845639+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 255.9s, plan says WATCH; stop 9.00, target 9.09 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 9.09; breakout: 1-min close > 9.14 on >= 66322 sh","plan":{"state":"WATCH","setup":"","stop":8.9985,"target":9.085,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":132.3,"room_to_5d_high_atr":-1.03},"price":9.085,"vwap":9.0081,"ext_from_open_pct":0.72,"max_ext_allowed_pct":3.0,"volume_pace":1.769,"trend":"flat","recent_slope_pct":0.0657,"volatility":"medium"},"price":9.085,"volume":{"bars":59,"last_bar_volume":5625.0,"baseline_avg":27134.6,"bar_rvol":0.2073,"raw_accel":-0.768041,"smooth_accel":0.464858,"accel_momentum":-0.347521,"rvol_3bar":[0.967207,0.908725,0.2073],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":467.0,"sell_vol":8936.0,"unclassified_vol":0.0,"imbalance":-0.90067,"bid":9.08,"ask":9.09,"spread_pct":0.110072,"quote_size_imbalance":null,"quote_age_s":1.197223},"context":{"vwap":9.007815,"price_vs_vwap_pct":0.856871,"ema9":9.074688,"ema20":9.069599,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.491791,"dist_to_hod_atr":1.381276,"atr":0.032506,"spread_atr":0.307634,"own_change_pct":0.096961,"rel_strength_pct":{"SPY":0.094361,"IWM":0.009484}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.186709},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"6494f97cd0ae","ts":"2026-09-21T14:29:34.535527+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.20% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.15,"target":9.09,"target_label":"range_20d_high","reward_risk":3.7,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.35,"vwap":8.2064,"ext_from_open_pct":4.24,"max_ext_allowed_pct":5.0,"volume_pace":6.255,"trend":"flat","recent_slope_pct":-0.1616,"volatility":"unknown"},"price":8.35,"volume":{"bars":59,"last_bar_volume":2864.0,"baseline_avg":4315.25,"bar_rvol":0.663693,"raw_accel":1.654771,"smooth_accel":0.40791,"accel_momentum":-0.274274,"rvol_3bar":[0.792523,0.161912,0.663693],"trend_3bar":"MIXED","projected_rvol":0.837418},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1271.0,"sell_vol":508.0,"unclassified_vol":0.0,"imbalance":0.428893,"bid":8.3,"ask":8.4,"spread_pct":1.197605,"quote_size_imbalance":null,"quote_age_s":4.050013},"context":{"vwap":8.205938,"price_vs_vwap_pct":1.755581,"ema9":8.369604,"ema20":8.359842,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.680653,"dist_to_hod_atr":2.449549,"atr":0.093895,"spread_atr":1.065021,"own_change_pct":-1.073583,"rel_strength_pct":{"SPY":-1.076184,"IWM":-1.16106}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.284653},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"56cd4f0cc718","ts":"2026-09-21T14:30:00.347659+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"held 143.5s, plan says PASS; stop 8.76, target 8.95 (premarket_high), R:R 0.36; R:R 0.36 < 2.0 at 8.90; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.7596,"target":8.95,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":131.1,"room_to_5d_high_atr":-0.41},"price":8.9,"vwap":8.8771,"ext_from_open_pct":1.95,"max_ext_allowed_pct":3.0,"volume_pace":1.38,"trend":"flat","recent_slope_pct":0.0112,"volatility":"high"},"price":8.9,"volume":{"bars":60,"last_bar_volume":2220.0,"baseline_avg":7407.05,"bar_rvol":0.299714,"raw_accel":-0.584503,"smooth_accel":4.098812,"accel_momentum":3.27839,"rvol_3bar":[4.196079,0.7217,0.299714],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":1005.0,"sell_vol":686.0,"unclassified_vol":0.0,"imbalance":0.188646,"bid":8.88,"ask":8.92,"spread_pct":0.449438,"quote_size_imbalance":null,"quote_age_s":0.328534},"context":{"vwap":8.877092,"price_vs_vwap_pct":0.258052,"ema9":8.895594,"ema20":8.888095,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.874311,"dist_to_hod_atr":4.203695,"atr":0.040441,"spread_atr":0.989105,"own_change_pct":-0.143775,"rel_strength_pct":{"SPY":-0.144204,"IWM":-0.224219}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.05654},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"110bbaf0836f","ts":"2026-09-21T14:30:05.699219+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7296,"target":8.95,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.36},"price":8.87,"vwap":8.8771,"ext_from_open_pct":1.6,"max_ext_allowed_pct":3.0,"volume_pace":1.379,"trend":"flat","recent_slope_pct":-0.0562,"volatility":"high"},"price":8.87,"volume":{"bars":60,"last_bar_volume":2220.0,"baseline_avg":7407.05,"bar_rvol":0.299714,"raw_accel":-0.584503,"smooth_accel":4.098812,"accel_momentum":3.27839,"rvol_3bar":[4.196079,0.7217,0.299714],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":1025.0,"sell_vol":1191.0,"unclassified_vol":0.0,"imbalance":-0.07491,"bid":8.87,"ask":8.91,"spread_pct":0.449944,"quote_size_imbalance":null,"quote_age_s":0.006879},"context":{"vwap":8.877092,"price_vs_vwap_pct":-0.079896,"ema9":8.895594,"ema20":8.888095,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.205072,"dist_to_hod_atr":4.945524,"atr":0.040441,"spread_atr":0.989105,"own_change_pct":-0.143775,"rel_strength_pct":{"SPY":-0.144204,"IWM":-0.224219}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.022452},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"58805718c08f","ts":"2026-09-21T14:30:05.699219+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 569.6s, plan says WATCH; stop 10.56, target 11.14 (premarket_high), R:R 0.41; R:R 0.41 < 2.0 at 10.97; breakout: 1-min close > 11.01 on >= 571476 sh","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.14,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":109.1,"room_to_5d_high_atr":-0.21},"price":10.9699,"vwap":10.7524,"ext_from_open_pct":-0.09,"max_ext_allowed_pct":4.0,"volume_pace":0.921,"trend":"flat","recent_slope_pct":0.2092,"volatility":"medium"},"price":10.9699,"volume":{"bars":60,"last_bar_volume":317787.0,"baseline_avg":239919.8,"bar_rvol":1.324555,"raw_accel":0.243921,"smooth_accel":0.27452,"accel_momentum":0.03755,"rvol_3bar":[2.275505,1.040042,1.324555],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":348,"trade_rate":11.6,"buy_vol":249520.0,"sell_vol":45410.0,"unclassified_vol":0.0,"imbalance":0.692063,"bid":10.96,"ask":10.97,"spread_pct":0.091199,"quote_size_imbalance":null,"quote_age_s":0.397497},"context":{"vwap":10.751501,"price_vs_vwap_pct":2.031332,"ema9":10.870371,"ema20":10.809978,"ema_stack":true,"ema_warm":true,"hod":11.0,"dist_to_hod_pct":-0.273636,"dist_to_hod_atr":0.428102,"atr":0.07031,"spread_atr":0.142227,"own_change_pct":0.994263,"rel_strength_pct":{"SPY":0.993834,"IWM":0.913819}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.916675},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"37d07d6e6fc0","ts":"2026-09-21T14:30:11.109335+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7546,"target":8.95,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":130.4,"room_to_5d_high_atr":-0.4},"price":8.895,"vwap":8.8771,"ext_from_open_pct":1.89,"max_ext_allowed_pct":3.0,"volume_pace":1.377,"trend":"flat","recent_slope_pct":-0.0,"volatility":"high"},"price":8.895,"volume":{"bars":60,"last_bar_volume":2220.0,"baseline_avg":7407.05,"bar_rvol":0.299714,"raw_accel":-0.584503,"smooth_accel":4.098812,"accel_momentum":3.27839,"rvol_3bar":[4.196079,0.7217,0.299714],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":957.0,"sell_vol":1226.0,"unclassified_vol":0.0,"imbalance":-0.123225,"bid":8.87,"ask":8.92,"spread_pct":0.562114,"quote_size_imbalance":null,"quote_age_s":2.678459},"context":{"vwap":8.877092,"price_vs_vwap_pct":0.201727,"ema9":8.895594,"ema20":8.888095,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.929438,"dist_to_hod_atr":4.327333,"atr":0.040441,"spread_atr":1.236381,"own_change_pct":-0.143775,"rel_strength_pct":{"SPY":-0.144204,"IWM":-0.224219}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.036932},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"834d29788ecb","ts":"2026-09-21T14:30:36.783492+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2,"target":9.09,"target_label":"range_20d_high","reward_risk":6.42,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.32,"vwap":8.2067,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":6.156,"trend":"flat","recent_slope_pct":-0.0359,"volatility":"unknown"},"price":8.32,"volume":{"bars":60,"last_bar_volume":2267.0,"baseline_avg":4387.6,"bar_rvol":0.516683,"raw_accel":-0.20845,"smooth_accel":-0.275798,"accel_momentum":-0.683708,"rvol_3bar":[0.161912,0.663693,0.516683],"trend_3bar":"MIXED","projected_rvol":0.225663},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":99.0,"sell_vol":288.0,"unclassified_vol":0.0,"imbalance":-0.488372,"bid":8.31,"ask":8.37,"spread_pct":0.719424,"quote_size_imbalance":null,"quote_age_s":0.71688},"context":{"vwap":8.206572,"price_vs_vwap_pct":1.382163,"ema9":8.373684,"ema20":8.362714,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.030303,"dist_to_hod_atr":2.770731,"atr":0.093838,"spread_atr":0.639399,"own_change_pct":-0.710059,"rel_strength_pct":{"SPY":-0.710488,"IWM":-0.790503}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.252334},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"df7e8a217456","ts":"2026-09-21T14:30:41.919051+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7296,"target":8.95,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.36},"price":8.87,"vwap":8.8771,"ext_from_open_pct":1.6,"max_ext_allowed_pct":4.0,"volume_pace":1.367,"trend":"flat","recent_slope_pct":-0.0562,"volatility":"high"},"price":8.87,"volume":{"bars":60,"last_bar_volume":2220.0,"baseline_avg":7407.05,"bar_rvol":0.299714,"raw_accel":-0.584503,"smooth_accel":4.098812,"accel_momentum":3.27839,"rvol_3bar":[4.196079,0.7217,0.299714],"trend_3bar":"DECELERATING","projected_rvol":0.44329},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1328.0,"sell_vol":377.0,"unclassified_vol":0.0,"imbalance":0.557771,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":5.57608},"context":{"vwap":8.877092,"price_vs_vwap_pct":-0.079896,"ema9":8.895594,"ema20":8.888095,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.205072,"dist_to_hod_atr":4.945524,"atr":0.040441,"spread_atr":0.741829,"own_change_pct":-0.143775,"rel_strength_pct":{"SPY":-0.144204,"IWM":-0.224219}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.167172},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a0fecafe5a15","ts":"2026-09-21T14:30:47.014719+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.20% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.15,"target":9.09,"target_label":"range_20d_high","reward_risk":3.7,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.35,"vwap":8.2072,"ext_from_open_pct":4.24,"max_ext_allowed_pct":4.0,"volume_pace":6.161,"trend":"flat","recent_slope_pct":0.0359,"volatility":"unknown"},"price":8.35,"volume":{"bars":60,"last_bar_volume":2267.0,"baseline_avg":4387.6,"bar_rvol":0.516683,"raw_accel":-0.20845,"smooth_accel":-0.275798,"accel_momentum":-0.683708,"rvol_3bar":[0.161912,0.663693,0.516683],"trend_3bar":"MIXED","projected_rvol":0.77748},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":393.0,"sell_vol":2038.0,"unclassified_vol":0.0,"imbalance":-0.676676,"bid":8.3,"ask":8.4,"spread_pct":1.197605,"quote_size_imbalance":null,"quote_age_s":4.498381},"context":{"vwap":8.206572,"price_vs_vwap_pct":1.747723,"ema9":8.373684,"ema20":8.362714,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.680653,"dist_to_hod_atr":2.451031,"atr":0.093838,"spread_atr":1.065666,"own_change_pct":-0.710059,"rel_strength_pct":{"SPY":-0.710488,"IWM":-0.790503}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.349627},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"698811d40523","ts":"2026-09-21T14:30:47.014719+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7446,"target":8.95,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":129.1,"room_to_5d_high_atr":-0.38},"price":8.885,"vwap":8.8771,"ext_from_open_pct":1.78,"max_ext_allowed_pct":3.0,"volume_pace":1.366,"trend":"flat","recent_slope_pct":-0.0225,"volatility":"high"},"price":8.885,"volume":{"bars":60,"last_bar_volume":2220.0,"baseline_avg":7407.05,"bar_rvol":0.299714,"raw_accel":-0.584503,"smooth_accel":4.098812,"accel_momentum":3.27839,"rvol_3bar":[4.196079,0.7217,0.299714],"trend_3bar":"DECELERATING","projected_rvol":0.406616},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":682.0,"sell_vol":348.0,"unclassified_vol":0.0,"imbalance":0.324272,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":10.671748},"context":{"vwap":8.877092,"price_vs_vwap_pct":0.089078,"ema9":8.895594,"ema20":8.888095,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.039691,"dist_to_hod_atr":4.574609,"atr":0.040441,"spread_atr":0.741829,"own_change_pct":-0.143775,"rel_strength_pct":{"SPY":-0.144204,"IWM":-0.224219}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.097189},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"d560bbb158e6","ts":"2026-09-21T14:30:57.129502+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 364.2s, plan says PASS; stop 8.99, target 9.13 (ceiling), R:R 0.63; R:R 0.63 < 2.0 at 9.07; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9885,"target":9.1299,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.075,"vwap":9.0133,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":1.84,"trend":"flat","recent_slope_pct":0.0438,"volatility":"medium"},"price":9.075,"volume":{"bars":60,"last_bar_volume":124451.0,"baseline_avg":25932.45,"bar_rvol":4.799045,"raw_accel":18.196181,"smooth_accel":1.742062,"accel_momentum":1.277204,"rvol_3bar":[0.908725,0.2073,4.799045],"trend_3bar":"MIXED","projected_rvol":2.926397},"flow":{"window_s":30,"trades":299,"trade_rate":9.966667,"buy_vol":32404.0,"sell_vol":29065.0,"unclassified_vol":0.0,"imbalance":0.05432,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.026715},"context":{"vwap":9.011536,"price_vs_vwap_pct":0.704257,"ema9":9.07921,"ema20":9.072237,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.601321,"dist_to_hod_atr":1.666232,"atr":0.032949,"spread_atr":0.303503,"own_change_pct":0.242416,"rel_strength_pct":{"SPY":0.241987,"IWM":0.161973}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.260684},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"48e572eb3591","ts":"2026-09-21T14:31:02.247589+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 369.3s, plan says WATCH; stop 8.99, target 9.25 (clear air (typical 60-min move)), R:R 2.01; breakout: 1-min close > 9.14 on >= 57692 sh","plan":{"state":"WATCH","setup":"","stop":8.9935,"target":9.2535,"target_label":"clear air (typical 60-min move)","reward_risk":2.01,"pos_in_5d_range_pct":131.8,"room_to_5d_high_atr":-1.01},"price":9.08,"vwap":9.0133,"ext_from_open_pct":0.67,"max_ext_allowed_pct":3.0,"volume_pace":1.837,"trend":"flat","recent_slope_pct":-0.0051,"volatility":"medium"},"price":9.08,"volume":{"bars":61,"last_bar_volume":72267.0,"baseline_avg":27758.65,"bar_rvol":2.603405,"raw_accel":-0.419314,"smooth_accel":1.95318,"accel_momentum":0.211117,"rvol_3bar":[0.2073,4.799045,2.603405],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":298,"trade_rate":9.933333,"buy_vol":32270.0,"sell_vol":28699.0,"unclassified_vol":0.0,"imbalance":0.058571,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.051894},"context":{"vwap":9.013342,"price_vs_vwap_pct":0.739545,"ema9":9.078368,"ema20":9.0725,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.546556,"dist_to_hod_atr":1.524223,"atr":0.032738,"spread_atr":0.305456,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.109521,"IWM":0.022859}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.152483},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e6c97c05bfdd","ts":"2026-09-21T14:31:12.588943+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 379.6s, plan says PASS; stop 8.99, target 9.13 (ceiling), R:R 0.63; R:R 0.63 < 2.0 at 9.07; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9885,"target":9.1299,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.075,"vwap":9.0134,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":1.835,"trend":"flat","recent_slope_pct":-0.0161,"volatility":"medium"},"price":9.075,"volume":{"bars":61,"last_bar_volume":72267.0,"baseline_avg":27758.65,"bar_rvol":2.603405,"raw_accel":-0.419314,"smooth_accel":1.95318,"accel_momentum":0.211117,"rvol_3bar":[0.2073,4.799045,2.603405],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":266,"trade_rate":8.866667,"buy_vol":27155.0,"sell_vol":27238.0,"unclassified_vol":0.0,"imbalance":-0.001526,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":1.054215},"context":{"vwap":9.013342,"price_vs_vwap_pct":0.684072,"ema9":9.078368,"ema20":9.0725,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.601321,"dist_to_hod_atr":1.676951,"atr":0.032738,"spread_atr":0.305456,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.109521,"IWM":0.022859}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.003973},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8ca1f38bbfbf","ts":"2026-09-21T14:31:12.588943+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7296,"target":8.95,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.36},"price":8.87,"vwap":8.8771,"ext_from_open_pct":1.6,"max_ext_allowed_pct":3.0,"volume_pace":1.357,"trend":"flat","recent_slope_pct":-0.0444,"volatility":"high"},"price":8.87,"volume":{"bars":61,"last_bar_volume":2482.0,"baseline_avg":7444.55,"bar_rvol":0.333398,"raw_accel":0.118018,"smooth_accel":-0.685475,"accel_momentum":-4.784286,"rvol_3bar":[0.7217,0.299714,0.333398],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":305.0,"sell_vol":332.0,"unclassified_vol":0.0,"imbalance":-0.042386,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":1.462833},"context":{"vwap":8.877134,"price_vs_vwap_pct":-0.080367,"ema9":8.894575,"ema20":8.888324,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.205072,"dist_to_hod_atr":4.864253,"atr":0.041116,"spread_atr":0.729638,"own_change_pct":-0.076428,"rel_strength_pct":{"SPY":-0.077221,"IWM":-0.163883}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.014131},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c5a55ab974ec","ts":"2026-09-21T14:31:17.716933+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 384.7s, plan says WATCH; stop 9.00, target 9.26 (clear air (typical 60-min move)), R:R 2.04; breakout: 1-min close > 9.14 on >= 57692 sh","plan":{"state":"WATCH","setup":"","stop":8.9997,"target":9.2628,"target_label":"clear air (typical 60-min move)","reward_risk":2.04,"pos_in_5d_range_pct":132.4,"room_to_5d_high_atr":-1.03},"price":9.0862,"vwap":9.0135,"ext_from_open_pct":0.73,"max_ext_allowed_pct":3.0,"volume_pace":1.833,"trend":"flat","recent_slope_pct":0.0086,"volatility":"medium"},"price":9.0862,"volume":{"bars":61,"last_bar_volume":72267.0,"baseline_avg":27758.65,"bar_rvol":2.603405,"raw_accel":-0.419314,"smooth_accel":1.95318,"accel_momentum":0.211117,"rvol_3bar":[0.2073,4.799045,2.603405],"trend_3bar":"MIXED","projected_rvol":0.606468},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":2843.0,"sell_vol":13867.0,"unclassified_vol":0.0,"imbalance":-0.659725,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":2.034896},"context":{"vwap":9.013342,"price_vs_vwap_pct":0.808332,"ema9":9.078368,"ema20":9.0725,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.478647,"dist_to_hod_atr":1.334841,"atr":0.032738,"spread_atr":0.305456,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.109521,"IWM":0.022859}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.71753},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f25490489e78","ts":"2026-09-21T14:31:22.873487+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 389.9s, plan says PASS; stop 8.99, target 9.13 (ceiling), R:R 0.63; R:R 0.63 < 2.0 at 9.07; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9885,"target":9.1299,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.075,"vwap":9.0135,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":1.83,"trend":"flat","recent_slope_pct":-0.0161,"volatility":"medium"},"price":9.075,"volume":{"bars":61,"last_bar_volume":72267.0,"baseline_avg":27758.65,"bar_rvol":2.603405,"raw_accel":-0.419314,"smooth_accel":1.95318,"accel_momentum":0.211117,"rvol_3bar":[0.2073,4.799045,2.603405],"trend_3bar":"MIXED","projected_rvol":0.482032},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":1511.0,"sell_vol":5221.0,"unclassified_vol":0.0,"imbalance":-0.551099,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":1.312637},"context":{"vwap":9.013342,"price_vs_vwap_pct":0.684072,"ema9":9.078368,"ema20":9.0725,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.601321,"dist_to_hod_atr":1.676951,"atr":0.032738,"spread_atr":0.305456,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.109521,"IWM":0.022859}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.434734},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9f6df7ca1741","ts":"2026-09-21T14:31:22.873487+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7422,"target":8.95,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-0.38},"price":8.8826,"vwap":8.8771,"ext_from_open_pct":1.75,"max_ext_allowed_pct":3.0,"volume_pace":1.353,"trend":"flat","recent_slope_pct":-0.0161,"volatility":"high"},"price":8.8826,"volume":{"bars":61,"last_bar_volume":2482.0,"baseline_avg":7444.55,"bar_rvol":0.333398,"raw_accel":0.118018,"smooth_accel":-0.685475,"accel_momentum":-4.784286,"rvol_3bar":[0.7217,0.299714,0.333398],"trend_3bar":"MIXED","projected_rvol":0.229383},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":316.0,"sell_vol":457.0,"unclassified_vol":0.0,"imbalance":-0.182406,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":11.747377},"context":{"vwap":8.877134,"price_vs_vwap_pct":0.06157,"ema9":8.894575,"ema20":8.888324,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.066152,"dist_to_hod_atr":4.557805,"atr":0.041116,"spread_atr":0.729638,"own_change_pct":-0.076428,"rel_strength_pct":{"SPY":-0.077221,"IWM":-0.163883}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.060814},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3d5ede5184af","ts":"2026-09-21T14:31:27.991582+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 395.0s, plan says WATCH; stop 9.00, target 9.26 (clear air (typical 60-min move)), R:R 2.05; breakout: 1-min close > 9.14 on >= 57692 sh","plan":{"state":"WATCH","setup":"","stop":9.0005,"target":9.2639,"target_label":"clear air (typical 60-min move)","reward_risk":2.05,"pos_in_5d_range_pct":132.5,"room_to_5d_high_atr":-1.03},"price":9.087,"vwap":9.0135,"ext_from_open_pct":0.74,"max_ext_allowed_pct":4.0,"volume_pace":1.828,"trend":"flat","recent_slope_pct":0.0103,"volatility":"medium"},"price":9.087,"volume":{"bars":61,"last_bar_volume":72267.0,"baseline_avg":27758.65,"bar_rvol":2.603405,"raw_accel":-0.419314,"smooth_accel":1.95318,"accel_momentum":0.211117,"rvol_3bar":[0.2073,4.799045,2.603405],"trend_3bar":"MIXED","projected_rvol":0.433354},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":1194.0,"sell_vol":4424.0,"unclassified_vol":0.0,"imbalance":-0.574938,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":2.607421},"context":{"vwap":9.013342,"price_vs_vwap_pct":0.817208,"ema9":9.078368,"ema20":9.0725,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.469885,"dist_to_hod_atr":1.310405,"atr":0.032738,"spread_atr":0.305456,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.109521,"IWM":0.022859}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.496796},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ab3d1309e8a5","ts":"2026-09-21T14:31:33.183715+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 400.2s, plan says PASS; stop 8.99, target 9.13 (ceiling), R:R 0.63; R:R 0.63 < 2.0 at 9.07; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9885,"target":9.1299,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.075,"vwap":9.0135,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":1.826,"trend":"flat","recent_slope_pct":-0.0161,"volatility":"medium"},"price":9.075,"volume":{"bars":61,"last_bar_volume":72267.0,"baseline_avg":27758.65,"bar_rvol":2.603405,"raw_accel":-0.419314,"smooth_accel":1.95318,"accel_momentum":0.211117,"rvol_3bar":[0.2073,4.799045,2.603405],"trend_3bar":"MIXED","projected_rvol":0.383918},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":1213.0,"sell_vol":4680.0,"unclassified_vol":0.0,"imbalance":-0.588325,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":1.5902},"context":{"vwap":9.013342,"price_vs_vwap_pct":0.684072,"ema9":9.078368,"ema20":9.0725,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.601321,"dist_to_hod_atr":1.676951,"atr":0.032738,"spread_atr":0.305456,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.109521,"IWM":0.022859}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.531648},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"052da52976f4","ts":"2026-09-21T14:31:33.183715+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.86 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7196,"target":8.95,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":125.7,"room_to_5d_high_atr":-0.34},"price":8.86,"vwap":8.8771,"ext_from_open_pct":1.49,"max_ext_allowed_pct":3.0,"volume_pace":1.355,"trend":"flat","recent_slope_pct":-0.067,"volatility":"high"},"price":8.86,"volume":{"bars":61,"last_bar_volume":2482.0,"baseline_avg":7444.55,"bar_rvol":0.333398,"raw_accel":0.118018,"smooth_accel":-0.685475,"accel_momentum":-4.784286,"rvol_3bar":[0.7217,0.299714,0.333398],"trend_3bar":"MIXED","projected_rvol":1.167514},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1135.0,"sell_vol":3375.0,"unclassified_vol":0.0,"imbalance":-0.496674,"bid":8.86,"ask":8.89,"spread_pct":0.338028,"quote_size_imbalance":null,"quote_age_s":2.154107},"context":{"vwap":8.877134,"price_vs_vwap_pct":-0.193016,"ema9":8.894575,"ema20":8.888324,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.315325,"dist_to_hod_atr":5.107466,"atr":0.041116,"spread_atr":0.729638,"own_change_pct":-0.076428,"rel_strength_pct":{"SPY":-0.077221,"IWM":-0.163883}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.16559},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"eb328869fc07","ts":"2026-09-21T14:32:03.884383+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.2% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.1081,"target":9.26,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":311.8,"room_to_5d_high_atr":-4.6},"price":9.225,"vwap":9.1255,"ext_from_open_pct":6.16,"max_ext_allowed_pct":4.0,"volume_pace":14.074,"trend":"flat","recent_slope_pct":0.0924,"volatility":"medium"},"price":9.225,"volume":{"bars":62,"last_bar_volume":69146.0,"baseline_avg":154027.85,"bar_rvol":0.448919,"raw_accel":-0.506474,"smooth_accel":-0.532818,"accel_momentum":0.08148,"rvol_3bar":[0.70811,0.879495,0.448919],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":167,"trade_rate":5.566667,"buy_vol":28362.0,"sell_vol":14296.0,"unclassified_vol":0.0,"imbalance":0.329739,"bid":9.22,"ask":9.23,"spread_pct":0.108401,"quote_size_imbalance":null,"quote_age_s":0.14999},"context":{"vwap":9.125457,"price_vs_vwap_pct":1.090829,"ema9":9.21501,"ema20":9.197139,"ema_stack":true,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.304979,"dist_to_hod_atr":4.457073,"atr":0.09311,"spread_atr":0.107399,"own_change_pct":-0.241211,"rel_strength_pct":{"SPY":-0.249025,"IWM":-0.255201}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.148026},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7af5beb33ffb","ts":"2026-09-21T14:32:03.884383+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 430.9s, plan says WATCH; stop 9.00, target 9.23 (clear air (typical 60-min move)), R:R 1.68; R:R 1.68 < 2.0 at 9.09; breakout: 1-min close > 9.14 on >= 56482 sh","plan":{"state":"WATCH","setup":"","stop":9.0003,"target":9.2318,"target_label":"clear air (typical 60-min move)","reward_risk":1.68,"pos_in_5d_range_pct":132.4,"room_to_5d_high_atr":-1.03},"price":9.0868,"vwap":9.0139,"ext_from_open_pct":0.74,"max_ext_allowed_pct":3.0,"volume_pace":1.822,"trend":"flat","recent_slope_pct":-0.0197,"volatility":"medium"},"price":9.0868,"volume":{"bars":62,"last_bar_volume":19406.0,"baseline_avg":28362.8,"bar_rvol":0.684206,"raw_accel":-0.731468,"smooth_accel":2.83777,"accel_momentum":0.88459,"rvol_3bar":[4.799045,2.603405,0.684206],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":1669.0,"sell_vol":15172.0,"unclassified_vol":0.0,"imbalance":-0.801793,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.019311},"context":{"vwap":9.013783,"price_vs_vwap_pct":0.810059,"ema9":9.077695,"ema20":9.072738,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.472075,"dist_to_hod_atr":1.361788,"atr":0.03165,"spread_atr":0.31596,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.1025,"IWM":0.096325}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.548592},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"9bd1d7ead4d5","ts":"2026-09-21T14:32:09.031479+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 436.1s, plan says PASS; stop 8.99, target 9.13 (ceiling), R:R 0.63; R:R 0.63 < 2.0 at 9.07; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9885,"target":9.1299,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.075,"vwap":9.0139,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":1.82,"trend":"flat","recent_slope_pct":-0.0457,"volatility":"medium"},"price":9.075,"volume":{"bars":62,"last_bar_volume":19406.0,"baseline_avg":28362.8,"bar_rvol":0.684206,"raw_accel":-0.731468,"smooth_accel":2.83777,"accel_momentum":0.88459,"rvol_3bar":[4.799045,2.603405,0.684206],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":1613.0,"sell_vol":14603.0,"unclassified_vol":0.0,"imbalance":-0.801061,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.076174},"context":{"vwap":9.013783,"price_vs_vwap_pct":0.679149,"ema9":9.077695,"ema20":9.072738,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.601321,"dist_to_hod_atr":1.734622,"atr":0.03165,"spread_atr":0.31596,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.1025,"IWM":0.096325}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.548091},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"da6b27e600f1","ts":"2026-09-21T14:32:14.139497+00:00","symbol":"SECZ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.38,"target":12.0,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":118.0,"room_to_5d_high_atr":-0.8},"price":11.725,"vwap":11.526,"ext_from_open_pct":0.47,"max_ext_allowed_pct":4.0,"volume_pace":0.402,"trend":"flat","recent_slope_pct":0.4493,"volatility":"high"},"price":11.725,"volume":{"bars":62,"last_bar_volume":5500.0,"baseline_avg":9564.55,"bar_rvol":0.57504,"raw_accel":1.140911,"smooth_accel":0.209037,"accel_momentum":0.346862,"rvol_3bar":[0.912369,0.257628,0.57504],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":9378.0,"sell_vol":1787.0,"unclassified_vol":0.0,"imbalance":0.679893,"bid":11.69,"ask":11.71,"spread_pct":0.17094,"quote_size_imbalance":null,"quote_age_s":0.394698},"context":{"vwap":11.524813,"price_vs_vwap_pct":1.73701,"ema9":11.535945,"ema20":11.532545,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-2.128548,"dist_to_hod_atr":2.728747,"atr":0.093449,"spread_atr":0.214019,"own_change_pct":0.781929,"rel_strength_pct":{"SPY":0.774115,"IWM":0.767939}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.390965},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1414ee7c6d64","ts":"2026-09-21T14:32:14.139497+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 441.2s, plan says WATCH; stop 9.00, target 9.23 (clear air (typical 60-min move)), R:R 1.68; R:R 1.68 < 2.0 at 9.09; breakout: 1-min close > 9.14 on >= 56482 sh","plan":{"state":"WATCH","setup":"","stop":9.0004,"target":9.2319,"target_label":"clear air (typical 60-min move)","reward_risk":1.68,"pos_in_5d_range_pct":132.4,"room_to_5d_high_atr":-1.03},"price":9.0869,"vwap":9.0139,"ext_from_open_pct":0.74,"max_ext_allowed_pct":3.0,"volume_pace":1.818,"trend":"flat","recent_slope_pct":-0.0195,"volatility":"medium"},"price":9.0869,"volume":{"bars":62,"last_bar_volume":19406.0,"baseline_avg":28362.8,"bar_rvol":0.684206,"raw_accel":-0.731468,"smooth_accel":2.83777,"accel_momentum":0.88459,"rvol_3bar":[4.799045,2.603405,0.684206],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":1474.0,"sell_vol":14804.0,"unclassified_vol":0.0,"imbalance":-0.818897,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.303572},"context":{"vwap":9.013783,"price_vs_vwap_pct":0.811169,"ema9":9.077695,"ema20":9.072738,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.47098,"dist_to_hod_atr":1.358629,"atr":0.03165,"spread_atr":0.31596,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.1025,"IWM":0.096325}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.560294},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"8a9af68a8d8e","ts":"2026-09-21T14:32:19.227394+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 446.3s, plan says PASS; stop 8.99, target 9.13 (ceiling), R:R 0.63; R:R 0.63 < 2.0 at 9.07; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9885,"target":9.1299,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":131.4,"room_to_5d_high_atr":-1.0},"price":9.075,"vwap":9.0139,"ext_from_open_pct":0.61,"max_ext_allowed_pct":4.0,"volume_pace":1.817,"trend":"flat","recent_slope_pct":-0.0457,"volatility":"medium"},"price":9.075,"volume":{"bars":62,"last_bar_volume":19406.0,"baseline_avg":28362.8,"bar_rvol":0.684206,"raw_accel":-0.731468,"smooth_accel":2.83777,"accel_momentum":0.88459,"rvol_3bar":[4.799045,2.603405,0.684206],"trend_3bar":"DECELERATING","projected_rvol":0.817578},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":2834.0,"sell_vol":14732.0,"unclassified_vol":0.0,"imbalance":-0.677331,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.019393},"context":{"vwap":9.013783,"price_vs_vwap_pct":0.679149,"ema9":9.077695,"ema20":9.072738,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.601321,"dist_to_hod_atr":1.734622,"atr":0.03165,"spread_atr":0.31596,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.1025,"IWM":0.096325}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.463434},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ed2eca5050d4","ts":"2026-09-21T14:32:19.227394+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 703.1s, plan says PASS; stop 10.56, target 11.03 (ceiling), R:R 0.27; R:R 0.27 < 2.0 at 10.93; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.27,"pos_in_5d_range_pct":105.9,"room_to_5d_high_atr":-0.14},"price":10.9309,"vwap":10.7691,"ext_from_open_pct":-0.45,"max_ext_allowed_pct":3.0,"volume_pace":0.961,"trend":"flat","recent_slope_pct":0.0657,"volatility":"medium"},"price":10.9309,"volume":{"bars":62,"last_bar_volume":1100011.0,"baseline_avg":262511.3,"bar_rvol":4.190338,"raw_accel":0.533629,"smooth_accel":0.944375,"accel_momentum":0.767238,"rvol_3bar":[1.324555,2.99651,4.190338],"trend_3bar":"ACCELERATING","projected_rvol":1.879939},"flow":{"window_s":30,"trades":323,"trade_rate":10.766667,"buy_vol":107276.0,"sell_vol":70625.0,"unclassified_vol":0.0,"imbalance":0.206019,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":0.019906},"context":{"vwap":10.767852,"price_vs_vwap_pct":1.514209,"ema9":10.917421,"ema20":10.844406,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.898459,"dist_to_hod_atr":1.303436,"atr":0.07603,"spread_atr":0.131527,"own_change_pct":1.304456,"rel_strength_pct":{"SPY":1.296642,"IWM":1.290466}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.86329},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3a46193cc169","ts":"2026-09-21T14:32:24.371620+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.17,"target":9.09,"target_label":"range_20d_high","reward_risk":4.75,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.33,"vwap":8.2076,"ext_from_open_pct":4.0,"max_ext_allowed_pct":4.0,"volume_pace":6.024,"trend":"flat","recent_slope_pct":-0.0928,"volatility":"unknown"},"price":8.33,"volume":{"bars":62,"last_bar_volume":401.0,"baseline_avg":3744.9,"bar_rvol":0.107079,"raw_accel":-0.853543,"smooth_accel":-0.255577,"accel_momentum":-0.245388,"rvol_3bar":[0.516683,0.61016,0.107079],"trend_3bar":"MIXED","projected_rvol":1.102452},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":207.0,"sell_vol":1477.0,"unclassified_vol":0.0,"imbalance":-0.754157,"bid":8.3,"ask":8.38,"spread_pct":0.959233,"quote_size_imbalance":null,"quote_age_s":1.18731},"context":{"vwap":8.207261,"price_vs_vwap_pct":1.495491,"ema9":8.357677,"ema20":8.356846,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.913753,"dist_to_hod_atr":2.786096,"atr":0.089731,"spread_atr":0.891551,"own_change_pct":-0.62642,"rel_strength_pct":{"SPY":-0.634234,"IWM":-0.640409}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.080754},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"582595da497a","ts":"2026-09-21T14:32:24.371620+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 708.2s, plan says WATCH; stop 10.56, target 11.14 (premarket_high), R:R 0.29; R:R 0.29 < 2.0 at 11.01; breakout: 1-min close > 11.04 on >= 554240 sh","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.14,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":112.3,"room_to_5d_high_atr":-0.29},"price":11.0089,"vwap":10.7695,"ext_from_open_pct":0.26,"max_ext_allowed_pct":3.0,"volume_pace":0.96,"trend":"flat","recent_slope_pct":0.2077,"volatility":"medium"},"price":11.0089,"volume":{"bars":62,"last_bar_volume":1100011.0,"baseline_avg":262511.3,"bar_rvol":4.190338,"raw_accel":0.533629,"smooth_accel":0.944375,"accel_momentum":0.767238,"rvol_3bar":[1.324555,2.99651,4.190338],"trend_3bar":"ACCELERATING","projected_rvol":1.785119},"flow":{"window_s":30,"trades":321,"trade_rate":10.7,"buy_vol":119589.0,"sell_vol":84665.0,"unclassified_vol":0.0,"imbalance":0.170983,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":0.057271},"context":{"vwap":10.767852,"price_vs_vwap_pct":2.238588,"ema9":10.917421,"ema20":10.844406,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.191296,"dist_to_hod_atr":0.277523,"atr":0.07603,"spread_atr":0.131527,"own_change_pct":1.304456,"rel_strength_pct":{"SPY":1.296642,"IWM":1.290466}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.716477},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"82c12f35e2fd","ts":"2026-09-21T14:32:29.507565+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $8.01 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":8.1895,"target":9.09,"target_label":"range_20d_high","reward_risk":4.63,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3495,"vwap":8.2076,"ext_from_open_pct":4.24,"max_ext_allowed_pct":4.0,"volume_pace":6.016,"trend":"flat","recent_slope_pct":-0.046,"volatility":"unknown"},"price":8.3495,"volume":{"bars":62,"last_bar_volume":401.0,"baseline_avg":3744.9,"bar_rvol":0.107079,"raw_accel":-0.853543,"smooth_accel":-0.255577,"accel_momentum":-0.245388,"rvol_3bar":[0.516683,0.61016,0.107079],"trend_3bar":"MIXED","projected_rvol":0.943143},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":260.0,"sell_vol":1477.0,"unclassified_vol":0.0,"imbalance":-0.700633,"bid":8.3,"ask":8.38,"spread_pct":0.959233,"quote_size_imbalance":null,"quote_age_s":6.323255},"context":{"vwap":8.207261,"price_vs_vwap_pct":1.733085,"ema9":8.357677,"ema20":8.356846,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.68648,"dist_to_hod_atr":2.568781,"atr":0.089731,"spread_atr":0.891551,"own_change_pct":-0.62642,"rel_strength_pct":{"SPY":-0.634234,"IWM":-0.640409}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.075023},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"af6282f0f6f4","ts":"2026-09-21T14:32:34.627492+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.14,"target":9.09,"target_label":"range_20d_high","reward_risk":4.94,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3,"vwap":8.2078,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":6.021,"trend":"flat","recent_slope_pct":-0.1648,"volatility":"unknown"},"price":8.3,"volume":{"bars":62,"last_bar_volume":401.0,"baseline_avg":3744.9,"bar_rvol":0.107079,"raw_accel":-0.853543,"smooth_accel":-0.255577,"accel_momentum":-0.245388,"rvol_3bar":[0.516683,0.61016,0.107079],"trend_3bar":"MIXED","projected_rvol":1.383443},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":1013.0,"sell_vol":1977.0,"unclassified_vol":0.0,"imbalance":-0.322408,"bid":8.3,"ask":8.38,"spread_pct":0.959233,"quote_size_imbalance":null,"quote_age_s":11.443182},"context":{"vwap":8.207261,"price_vs_vwap_pct":1.129961,"ema9":8.357677,"ema20":8.356846,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.263403,"dist_to_hod_atr":3.120428,"atr":0.089731,"spread_atr":0.891551,"own_change_pct":-0.62642,"rel_strength_pct":{"SPY":-0.634234,"IWM":-0.640409}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.034523},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"24b6f3944321","ts":"2026-09-21T14:32:39.665640+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.40x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.38,"target":12.0,"target_label":"premarket_high","reward_risk":1.07,"pos_in_5d_range_pct":116.8,"room_to_5d_high_atr":-0.75},"price":11.68,"vwap":11.5258,"ext_from_open_pct":0.09,"max_ext_allowed_pct":3.0,"volume_pace":0.4,"trend":"flat","recent_slope_pct":0.3718,"volatility":"high"},"price":11.68,"volume":{"bars":62,"last_bar_volume":5500.0,"baseline_avg":9564.55,"bar_rvol":0.57504,"raw_accel":1.140911,"smooth_accel":0.209037,"accel_momentum":0.346862,"rvol_3bar":[0.912369,0.257628,0.57504],"trend_3bar":"MIXED","projected_rvol":1.86476},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":8841.0,"sell_vol":1926.0,"unclassified_vol":0.0,"imbalance":0.64224,"bid":11.66,"ask":11.7,"spread_pct":0.342466,"quote_size_imbalance":null,"quote_age_s":1.157744},"context":{"vwap":11.524813,"price_vs_vwap_pct":1.346548,"ema9":11.535945,"ema20":11.532545,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-2.504174,"dist_to_hod_atr":3.21029,"atr":0.093449,"spread_atr":0.428039,"own_change_pct":0.781929,"rel_strength_pct":{"SPY":0.774115,"IWM":0.767939}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.369314},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2beeb32fc2bf","ts":"2026-09-21T14:32:39.665640+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 466.7s, plan says WATCH; stop 8.99, target 9.22 (clear air (typical 60-min move)), R:R 1.68; R:R 1.68 < 2.0 at 9.08; breakout: 1-min close > 9.14 on >= 56482 sh","plan":{"state":"WATCH","setup":"","stop":8.9935,"target":9.225,"target_label":"clear air (typical 60-min move)","reward_risk":1.68,"pos_in_5d_range_pct":131.8,"room_to_5d_high_atr":-1.01},"price":9.08,"vwap":9.0141,"ext_from_open_pct":0.67,"max_ext_allowed_pct":3.0,"volume_pace":1.81,"trend":"flat","recent_slope_pct":-0.0347,"volatility":"medium"},"price":9.08,"volume":{"bars":62,"last_bar_volume":19406.0,"baseline_avg":28362.8,"bar_rvol":0.684206,"raw_accel":-0.731468,"smooth_accel":2.83777,"accel_momentum":0.88459,"rvol_3bar":[4.799045,2.603405,0.684206],"trend_3bar":"DECELERATING","projected_rvol":0.66489},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":4758.0,"sell_vol":3291.0,"unclassified_vol":0.0,"imbalance":0.182259,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.071609},"context":{"vwap":9.013783,"price_vs_vwap_pct":0.734619,"ema9":9.077695,"ema20":9.072738,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.546556,"dist_to_hod_atr":1.576641,"atr":0.03165,"spread_atr":0.31596,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.1025,"IWM":0.096325}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.124702},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"bb1c77bf9834","ts":"2026-09-21T14:32:44.767028+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 471.8s, plan says PASS; stop 8.99, target 9.13 (ceiling), R:R 0.60; R:R 0.60 < 2.0 at 9.08; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9912,"target":9.1299,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":131.6,"room_to_5d_high_atr":-1.0},"price":9.0777,"vwap":9.0141,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":1.809,"trend":"flat","recent_slope_pct":-0.0397,"volatility":"medium"},"price":9.0777,"volume":{"bars":62,"last_bar_volume":19406.0,"baseline_avg":28362.8,"bar_rvol":0.684206,"raw_accel":-0.731468,"smooth_accel":2.83777,"accel_momentum":0.88459,"rvol_3bar":[4.799045,2.603405,0.684206],"trend_3bar":"DECELERATING","projected_rvol":0.671771},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":4410.0,"sell_vol":4679.0,"unclassified_vol":0.0,"imbalance":-0.029596,"bid":9.07,"ask":9.08,"spread_pct":0.110193,"quote_size_imbalance":null,"quote_age_s":0.038409},"context":{"vwap":9.013783,"price_vs_vwap_pct":0.709103,"ema9":9.077695,"ema20":9.072738,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.571748,"dist_to_hod_atr":1.649312,"atr":0.03165,"spread_atr":0.31596,"own_change_pct":0.110314,"rel_strength_pct":{"SPY":0.1025,"IWM":0.096325}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.02025},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"5b4538ec0e15","ts":"2026-09-21T14:32:44.767028+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":124.2,"room_to_5d_high_atr":-0.76},"price":8.66,"vwap":8.5689,"ext_from_open_pct":0.46,"max_ext_allowed_pct":3.0,"volume_pace":1.35,"trend":"flat","recent_slope_pct":-0.0514,"volatility":"medium"},"price":8.66,"volume":{"bars":62,"last_bar_volume":2390.0,"baseline_avg":6159.5,"bar_rvol":0.388019,"raw_accel":0.552074,"smooth_accel":-0.656819,"accel_momentum":-0.512696,"rvol_3bar":[0.312531,0.067519,0.388019],"trend_3bar":"MIXED","projected_rvol":0.65213},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1205.0,"sell_vol":524.0,"unclassified_vol":0.0,"imbalance":0.393869,"bid":8.65,"ask":8.67,"spread_pct":0.230947,"quote_size_imbalance":null,"quote_age_s":0.266659},"context":{"vwap":8.568204,"price_vs_vwap_pct":1.071354,"ema9":8.675508,"ema20":8.648279,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.028571,"dist_to_hod_atr":1.9041,"atr":0.047266,"spread_atr":0.423133,"own_change_pct":0.008067,"rel_strength_pct":{"SPY":0.000253,"IWM":-0.005922}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.152829},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a008faa849cf","ts":"2026-09-21T14:33:05.173784+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.5748,"target":8.76,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.8},"price":8.6767,"vwap":8.569,"ext_from_open_pct":0.66,"max_ext_allowed_pct":3.0,"volume_pace":1.343,"trend":"flat","recent_slope_pct":-0.0129,"volatility":"medium"},"price":8.6767,"volume":{"bars":63,"last_bar_volume":3232.0,"baseline_avg":6102.95,"bar_rvol":0.52958,"raw_accel":0.352301,"smooth_accel":-0.583115,"accel_momentum":0.073704,"rvol_3bar":[0.067519,0.388019,0.52958],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":411.0,"sell_vol":320.0,"unclassified_vol":0.0,"imbalance":0.124487,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":11.172323},"context":{"vwap":8.568946,"price_vs_vwap_pct":1.257491,"ema9":8.671406,"ema20":8.648919,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.837714,"dist_to_hod_atr":1.571123,"atr":0.046655,"spread_atr":0.214341,"own_change_pct":-0.517241,"rel_strength_pct":{"SPY":-0.536744,"IWM":-0.525951}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.065926},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e79734425b68","ts":"2026-09-21T14:33:05.173784+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.57,"target":9.74,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":103.8,"room_to_5d_high_atr":-0.04},"price":9.685,"vwap":9.6747,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":4.0,"volume_pace":1.032,"trend":"flat","recent_slope_pct":0.1018,"volatility":"medium"},"price":9.685,"volume":{"bars":63,"last_bar_volume":20122.0,"baseline_avg":9160.45,"bar_rvol":2.196617,"raw_accel":2.019508,"smooth_accel":-0.169004,"accel_momentum":0.2144,"rvol_3bar":[0.854885,0.738197,2.196617],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":8201.0,"sell_vol":4627.0,"unclassified_vol":0.0,"imbalance":0.278609,"bid":9.68,"ask":9.69,"spread_pct":0.103252,"quote_size_imbalance":null,"quote_age_s":0.256826},"context":{"vwap":9.67467,"price_vs_vwap_pct":0.106776,"ema9":9.654615,"ema20":9.642257,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.475076,"dist_to_hod_atr":3.772488,"atr":0.038436,"spread_atr":0.260172,"own_change_pct":0.518941,"rel_strength_pct":{"SPY":0.499438,"IWM":0.510232}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.611998},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c41a9b7f8542","ts":"2026-09-21T14:33:10.213877+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":124.5,"room_to_5d_high_atr":-0.77},"price":8.665,"vwap":8.569,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":1.342,"trend":"flat","recent_slope_pct":-0.0399,"volatility":"medium"},"price":8.665,"volume":{"bars":63,"last_bar_volume":3232.0,"baseline_avg":6102.95,"bar_rvol":0.52958,"raw_accel":0.352301,"smooth_accel":-0.583115,"accel_momentum":0.073704,"rvol_3bar":[0.067519,0.388019,0.52958],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":580.0,"sell_vol":321.0,"unclassified_vol":0.0,"imbalance":0.287458,"bid":8.66,"ask":8.67,"spread_pct":0.115407,"quote_size_imbalance":null,"quote_age_s":0.822558},"context":{"vwap":8.568946,"price_vs_vwap_pct":1.120952,"ema9":8.671406,"ema20":8.648919,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.971429,"dist_to_hod_atr":1.821902,"atr":0.046655,"spread_atr":0.214341,"own_change_pct":-0.517241,"rel_strength_pct":{"SPY":-0.536744,"IWM":-0.525951}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.152232},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"216d94b280a4","ts":"2026-09-21T14:33:25.435436+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.48,"target":8.82,"target_label":"prev_day_high","reward_risk":0.39,"pos_in_5d_range_pct":73.9,"room_to_5d_high_atr":0.44},"price":8.7245,"vwap":8.5821,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":1.017,"trend":"flat","recent_slope_pct":-0.0822,"volatility":"medium"},"price":8.7245,"volume":{"bars":63,"last_bar_volume":24483.0,"baseline_avg":23668.25,"bar_rvol":1.034424,"raw_accel":-0.256333,"smooth_accel":-0.546416,"accel_momentum":0.033183,"rvol_3bar":[1.395704,1.45969,1.034424],"trend_3bar":"MIXED","projected_rvol":2.254339},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":17580.0,"sell_vol":5050.0,"unclassified_vol":0.0,"imbalance":0.55369,"bid":8.72,"ask":8.73,"spread_pct":0.114613,"quote_size_imbalance":null,"quote_age_s":1.760579},"context":{"vwap":8.580138,"price_vs_vwap_pct":1.682511,"ema9":8.740836,"ema20":8.693737,"ema_stack":false,"ema_warm":true,"hod":8.79,"dist_to_hod_pct":-0.745165,"dist_to_hod_atr":1.173371,"atr":0.055822,"spread_atr":0.179141,"own_change_pct":0.54389,"rel_strength_pct":{"SPY":0.524387,"IWM":0.535181}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.57275},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6dfc9e3493d0","ts":"2026-09-21T14:34:06.217449+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 553.2s, plan says WATCH; stop 9.00, target 9.23 (clear air (typical 60-min move)), R:R 1.68; R:R 1.68 < 2.0 at 9.09; breakout: 1-min close > 9.14 on >= 54277 sh","plan":{"state":"WATCH","setup":"","stop":9.0009,"target":9.2324,"target_label":"clear air (typical 60-min move)","reward_risk":1.68,"pos_in_5d_range_pct":132.5,"room_to_5d_high_atr":-1.03},"price":9.0874,"vwap":9.0144,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":1.78,"trend":"flat","recent_slope_pct":0.0218,"volatility":"medium"},"price":9.0874,"volume":{"bars":64,"last_bar_volume":12936.0,"baseline_avg":25153.5,"bar_rvol":0.514282,"raw_accel":-0.20433,"smooth_accel":-0.759814,"accel_momentum":-0.459184,"rvol_3bar":[0.684206,0.615512,0.514282],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":3587.0,"sell_vol":5614.0,"unclassified_vol":0.0,"imbalance":-0.220302,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":1.849935},"context":{"vwap":9.014412,"price_vs_vwap_pct":0.809678,"ema9":9.075725,"ema20":9.072672,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.465503,"dist_to_hod_atr":1.397258,"atr":0.030417,"spread_atr":0.328767,"own_change_pct":-0.160712,"rel_strength_pct":{"SPY":-0.172413,"IWM":-0.108271}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.113297},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"2422766ad109","ts":"2026-09-21T14:34:06.217449+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":123.0,"room_to_5d_high_atr":-0.72},"price":8.645,"vwap":8.5693,"ext_from_open_pct":0.29,"max_ext_allowed_pct":4.0,"volume_pace":1.327,"trend":"flat","recent_slope_pct":-0.107,"volatility":"medium"},"price":8.645,"volume":{"bars":64,"last_bar_volume":1520.0,"baseline_avg":6097.6,"bar_rvol":0.249278,"raw_accel":-0.529703,"smooth_accel":-0.260356,"accel_momentum":0.322759,"rvol_3bar":[0.388019,0.52958,0.249278],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":58.0,"sell_vol":21.0,"unclassified_vol":0.0,"imbalance":0.468354,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":8.536225},"context":{"vwap":8.56927,"price_vs_vwap_pct":0.883734,"ema9":8.666125,"ema20":8.648546,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.2,"dist_to_hod_atr":2.254225,"atr":0.046579,"spread_atr":0.214688,"own_change_pct":-0.460564,"rel_strength_pct":{"SPY":-0.472266,"IWM":-0.408124}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.116751},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e9ebc951be4f","ts":"2026-09-21T14:34:11.327233+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9735,"target":9.1299,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":130.0,"room_to_5d_high_atr":-0.95},"price":9.06,"vwap":9.0144,"ext_from_open_pct":0.44,"max_ext_allowed_pct":3.0,"volume_pace":1.778,"trend":"flat","recent_slope_pct":-0.0386,"volatility":"medium"},"price":9.06,"volume":{"bars":64,"last_bar_volume":12936.0,"baseline_avg":25153.5,"bar_rvol":0.514282,"raw_accel":-0.20433,"smooth_accel":-0.759814,"accel_momentum":-0.459184,"rvol_3bar":[0.684206,0.615512,0.514282],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":3337.0,"sell_vol":5639.0,"unclassified_vol":0.0,"imbalance":-0.256462,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":0.009573},"context":{"vwap":9.014412,"price_vs_vwap_pct":0.50572,"ema9":9.075725,"ema20":9.072672,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.765616,"dist_to_hod_atr":2.298079,"atr":0.030417,"spread_atr":0.328767,"own_change_pct":-0.160712,"rel_strength_pct":{"SPY":-0.172413,"IWM":-0.108271}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.131894},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a0ca49afd5f9","ts":"2026-09-21T14:34:16.411477+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 820.3s, plan says PASS; stop 10.56, target 11.03 (ceiling), R:R 0.20; R:R 0.20 < 2.0 at 10.95; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.2,"pos_in_5d_range_pct":107.7,"room_to_5d_high_atr":-0.18},"price":10.953,"vwap":10.7747,"ext_from_open_pct":-0.25,"max_ext_allowed_pct":3.0,"volume_pace":0.956,"trend":"flat","recent_slope_pct":-0.0806,"volatility":"medium"},"price":10.953,"volume":{"bars":64,"last_bar_volume":313490.0,"baseline_avg":314464.75,"bar_rvol":0.9969,"raw_accel":-0.316351,"smooth_accel":0.450622,"accel_momentum":-0.626558,"rvol_3bar":[4.190338,1.532675,0.9969],"trend_3bar":"DECELERATING","projected_rvol":0.459066},"flow":{"window_s":30,"trades":223,"trade_rate":7.433333,"buy_vol":44424.0,"sell_vol":66488.0,"unclassified_vol":0.0,"imbalance":-0.198932,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":0.37008},"context":{"vwap":10.77436,"price_vs_vwap_pct":1.658012,"ema9":10.94479,"ema20":10.871608,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.698096,"dist_to_hod_atr":1.0053,"atr":0.076594,"spread_atr":0.130558,"own_change_pct":0.460205,"rel_strength_pct":{"SPY":0.448504,"IWM":0.512646}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.198316},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"248b26ae4e2e","ts":"2026-09-21T14:34:21.511611+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 825.4s, plan says WATCH; stop 10.56, target 11.14 (premarket_high), R:R 0.40; R:R 0.40 < 2.0 at 10.97; breakout: 1-min close > 11.04 on >= 552837 sh","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.14,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":109.5,"room_to_5d_high_atr":-0.22},"price":10.975,"vwap":10.7747,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":-0.0406,"volatility":"medium"},"price":10.975,"volume":{"bars":64,"last_bar_volume":313490.0,"baseline_avg":314464.75,"bar_rvol":0.9969,"raw_accel":-0.316351,"smooth_accel":0.450622,"accel_momentum":-0.626558,"rvol_3bar":[4.190338,1.532675,0.9969],"trend_3bar":"DECELERATING","projected_rvol":0.412749},"flow":{"window_s":30,"trades":190,"trade_rate":6.333333,"buy_vol":27118.0,"sell_vol":46712.0,"unclassified_vol":0.0,"imbalance":-0.265393,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":0.075299},"context":{"vwap":10.77436,"price_vs_vwap_pct":1.8622,"ema9":10.94479,"ema20":10.871608,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.49864,"dist_to_hod_atr":0.718071,"atr":0.076594,"spread_atr":0.130558,"own_change_pct":0.460205,"rel_strength_pct":{"SPY":0.448504,"IWM":0.512646}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.264571},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"dff2d19e02d3","ts":"2026-09-21T14:34:47.197051+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 851.0s, plan says PASS; stop 10.56, target 11.03 (ceiling), R:R 0.17; R:R 0.17 < 2.0 at 10.96; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.17,"pos_in_5d_range_pct":108.3,"room_to_5d_high_atr":-0.19},"price":10.9601,"vwap":10.7755,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.952,"trend":"flat","recent_slope_pct":-0.0677,"volatility":"medium"},"price":10.9601,"volume":{"bars":64,"last_bar_volume":313490.0,"baseline_avg":314464.75,"bar_rvol":0.9969,"raw_accel":-0.316351,"smooth_accel":0.450622,"accel_momentum":-0.626558,"rvol_3bar":[4.190338,1.532675,0.9969],"trend_3bar":"DECELERATING","projected_rvol":0.577316},"flow":{"window_s":30,"trades":195,"trade_rate":6.5,"buy_vol":11093.0,"sell_vol":92148.0,"unclassified_vol":0.0,"imbalance":-0.785105,"bid":10.96,"ask":10.97,"spread_pct":0.091199,"quote_size_imbalance":null,"quote_age_s":1.531263},"context":{"vwap":10.77436,"price_vs_vwap_pct":1.723909,"ema9":10.94479,"ema20":10.871608,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.633726,"dist_to_hod_atr":0.912603,"atr":0.076594,"spread_atr":0.130558,"own_change_pct":0.460205,"rel_strength_pct":{"SPY":0.448504,"IWM":0.512646}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.782671},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0459ced46eaf","ts":"2026-09-21T14:34:52.313499+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 856.2s, plan says WATCH; stop 10.56, target 11.14 (premarket_high), R:R 0.41; R:R 0.41 < 2.0 at 10.97; breakout: 1-min close > 11.04 on >= 552837 sh","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.14,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":109.1,"room_to_5d_high_atr":-0.21},"price":10.97,"vwap":10.7756,"ext_from_open_pct":-0.09,"max_ext_allowed_pct":3.0,"volume_pace":0.951,"trend":"flat","recent_slope_pct":-0.0497,"volatility":"medium"},"price":10.97,"volume":{"bars":64,"last_bar_volume":313490.0,"baseline_avg":314464.75,"bar_rvol":0.9969,"raw_accel":-0.316351,"smooth_accel":0.450622,"accel_momentum":-0.626558,"rvol_3bar":[4.190338,1.532675,0.9969],"trend_3bar":"DECELERATING","projected_rvol":0.573282},"flow":{"window_s":30,"trades":214,"trade_rate":7.133333,"buy_vol":18391.0,"sell_vol":92164.0,"unclassified_vol":0.0,"imbalance":-0.667297,"bid":10.96,"ask":10.97,"spread_pct":0.091199,"quote_size_imbalance":null,"quote_age_s":0.121518},"context":{"vwap":10.77436,"price_vs_vwap_pct":1.815794,"ema9":10.94479,"ema20":10.871608,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.543971,"dist_to_hod_atr":0.78335,"atr":0.076594,"spread_atr":0.130558,"own_change_pct":0.460205,"rel_strength_pct":{"SPY":0.448504,"IWM":0.512646}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.665228},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"622e0aa204c9","ts":"2026-09-21T14:34:57.419523+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 861.3s, plan says PASS; stop 10.56, target 11.03 (ceiling), R:R 0.16; R:R 0.16 < 2.0 at 10.96; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.16,"pos_in_5d_range_pct":108.7,"room_to_5d_high_atr":-0.2},"price":10.965,"vwap":10.7758,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.951,"trend":"flat","recent_slope_pct":-0.0588,"volatility":"medium"},"price":10.965,"volume":{"bars":64,"last_bar_volume":313490.0,"baseline_avg":314464.75,"bar_rvol":0.9969,"raw_accel":-0.316351,"smooth_accel":0.450622,"accel_momentum":-0.626558,"rvol_3bar":[4.190338,1.532675,0.9969],"trend_3bar":"DECELERATING","projected_rvol":0.627656},"flow":{"window_s":30,"trades":216,"trade_rate":7.2,"buy_vol":46347.0,"sell_vol":85285.0,"unclassified_vol":0.0,"imbalance":-0.29581,"bid":10.96,"ask":10.97,"spread_pct":0.091199,"quote_size_imbalance":null,"quote_age_s":0.274883},"context":{"vwap":10.77436,"price_vs_vwap_pct":1.769387,"ema9":10.94479,"ema20":10.871608,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.589302,"dist_to_hod_atr":0.84863,"atr":0.076594,"spread_atr":0.130558,"own_change_pct":0.460205,"rel_strength_pct":{"SPY":0.448504,"IWM":0.512646}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.294893},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"13da016e2baf","ts":"2026-09-21T14:35:02.566918+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9906,"target":9.1299,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":131.6,"room_to_5d_high_atr":-1.0},"price":9.0771,"vwap":9.0146,"ext_from_open_pct":0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.76,"trend":"flat","recent_slope_pct":-0.0069,"volatility":"medium"},"price":9.0771,"volume":{"bars":65,"last_bar_volume":9912.0,"baseline_avg":25233.5,"bar_rvol":0.392811,"raw_accel":-0.233766,"smooth_accel":-0.819058,"accel_momentum":-0.059244,"rvol_3bar":[0.615512,0.514282,0.392811],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":4619.0,"sell_vol":3744.0,"unclassified_vol":0.0,"imbalance":0.104628,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":0.374594},"context":{"vwap":9.014595,"price_vs_vwap_pct":0.693372,"ema9":9.07348,"ema20":9.071894,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.57832,"dist_to_hod_atr":1.70788,"atr":0.030916,"spread_atr":0.323462,"own_change_pct":-0.360547,"rel_strength_pct":{"SPY":-0.378322,"IWM":-0.28716}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.041099},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7884cfae594b","ts":"2026-09-21T14:35:02.566918+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 866.4s, plan says WATCH; stop 10.56, target 11.14 (premarket_high), R:R 0.41; R:R 0.41 < 2.0 at 10.97; breakout: 1-min close > 11.04 on >= 551306 sh","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.14,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":109.1,"room_to_5d_high_atr":-0.21},"price":10.97,"vwap":10.7763,"ext_from_open_pct":-0.09,"max_ext_allowed_pct":3.0,"volume_pace":0.952,"trend":"flat","recent_slope_pct":-0.1278,"volatility":"medium"},"price":10.97,"volume":{"bars":65,"last_bar_volume":217087.0,"baseline_avg":314014.65,"bar_rvol":0.691328,"raw_accel":-0.307515,"smooth_accel":-0.536719,"accel_momentum":-0.987341,"rvol_3bar":[1.532675,0.9969,0.691328],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":223,"trade_rate":7.433333,"buy_vol":65825.0,"sell_vol":109264.0,"unclassified_vol":0.0,"imbalance":-0.248097,"bid":10.96,"ask":10.97,"spread_pct":0.091199,"quote_size_imbalance":null,"quote_age_s":0.071001},"context":{"vwap":10.776047,"price_vs_vwap_pct":1.79985,"ema9":10.949732,"ema20":10.880931,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.543971,"dist_to_hod_atr":0.803195,"atr":0.074702,"spread_atr":0.133866,"own_change_pct":0.178082,"rel_strength_pct":{"SPY":0.160307,"IWM":0.251469}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.171516},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"da80df0839e7","ts":"2026-09-21T14:35:07.815428+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9785,"target":9.1299,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-0.97},"price":9.065,"vwap":9.0146,"ext_from_open_pct":0.5,"max_ext_allowed_pct":3.0,"volume_pace":1.758,"trend":"flat","recent_slope_pct":-0.0336,"volatility":"medium"},"price":9.065,"volume":{"bars":65,"last_bar_volume":9912.0,"baseline_avg":25233.5,"bar_rvol":0.392811,"raw_accel":-0.233766,"smooth_accel":-0.819058,"accel_momentum":-0.059244,"rvol_3bar":[0.615512,0.514282,0.392811],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":4592.0,"sell_vol":3916.0,"unclassified_vol":0.0,"imbalance":0.079455,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":0.968082},"context":{"vwap":9.014595,"price_vs_vwap_pct":0.559145,"ema9":9.07348,"ema20":9.071894,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.710851,"dist_to_hod_atr":2.09927,"atr":0.030916,"spread_atr":0.323462,"own_change_pct":-0.360547,"rel_strength_pct":{"SPY":-0.378322,"IWM":-0.28716}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.031211},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b8131a2fa280","ts":"2026-09-21T14:35:07.815428+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":123.3,"room_to_5d_high_atr":-0.73},"price":8.6492,"vwap":8.5698,"ext_from_open_pct":0.34,"max_ext_allowed_pct":4.0,"volume_pace":1.313,"trend":"flat","recent_slope_pct":-0.0716,"volatility":"medium"},"price":8.6492,"volume":{"bars":65,"last_bar_volume":2142.0,"baseline_avg":6070.0,"bar_rvol":0.352883,"raw_accel":0.409211,"smooth_accel":0.423204,"accel_momentum":0.68356,"rvol_3bar":[0.52958,0.249278,0.352883],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":264.0,"sell_vol":356.0,"unclassified_vol":0.0,"imbalance":-0.148387,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":4.793151},"context":{"vwap":8.569734,"price_vs_vwap_pct":0.927281,"ema9":8.6629,"ema20":8.648684,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.152,"dist_to_hod_atr":2.129054,"atr":0.047345,"spread_atr":0.211216,"own_change_pct":-0.257141,"rel_strength_pct":{"SPY":-0.274916,"IWM":-0.183754}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.052363},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c9098c579039","ts":"2026-09-21T14:35:07.815428+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 871.7s, plan says PASS; stop 10.56, target 11.03 (ceiling), R:R 0.16; R:R 0.16 < 2.0 at 10.96; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.16,"pos_in_5d_range_pct":108.7,"room_to_5d_high_atr":-0.2},"price":10.965,"vwap":10.7763,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":4.0,"volume_pace":0.951,"trend":"flat","recent_slope_pct":-0.137,"volatility":"medium"},"price":10.965,"volume":{"bars":65,"last_bar_volume":217087.0,"baseline_avg":314014.65,"bar_rvol":0.691328,"raw_accel":-0.307515,"smooth_accel":-0.536719,"accel_momentum":-0.987341,"rvol_3bar":[1.532675,0.9969,0.691328],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":214,"trade_rate":7.133333,"buy_vol":64436.0,"sell_vol":111767.0,"unclassified_vol":0.0,"imbalance":-0.268616,"bid":10.96,"ask":10.97,"spread_pct":0.091199,"quote_size_imbalance":null,"quote_age_s":0.308823},"context":{"vwap":10.776047,"price_vs_vwap_pct":1.753451,"ema9":10.949732,"ema20":10.880931,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.589302,"dist_to_hod_atr":0.870128,"atr":0.074702,"spread_atr":0.133866,"own_change_pct":0.178082,"rel_strength_pct":{"SPY":0.160307,"IWM":0.251469}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.185702},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"7723524dccb6","ts":"2026-09-21T14:35:33.255719+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7446,"target":8.95,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":129.1,"room_to_5d_high_atr":-0.38},"price":8.885,"vwap":8.8771,"ext_from_open_pct":1.78,"max_ext_allowed_pct":3.0,"volume_pace":1.308,"trend":"flat","recent_slope_pct":0.062,"volatility":"high"},"price":8.885,"volume":{"bars":65,"last_bar_volume":3201.0,"baseline_avg":6160.15,"bar_rvol":0.51963,"raw_accel":-0.198146,"smooth_accel":-0.301061,"accel_momentum":-0.872689,"rvol_3bar":[0.366184,0.659252,0.51963],"trend_3bar":"MIXED","projected_rvol":3.743626},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":1533.0,"sell_vol":10538.0,"unclassified_vol":0.0,"imbalance":-0.746003,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":3.715121},"context":{"vwap":8.876976,"price_vs_vwap_pct":0.090393,"ema9":8.876794,"ema20":8.880321,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.039691,"dist_to_hod_atr":4.74347,"atr":0.039001,"spread_atr":0.769211,"own_change_pct":-0.281215,"rel_strength_pct":{"SPY":-0.29899,"IWM":-0.207828}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.387646},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7290911f54b9","ts":"2026-09-21T14:35:38.363856+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.01 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":8.1914,"target":9.09,"target_label":"range_20d_high","reward_risk":5.42,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3314,"vwap":8.2085,"ext_from_open_pct":4.01,"max_ext_allowed_pct":4.0,"volume_pace":5.776,"trend":"flat","recent_slope_pct":0.0452,"volatility":"unknown"},"price":8.3314,"volume":{"bars":65,"last_bar_volume":312.0,"baseline_avg":3546.7,"bar_rvol":0.087969,"raw_accel":-0.648124,"smooth_accel":-0.280429,"accel_momentum":0.213916,"rvol_3bar":[0.879507,0.096624,0.087969],"trend_3bar":"DECELERATING","projected_rvol":1.202513},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":568.0,"sell_vol":2154.0,"unclassified_vol":0.0,"imbalance":-0.58266,"bid":8.27,"ask":8.34,"spread_pct":0.842866,"quote_size_imbalance":null,"quote_age_s":17.426837},"context":{"vwap":8.208063,"price_vs_vwap_pct":1.502627,"ema9":8.339251,"ema20":8.347285,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.897436,"dist_to_hod_atr":3.057045,"atr":0.08132,"spread_atr":0.860793,"own_change_pct":-0.893921,"rel_strength_pct":{"SPY":-0.911697,"IWM":-0.820535}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.051256},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7047af082f44","ts":"2026-09-21T14:35:43.467617+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.14,"target":9.09,"target_label":"range_20d_high","reward_risk":5.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.28,"vwap":8.2085,"ext_from_open_pct":3.37,"max_ext_allowed_pct":4.0,"volume_pace":5.771,"trend":"flat","recent_slope_pct":-0.0785,"volatility":"unknown"},"price":8.28,"volume":{"bars":65,"last_bar_volume":312.0,"baseline_avg":3546.7,"bar_rvol":0.087969,"raw_accel":-0.648124,"smooth_accel":-0.280429,"accel_momentum":0.213916,"rvol_3bar":[0.879507,0.096624,0.087969],"trend_3bar":"DECELERATING","projected_rvol":1.140714},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":572.0,"sell_vol":2346.0,"unclassified_vol":0.0,"imbalance":-0.607951,"bid":8.27,"ask":8.34,"spread_pct":0.842866,"quote_size_imbalance":null,"quote_age_s":0.435695},"context":{"vwap":8.208063,"price_vs_vwap_pct":0.876414,"ema9":8.339251,"ema20":8.347285,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.496503,"dist_to_hod_atr":3.689114,"atr":0.08132,"spread_atr":0.860793,"own_change_pct":-0.893921,"rel_strength_pct":{"SPY":-0.911697,"IWM":-0.820535}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.053481},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"98141d4207f7","ts":"2026-09-21T14:35:43.467617+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 907.3s, plan says WATCH; stop 10.56, target 11.14 (premarket_high), R:R 0.34; R:R 0.34 < 2.0 at 10.99; breakout: 1-min close > 11.04 on >= 551306 sh","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.14,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":111.1,"room_to_5d_high_atr":-0.26},"price":10.9938,"vwap":10.7792,"ext_from_open_pct":0.13,"max_ext_allowed_pct":3.0,"volume_pace":0.956,"trend":"flat","recent_slope_pct":-0.0845,"volatility":"medium"},"price":10.9938,"volume":{"bars":65,"last_bar_volume":217087.0,"baseline_avg":314014.65,"bar_rvol":0.691328,"raw_accel":-0.307515,"smooth_accel":-0.536719,"accel_momentum":-0.987341,"rvol_3bar":[1.532675,0.9969,0.691328],"trend_3bar":"DECELERATING","projected_rvol":1.762495},"flow":{"window_s":30,"trades":183,"trade_rate":6.1,"buy_vol":114224.0,"sell_vol":178075.0,"unclassified_vol":0.0,"imbalance":-0.218444,"bid":10.95,"ask":10.96,"spread_pct":0.091283,"quote_size_imbalance":null,"quote_age_s":3.13282},"context":{"vwap":10.776047,"price_vs_vwap_pct":2.02071,"ema9":10.949732,"ema20":10.880931,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.328196,"dist_to_hod_atr":0.484594,"atr":0.074702,"spread_atr":0.133866,"own_change_pct":0.178082,"rel_strength_pct":{"SPY":0.160307,"IWM":0.251469}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.151016},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ae194cba0424","ts":"2026-09-21T14:35:48.515488+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7334,"target":8.95,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":127.5,"room_to_5d_high_atr":-0.36},"price":8.8738,"vwap":8.877,"ext_from_open_pct":1.65,"max_ext_allowed_pct":3.0,"volume_pace":1.303,"trend":"flat","recent_slope_pct":0.0368,"volatility":"high"},"price":8.8738,"volume":{"bars":65,"last_bar_volume":3201.0,"baseline_avg":6160.15,"bar_rvol":0.51963,"raw_accel":-0.198146,"smooth_accel":-0.301061,"accel_momentum":-0.872689,"rvol_3bar":[0.366184,0.659252,0.51963],"trend_3bar":"MIXED","projected_rvol":2.566329},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":19.0,"sell_vol":10506.0,"unclassified_vol":0.0,"imbalance":-0.99639,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":10.477464},"context":{"vwap":8.876976,"price_vs_vwap_pct":-0.035776,"ema9":8.876794,"ema20":8.880321,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.163175,"dist_to_hod_atr":5.030642,"atr":0.039001,"spread_atr":0.769211,"own_change_pct":-0.281215,"rel_strength_pct":{"SPY":-0.29899,"IWM":-0.207828}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.517754},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a3ae593f32ff","ts":"2026-09-21T14:35:48.515488+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.57,"target":9.74,"target_label":"premarket_high","reward_risk":0.55,"pos_in_5d_range_pct":102.5,"room_to_5d_high_atr":-0.03},"price":9.68,"vwap":9.6747,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":3.0,"volume_pace":1.0,"trend":"flat","recent_slope_pct":-0.0052,"volatility":"medium"},"price":9.68,"volume":{"bars":65,"last_bar_volume":2721.0,"baseline_avg":9879.4,"bar_rvol":0.275422,"raw_accel":-0.741987,"smooth_accel":0.273952,"accel_momentum":0.012395,"rvol_3bar":[2.196617,1.074243,0.275422],"trend_3bar":"DECELERATING","projected_rvol":0.284287},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":906.0,"sell_vol":1025.0,"unclassified_vol":0.0,"imbalance":-0.061626,"bid":9.67,"ask":9.68,"spread_pct":0.103359,"quote_size_imbalance":null,"quote_age_s":0.025009},"context":{"vwap":9.674683,"price_vs_vwap_pct":0.054958,"ema9":9.664554,"ema20":9.649535,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.525941,"dist_to_hod_atr":4.028107,"atr":0.037238,"spread_atr":0.26854,"own_change_pct":0.328555,"rel_strength_pct":{"SPY":0.31078,"IWM":0.401942}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.016973},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"a61da44ef0c4","ts":"2026-09-21T14:35:48.515488+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 912.4s, plan says PASS; stop 10.56, target 11.03 (ceiling), R:R 0.22; R:R 0.22 < 2.0 at 10.95; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.22,"pos_in_5d_range_pct":107.0,"room_to_5d_high_atr":-0.16},"price":10.945,"vwap":10.7794,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.957,"trend":"flat","recent_slope_pct":-0.1734,"volatility":"medium"},"price":10.945,"volume":{"bars":65,"last_bar_volume":217087.0,"baseline_avg":314014.65,"bar_rvol":0.691328,"raw_accel":-0.307515,"smooth_accel":-0.536719,"accel_momentum":-0.987341,"rvol_3bar":[1.532675,0.9969,0.691328],"trend_3bar":"DECELERATING","projected_rvol":1.847114},"flow":{"window_s":30,"trades":206,"trade_rate":6.866667,"buy_vol":71335.0,"sell_vol":200879.0,"unclassified_vol":0.0,"imbalance":-0.47589,"bid":10.94,"ask":10.95,"spread_pct":0.091366,"quote_size_imbalance":null,"quote_age_s":0.011531},"context":{"vwap":10.776047,"price_vs_vwap_pct":1.567854,"ema9":10.949732,"ema20":10.880931,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.770626,"dist_to_hod_atr":1.13786,"atr":0.074702,"spread_atr":0.133866,"own_change_pct":0.178082,"rel_strength_pct":{"SPY":0.160307,"IWM":0.251469}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.328996},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"76ca3c8d1118","ts":"2026-09-21T14:35:53.556641+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7496,"target":8.95,"target_label":"premarket_high","reward_risk":0.43,"pos_in_5d_range_pct":129.7,"room_to_5d_high_atr":-0.39},"price":8.89,"vwap":8.8771,"ext_from_open_pct":1.83,"max_ext_allowed_pct":3.0,"volume_pace":1.301,"trend":"flat","recent_slope_pct":0.0733,"volatility":"high"},"price":8.89,"volume":{"bars":65,"last_bar_volume":3201.0,"baseline_avg":6160.15,"bar_rvol":0.51963,"raw_accel":-0.198146,"smooth_accel":-0.301061,"accel_momentum":-0.872689,"rvol_3bar":[0.366184,0.659252,0.51963],"trend_3bar":"MIXED","projected_rvol":2.342953},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":119.0,"sell_vol":10506.0,"unclassified_vol":0.0,"imbalance":-0.9776,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":15.518617},"context":{"vwap":8.876976,"price_vs_vwap_pct":0.146718,"ema9":8.876794,"ema20":8.880321,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.984564,"dist_to_hod_atr":4.615268,"atr":0.039001,"spread_atr":0.769211,"own_change_pct":-0.281215,"rel_strength_pct":{"SPY":-0.29899,"IWM":-0.207828}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.50799},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"56cbcd88b483","ts":"2026-09-21T14:36:03.641535+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":123.7,"room_to_5d_high_atr":-0.75},"price":8.6544,"vwap":8.5701,"ext_from_open_pct":0.4,"max_ext_allowed_pct":4.0,"volume_pace":1.301,"trend":"flat","recent_slope_pct":-0.0361,"volatility":"medium"},"price":8.6544,"volume":{"bars":66,"last_bar_volume":2339.0,"baseline_avg":6158.85,"bar_rvol":0.379779,"raw_accel":0.09197,"smooth_accel":-0.009573,"accel_momentum":-0.432777,"rvol_3bar":[0.249278,0.352883,0.379779],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":832.0,"sell_vol":241.0,"unclassified_vol":0.0,"imbalance":0.550792,"bid":8.61,"ask":8.62,"spread_pct":0.116077,"quote_size_imbalance":null,"quote_age_s":1.787565},"context":{"vwap":8.570104,"price_vs_vwap_pct":0.983606,"ema9":8.65332,"ema20":8.645476,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.092571,"dist_to_hod_atr":1.955054,"atr":0.048899,"spread_atr":0.204504,"own_change_pct":-0.691643,"rel_strength_pct":{"SPY":-0.701901,"IWM":-0.593778}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.209179},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"db5c65686236","ts":"2026-09-21T14:36:03.641535+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.921,"target":8.28,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.073,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":3.0,"volume_pace":0.94,"trend":"flat","recent_slope_pct":0.0846,"volatility":"high"},"price":8.075,"volume":{"bars":66,"last_bar_volume":1139.0,"baseline_avg":8371.5,"bar_rvol":0.136057,"raw_accel":-0.742191,"smooth_accel":-0.274693,"accel_momentum":-0.565082,"rvol_3bar":[0.316522,0.451932,0.136057],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":124.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.968254,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":0.110533},"context":{"vwap":8.072957,"price_vs_vwap_pct":0.025304,"ema9":8.049325,"ema20":8.040136,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":7.925612,"atr":0.038331,"spread_atr":0.260883,"own_change_pct":0.685786,"rel_strength_pct":{"SPY":0.675527,"IWM":0.78365}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.131738},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d998c66dfd15","ts":"2026-09-21T14:36:03.641535+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.5765,"target":9.74,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":101.3,"room_to_5d_high_atr":-0.01},"price":9.675,"vwap":9.6747,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.997,"trend":"flat","recent_slope_pct":-0.031,"volatility":"medium"},"price":9.675,"volume":{"bars":66,"last_bar_volume":2524.0,"baseline_avg":9734.85,"bar_rvol":0.259275,"raw_accel":-0.0724,"smooth_accel":-0.542064,"accel_momentum":-0.816016,"rvol_3bar":[1.074243,0.275422,0.259275],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1155.0,"sell_vol":930.0,"unclassified_vol":0.0,"imbalance":0.107914,"bid":9.67,"ask":9.68,"spread_pct":0.103359,"quote_size_imbalance":null,"quote_age_s":0.456873},"context":{"vwap":9.674667,"price_vs_vwap_pct":0.00344,"ema9":9.666643,"ema20":9.65196,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.576806,"dist_to_hod_atr":4.207887,"atr":0.036836,"spread_atr":0.271477,"own_change_pct":0.156316,"rel_strength_pct":{"SPY":0.146058,"IWM":0.254181}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.027979},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"d3b004c18dcc","ts":"2026-09-21T14:36:08.694655+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.76,"target_label":"premarket_high","reward_risk":1.26,"pos_in_5d_range_pct":120.7,"room_to_5d_high_atr":-0.65},"price":8.615,"vwap":8.5701,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.299,"trend":"flat","recent_slope_pct":-0.1274,"volatility":"medium"},"price":8.615,"volume":{"bars":66,"last_bar_volume":2339.0,"baseline_avg":6158.85,"bar_rvol":0.379779,"raw_accel":0.09197,"smooth_accel":-0.009573,"accel_momentum":-0.432777,"rvol_3bar":[0.249278,0.352883,0.379779],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":908.0,"sell_vol":241.0,"unclassified_vol":0.0,"imbalance":0.580505,"bid":8.61,"ask":8.62,"spread_pct":0.116077,"quote_size_imbalance":null,"quote_age_s":1.154644},"context":{"vwap":8.570104,"price_vs_vwap_pct":0.523869,"ema9":8.65332,"ema20":8.645476,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.542857,"dist_to_hod_atr":2.760798,"atr":0.048899,"spread_atr":0.204504,"own_change_pct":-0.691643,"rel_strength_pct":{"SPY":-0.701901,"IWM":-0.593778}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.220463},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1ef22a342cbd","ts":"2026-09-21T14:36:08.694655+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.07","plan":{"state":"PASS","setup":"","stop":7.916,"target":8.28,"target_label":"ceiling","reward_risk":1.36,"pos_in_5d_range_pct":118.8,"room_to_5d_high_atr":-0.59},"price":8.07,"vwap":8.073,"ext_from_open_pct":-1.47,"max_ext_allowed_pct":3.0,"volume_pace":0.94,"trend":"flat","recent_slope_pct":0.0722,"volatility":"high"},"price":8.07,"volume":{"bars":66,"last_bar_volume":1139.0,"baseline_avg":8371.5,"bar_rvol":0.136057,"raw_accel":-0.742191,"smooth_accel":-0.274693,"accel_momentum":-0.565082,"rvol_3bar":[0.316522,0.451932,0.136057],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":406.0,"sell_vol":568.0,"unclassified_vol":0.0,"imbalance":-0.166324,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":0.380521},"context":{"vwap":8.072957,"price_vs_vwap_pct":-0.036631,"ema9":8.049325,"ema20":8.040136,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.685492,"dist_to_hod_atr":8.056053,"atr":0.038331,"spread_atr":0.260883,"own_change_pct":0.685786,"rel_strength_pct":{"SPY":0.675527,"IWM":0.78365}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.02263},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3e52202dce6a","ts":"2026-09-21T14:36:23.979483+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7333,"target":8.95,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":127.5,"room_to_5d_high_atr":-0.36},"price":8.8737,"vwap":8.8771,"ext_from_open_pct":1.65,"max_ext_allowed_pct":3.0,"volume_pace":1.292,"trend":"flat","recent_slope_pct":0.0591,"volatility":"high"},"price":8.8737,"volume":{"bars":66,"last_bar_volume":12910.0,"baseline_avg":5975.55,"bar_rvol":2.160471,"raw_accel":3.033115,"smooth_accel":0.408069,"accel_momentum":0.70913,"rvol_3bar":[0.659252,0.51963,2.160471],"trend_3bar":"MIXED","projected_rvol":0.06909},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":15.0,"sell_vol":177.0,"unclassified_vol":0.0,"imbalance":-0.84375,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":9.013747},"context":{"vwap":8.877059,"price_vs_vwap_pct":-0.037839,"ema9":8.877435,"ema20":8.880291,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.164278,"dist_to_hod_atr":5.07036,"atr":0.038715,"spread_atr":0.774889,"own_change_pct":-0.118104,"rel_strength_pct":{"SPY":-0.128362,"IWM":-0.020239}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.822897},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fa46b3fac025","ts":"2026-09-21T14:36:29.219476+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.1599,"target":9.09,"target_label":"range_20d_high","reward_risk":5.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2999,"vwap":8.2094,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":5.782,"trend":"flat","recent_slope_pct":-0.0724,"volatility":"unknown"},"price":8.2999,"volume":{"bars":66,"last_bar_volume":3457.0,"baseline_avg":3472.15,"bar_rvol":0.995637,"raw_accel":2.982547,"smooth_accel":-0.352812,"accel_momentum":-0.072383,"rvol_3bar":[0.096624,0.087969,0.995637],"trend_3bar":"MIXED","projected_rvol":4.356834},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1660.0,"sell_vol":5707.0,"unclassified_vol":0.0,"imbalance":-0.549342,"bid":8.2,"ask":8.27,"spread_pct":0.85003,"quote_size_imbalance":null,"quote_age_s":0.183156},"context":{"vwap":8.208625,"price_vs_vwap_pct":1.111937,"ema9":8.331401,"ema20":8.342782,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.264569,"dist_to_hod_atr":3.489832,"atr":0.080262,"spread_atr":0.872146,"own_change_pct":-0.598802,"rel_strength_pct":{"SPY":-0.609061,"IWM":-0.500938}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.546945},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1cffbdc74ea5","ts":"2026-09-21T14:36:29.219476+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.5765,"target":9.74,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":101.3,"room_to_5d_high_atr":-0.01},"price":9.675,"vwap":9.6747,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.991,"trend":"flat","recent_slope_pct":-0.031,"volatility":"medium"},"price":9.675,"volume":{"bars":66,"last_bar_volume":2524.0,"baseline_avg":9734.85,"bar_rvol":0.259275,"raw_accel":-0.0724,"smooth_accel":-0.542064,"accel_momentum":-0.816016,"rvol_3bar":[1.074243,0.275422,0.259275],"trend_3bar":"DECELERATING","projected_rvol":0.313239},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":117.0,"sell_vol":1368.0,"unclassified_vol":0.0,"imbalance":-0.842424,"bid":9.67,"ask":9.68,"spread_pct":0.103359,"quote_size_imbalance":null,"quote_age_s":8.639117},"context":{"vwap":9.674667,"price_vs_vwap_pct":0.00344,"ema9":9.666643,"ema20":9.65196,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.576806,"dist_to_hod_atr":4.207887,"atr":0.036836,"spread_atr":0.271477,"own_change_pct":0.156316,"rel_strength_pct":{"SPY":0.146058,"IWM":0.254181}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.218419},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0af95b84e16d","ts":"2026-09-21T14:36:29.219476+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.24,"pos_in_5d_range_pct":106.6,"room_to_5d_high_atr":-0.15},"price":10.9399,"vwap":10.7807,"ext_from_open_pct":-0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.954,"trend":"flat","recent_slope_pct":-0.1553,"volatility":"medium"},"price":10.9399,"volume":{"bars":66,"last_bar_volume":531396.0,"baseline_avg":320562.5,"bar_rvol":1.657699,"raw_accel":1.447848,"smooth_accel":-0.533368,"accel_momentum":0.003351,"rvol_3bar":[0.9969,0.691328,1.657699],"trend_3bar":"MIXED","projected_rvol":0.804709},"flow":{"window_s":30,"trades":272,"trade_rate":9.066667,"buy_vol":29664.0,"sell_vol":95960.0,"unclassified_vol":0.0,"imbalance":-0.527734,"bid":10.93,"ask":10.94,"spread_pct":0.091449,"quote_size_imbalance":null,"quote_age_s":0.374395},"context":{"vwap":10.779851,"price_vs_vwap_pct":1.484704,"ema9":10.949785,"ema20":10.887509,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.816863,"dist_to_hod_atr":1.222499,"atr":0.073702,"spread_atr":0.135682,"own_change_pct":-0.249604,"rel_strength_pct":{"SPY":-0.259862,"IWM":-0.151739}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.874823},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"18f2cdab90da","ts":"2026-09-21T14:36:34.349641+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.5817,"target":9.74,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":102.5,"room_to_5d_high_atr":-0.03},"price":9.6802,"vwap":9.6746,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.994,"trend":"flat","recent_slope_pct":-0.0202,"volatility":"medium"},"price":9.6802,"volume":{"bars":66,"last_bar_volume":2524.0,"baseline_avg":9734.85,"bar_rvol":0.259275,"raw_accel":-0.0724,"smooth_accel":-0.542064,"accel_momentum":-0.816016,"rvol_3bar":[1.074243,0.275422,0.259275],"trend_3bar":"DECELERATING","projected_rvol":0.96983},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":2353.0,"sell_vol":2438.0,"unclassified_vol":0.0,"imbalance":-0.017742,"bid":9.66,"ask":9.67,"spread_pct":0.103466,"quote_size_imbalance":null,"quote_age_s":2.393672},"context":{"vwap":9.674667,"price_vs_vwap_pct":0.057189,"ema9":9.666643,"ema20":9.65196,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.523906,"dist_to_hod_atr":4.066719,"atr":0.036836,"spread_atr":0.271477,"own_change_pct":0.156316,"rel_strength_pct":{"SPY":0.146058,"IWM":0.254181}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.0046},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b5fab65bef7a","ts":"2026-09-21T14:36:39.444473+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7595,"target":8.95,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":131.1,"room_to_5d_high_atr":-0.41},"price":8.8999,"vwap":8.8771,"ext_from_open_pct":1.95,"max_ext_allowed_pct":3.0,"volume_pace":1.289,"trend":"flat","recent_slope_pct":0.1181,"volatility":"high"},"price":8.8999,"volume":{"bars":66,"last_bar_volume":12910.0,"baseline_avg":5975.55,"bar_rvol":2.160471,"raw_accel":3.033115,"smooth_accel":0.408069,"accel_momentum":0.70913,"rvol_3bar":[0.659252,0.51963,2.160471],"trend_3bar":"MIXED","projected_rvol":0.541955},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":979.0,"sell_vol":1150.0,"unclassified_vol":0.0,"imbalance":-0.080319,"bid":8.87,"ask":8.9,"spread_pct":0.337648,"quote_size_imbalance":null,"quote_age_s":8.194207},"context":{"vwap":8.877059,"price_vs_vwap_pct":0.257304,"ema9":8.877435,"ema20":8.880291,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.875413,"dist_to_hod_atr":4.393623,"atr":0.038715,"spread_atr":0.774889,"own_change_pct":-0.118104,"rel_strength_pct":{"SPY":-0.128362,"IWM":-0.020239}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.173528},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a860f76d8510","ts":"2026-09-21T14:36:39.444473+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.66 below VWAP $9.67","plan":{"state":"PASS","setup":"","stop":9.5665,"target":9.74,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":98.7,"room_to_5d_high_atr":0.01},"price":9.665,"vwap":9.6746,"ext_from_open_pct":-0.26,"max_ext_allowed_pct":4.0,"volume_pace":0.993,"trend":"flat","recent_slope_pct":-0.0517,"volatility":"medium"},"price":9.665,"volume":{"bars":66,"last_bar_volume":2524.0,"baseline_avg":9734.85,"bar_rvol":0.259275,"raw_accel":-0.0724,"smooth_accel":-0.542064,"accel_momentum":-0.816016,"rvol_3bar":[1.074243,0.275422,0.259275],"trend_3bar":"DECELERATING","projected_rvol":1.016443},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":2337.0,"sell_vol":3234.0,"unclassified_vol":0.0,"imbalance":-0.161012,"bid":9.66,"ask":9.67,"spread_pct":0.103466,"quote_size_imbalance":null,"quote_age_s":0.917645},"context":{"vwap":9.674667,"price_vs_vwap_pct":-0.099923,"ema9":9.666643,"ema20":9.65196,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.678535,"dist_to_hod_atr":4.479363,"atr":0.036836,"spread_atr":0.271477,"own_change_pct":0.156316,"rel_strength_pct":{"SPY":0.146058,"IWM":0.254181}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.041746},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"554fc1ecf172","ts":"2026-09-21T14:36:59.887507+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.931,"target":8.28,"target_label":"ceiling","reward_risk":1.27,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.62},"price":8.085,"vwap":8.073,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":4.0,"volume_pace":0.93,"trend":"flat","recent_slope_pct":0.1093,"volatility":"high"},"price":8.085,"volume":{"bars":66,"last_bar_volume":1139.0,"baseline_avg":8371.5,"bar_rvol":0.136057,"raw_accel":-0.742191,"smooth_accel":-0.274693,"accel_momentum":-0.565082,"rvol_3bar":[0.316522,0.451932,0.136057],"trend_3bar":"MIXED","projected_rvol":0.445559},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":1231.0,"sell_vol":74.0,"unclassified_vol":0.0,"imbalance":0.88659,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":1.625001},"context":{"vwap":8.072957,"price_vs_vwap_pct":0.149175,"ema9":8.049325,"ema20":8.040136,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.506469,"dist_to_hod_atr":7.664729,"atr":0.038331,"spread_atr":0.260883,"own_change_pct":0.685786,"rel_strength_pct":{"SPY":0.675527,"IWM":0.78365}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.120627},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1c0cfe6db661","ts":"2026-09-21T14:37:05.023407+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9635,"target":9.1299,"target_label":"ceiling","reward_risk":0.92,"pos_in_5d_range_pct":129.1,"room_to_5d_high_atr":-0.92},"price":9.05,"vwap":9.0151,"ext_from_open_pct":0.33,"max_ext_allowed_pct":3.0,"volume_pace":1.729,"trend":"flat","recent_slope_pct":-0.0685,"volatility":"medium"},"price":9.05,"volume":{"bars":67,"last_bar_volume":26636.0,"baseline_avg":24263.55,"bar_rvol":1.097778,"raw_accel":1.868095,"smooth_accel":-0.056893,"accel_momentum":0.64537,"rvol_3bar":[0.392811,0.379186,1.097778],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":7402.0,"sell_vol":3684.0,"unclassified_vol":0.0,"imbalance":0.335378,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":2.14135},"context":{"vwap":9.015034,"price_vs_vwap_pct":0.387861,"ema9":9.064327,"ema20":9.067639,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.875146,"dist_to_hod_atr":2.572921,"atr":0.031054,"spread_atr":0.322018,"own_change_pct":-0.358127,"rel_strength_pct":{"SPY":-0.368527,"IWM":-0.246227}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.368171},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d180bc829fa1","ts":"2026-09-21T14:37:05.023407+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":7.926,"target":8.28,"target_label":"ceiling","reward_risk":1.3,"pos_in_5d_range_pct":119.3,"room_to_5d_high_atr":-0.61},"price":8.08,"vwap":8.073,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":4.0,"volume_pace":0.929,"trend":"flat","recent_slope_pct":0.0638,"volatility":"high"},"price":8.08,"volume":{"bars":67,"last_bar_volume":3723.0,"baseline_avg":7864.35,"bar_rvol":0.473402,"raw_accel":0.893608,"smooth_accel":-0.232296,"accel_momentum":0.042397,"rvol_3bar":[0.451932,0.136057,0.473402],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":1152.0,"sell_vol":162.0,"unclassified_vol":0.0,"imbalance":0.753425,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":0.132917},"context":{"vwap":8.072964,"price_vs_vwap_pct":0.087156,"ema9":8.05646,"ema20":8.044409,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.566143,"dist_to_hod_atr":7.91211,"atr":0.037765,"spread_atr":0.264796,"own_change_pct":0.815502,"rel_strength_pct":{"SPY":0.805102,"IWM":0.927402}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.356673},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9577445d24e3","ts":"2026-09-21T14:37:10.150137+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.5754,"target":8.76,"target_label":"premarket_high","reward_risk":0.81,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.8},"price":8.6773,"vwap":8.5702,"ext_from_open_pct":0.66,"max_ext_allowed_pct":4.0,"volume_pace":1.281,"trend":"flat","recent_slope_pct":0.0516,"volatility":"medium"},"price":8.6773,"volume":{"bars":67,"last_bar_volume":521.0,"baseline_avg":5747.7,"bar_rvol":0.090645,"raw_accel":-0.777255,"smooth_accel":-0.299636,"accel_momentum":-0.290063,"rvol_3bar":[0.352883,0.379779,0.090645],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":62.0,"sell_vol":13.0,"unclassified_vol":0.0,"imbalance":0.653333,"bid":8.62,"ask":8.63,"spread_pct":0.115942,"quote_size_imbalance":null,"quote_age_s":2.150056},"context":{"vwap":8.570191,"price_vs_vwap_pct":1.24979,"ema9":8.648656,"ema20":8.644002,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.830857,"dist_to_hod_atr":1.449474,"atr":0.050156,"spread_atr":0.199377,"own_change_pct":-0.549685,"rel_strength_pct":{"SPY":-0.560085,"IWM":-0.437785}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.059221},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fa3e5c3d4adc","ts":"2026-09-21T14:37:40.474352+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.87 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7296,"target":8.95,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.36},"price":8.87,"vwap":8.8771,"ext_from_open_pct":1.6,"max_ext_allowed_pct":3.0,"volume_pace":1.27,"trend":"flat","recent_slope_pct":0.0103,"volatility":"high"},"price":8.87,"volume":{"bars":67,"last_bar_volume":2384.0,"baseline_avg":6505.45,"bar_rvol":0.366462,"raw_accel":-0.815337,"smooth_accel":0.171534,"accel_momentum":-0.236535,"rvol_3bar":[0.51963,2.160471,0.366462],"trend_3bar":"MIXED","projected_rvol":0.073603},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":67.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-0.197605,"bid":8.85,"ask":8.89,"spread_pct":0.450958,"quote_size_imbalance":null,"quote_age_s":13.828537},"context":{"vwap":8.877073,"price_vs_vwap_pct":-0.079679,"ema9":8.878768,"ema20":8.880654,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.205072,"dist_to_hod_atr":5.201584,"atr":0.03845,"spread_atr":1.040317,"own_change_pct":0.215454,"rel_strength_pct":{"SPY":0.205054,"IWM":0.327354}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.072415},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a1d0d4904e97","ts":"2026-09-21T14:37:45.539555+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7581,"target":8.95,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":130.9,"room_to_5d_high_atr":-0.41},"price":8.8985,"vwap":8.8772,"ext_from_open_pct":1.93,"max_ext_allowed_pct":4.0,"volume_pace":1.283,"trend":"flat","recent_slope_pct":0.0744,"volatility":"high"},"price":8.8985,"volume":{"bars":67,"last_bar_volume":2384.0,"baseline_avg":6505.45,"bar_rvol":0.366462,"raw_accel":-0.815337,"smooth_accel":0.171534,"accel_momentum":-0.236535,"rvol_3bar":[0.51963,2.160471,0.366462],"trend_3bar":"MIXED","projected_rvol":2.390236},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":11434.0,"sell_vol":203.0,"unclassified_vol":0.0,"imbalance":0.965111,"bid":8.88,"ask":8.92,"spread_pct":0.449438,"quote_size_imbalance":null,"quote_age_s":0.006852},"context":{"vwap":8.877073,"price_vs_vwap_pct":0.241373,"ema9":8.878768,"ema20":8.880654,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.890849,"dist_to_hod_atr":4.460358,"atr":0.03845,"spread_atr":1.040317,"own_change_pct":0.215454,"rel_strength_pct":{"SPY":0.205054,"IWM":0.327354}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.353677},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d37ad8c05262","ts":"2026-09-21T14:38:05.733162+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.37x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.4413,"target":12.0,"target_label":"premarket_high","reward_risk":1.73,"pos_in_5d_range_pct":115.8,"room_to_5d_high_atr":-0.7},"price":11.6458,"vwap":11.5274,"ext_from_open_pct":-0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.374,"trend":"flat","recent_slope_pct":0.0529,"volatility":"high"},"price":11.6458,"volume":{"bars":68,"last_bar_volume":1703.0,"baseline_avg":7647.1,"bar_rvol":0.222699,"raw_accel":-0.65358,"smooth_accel":-0.415645,"accel_momentum":0.064431,"rvol_3bar":[0.67703,0.583529,0.222699],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":142.0,"sell_vol":733.0,"unclassified_vol":0.0,"imbalance":-0.675429,"bid":11.62,"ask":11.65,"spread_pct":0.257843,"quote_size_imbalance":null,"quote_age_s":5.736676},"context":{"vwap":11.527359,"price_vs_vwap_pct":1.02748,"ema9":11.60647,"ema20":11.57624,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-2.789649,"dist_to_hod_atr":3.708722,"atr":0.090112,"spread_atr":0.332919,"own_change_pct":0.042992,"rel_strength_pct":{"SPY":0.015693,"IWM":0.095558}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.150417},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"7917afff8893","ts":"2026-09-21T14:38:15.875347+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.14,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":109.5,"room_to_5d_high_atr":-0.22},"price":10.9746,"vwap":10.7827,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.942,"trend":"flat","recent_slope_pct":-0.0258,"volatility":"medium"},"price":10.9746,"volume":{"bars":68,"last_bar_volume":252881.0,"baseline_avg":338552.7,"bar_rvol":0.746947,"raw_accel":0.437191,"smooth_accel":-0.029217,"accel_momentum":0.476974,"rvol_3bar":[1.657699,0.521303,0.746947],"trend_3bar":"MIXED","projected_rvol":0.591154},"flow":{"window_s":30,"trades":262,"trade_rate":8.733333,"buy_vol":97346.0,"sell_vol":62554.0,"unclassified_vol":0.0,"imbalance":0.217586,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":0.594799},"context":{"vwap":10.782328,"price_vs_vwap_pct":1.783209,"ema9":10.937383,"ema20":10.892603,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.502267,"dist_to_hod_atr":0.745377,"atr":0.074325,"spread_atr":0.134545,"own_change_pct":-0.893733,"rel_strength_pct":{"SPY":-0.921032,"IWM":-0.841167}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.162525},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"30a6d8eba4d3","ts":"2026-09-21T14:38:20.963114+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.34,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.1},"price":10.9101,"vwap":10.7826,"ext_from_open_pct":-0.64,"max_ext_allowed_pct":4.0,"volume_pace":0.941,"trend":"flat","recent_slope_pct":-0.1438,"volatility":"medium"},"price":10.9101,"volume":{"bars":68,"last_bar_volume":252881.0,"baseline_avg":338552.7,"bar_rvol":0.746947,"raw_accel":0.437191,"smooth_accel":-0.029217,"accel_momentum":0.476974,"rvol_3bar":[1.657699,0.521303,0.746947],"trend_3bar":"MIXED","projected_rvol":0.481319},"flow":{"window_s":30,"trades":269,"trade_rate":8.966667,"buy_vol":98293.0,"sell_vol":44605.0,"unclassified_vol":0.0,"imbalance":0.375709,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":0.185293},"context":{"vwap":10.782328,"price_vs_vwap_pct":1.185008,"ema9":10.937383,"ema20":10.892603,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.087035,"dist_to_hod_atr":1.61319,"atr":0.074325,"spread_atr":0.134545,"own_change_pct":-0.893733,"rel_strength_pct":{"SPY":-0.921032,"IWM":-0.841167}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.280634},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b5eb22e0efc8","ts":"2026-09-21T14:38:57.069300+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7717,"target":5.87,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.83,"vwap":5.7487,"ext_from_open_pct":5.23,"max_ext_allowed_pct":4.0,"volume_pace":1.971,"trend":"flat","recent_slope_pct":-0.0768,"volatility":"unknown"},"price":5.83,"volume":{"bars":68,"last_bar_volume":74502.0,"baseline_avg":135971.05,"bar_rvol":0.547925,"raw_accel":1.191702,"smooth_accel":-0.533037,"accel_momentum":0.345432,"rvol_3bar":[0.335614,0.19917,0.547925],"trend_3bar":"MIXED","projected_rvol":0.777355},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":61490.0,"sell_vol":23368.0,"unclassified_vol":0.0,"imbalance":0.449245,"bid":5.83,"ask":5.84,"spread_pct":0.17138,"quote_size_imbalance":null,"quote_age_s":0.690487},"context":{"vwap":5.747781,"price_vs_vwap_pct":1.430454,"ema9":5.851579,"ema20":5.844375,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-0.681431,"dist_to_hod_atr":1.707114,"atr":0.023431,"spread_atr":0.426778,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.027299,"IWM":0.052566}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.246153},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ad62e19a3fdd","ts":"2026-09-21T14:39:02.215685+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.48,"target":8.82,"target_label":"prev_day_high","reward_risk":1.18,"pos_in_5d_range_pct":61.8,"room_to_5d_high_atr":0.64},"price":8.6361,"vwap":8.5921,"ext_from_open_pct":-0.96,"max_ext_allowed_pct":3.0,"volume_pace":1.028,"trend":"flat","recent_slope_pct":-0.0798,"volatility":"medium"},"price":8.6361,"volume":{"bars":69,"last_bar_volume":19250.0,"baseline_avg":31382.85,"bar_rvol":0.613392,"raw_accel":-0.133702,"smooth_accel":-0.56926,"accel_momentum":-0.388161,"rvol_3bar":[0.673213,0.710684,0.613392],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":3369.0,"sell_vol":2060.0,"unclassified_vol":0.0,"imbalance":0.241113,"bid":8.63,"ask":8.64,"spread_pct":0.115808,"quote_size_imbalance":null,"quote_age_s":1.023463},"context":{"vwap":8.592084,"price_vs_vwap_pct":0.512289,"ema9":8.679849,"ema20":8.680611,"ema_stack":false,"ema_warm":true,"hod":8.79,"dist_to_hod_pct":-1.750853,"dist_to_hod_atr":2.352675,"atr":0.065415,"spread_atr":0.15287,"own_change_pct":-0.874355,"rel_strength_pct":{"SPY":-0.886055,"IWM":-0.821887}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.147897},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"65708ac67d33","ts":"2026-09-21T14:39:02.215685+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":103.7,"room_to_5d_high_atr":-0.09},"price":10.905,"vwap":10.7837,"ext_from_open_pct":-0.68,"max_ext_allowed_pct":3.0,"volume_pace":0.938,"trend":"flat","recent_slope_pct":-0.0962,"volatility":"medium"},"price":10.905,"volume":{"bars":69,"last_bar_volume":246826.0,"baseline_avg":344401.75,"bar_rvol":0.71668,"raw_accel":-0.023944,"smooth_accel":-0.363767,"accel_momentum":-0.334551,"rvol_3bar":[0.521303,0.746947,0.71668],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":161,"trade_rate":5.366667,"buy_vol":14860.0,"sell_vol":148432.0,"unclassified_vol":0.0,"imbalance":-0.817995,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.292144},"context":{"vwap":10.783655,"price_vs_vwap_pct":1.125269,"ema9":10.930906,"ema20":10.893784,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.133273,"dist_to_hod_atr":1.680394,"atr":0.074387,"spread_atr":0.134432,"own_change_pct":-0.684869,"rel_strength_pct":{"SPY":-0.696569,"IWM":-0.632401}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.586241},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"421de62a2cf0","ts":"2026-09-21T14:39:07.362411+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.5% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.7844,"target":6.07,"target_label":"range_20d_high","reward_risk":3.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.8428,"vwap":5.7487,"ext_from_open_pct":5.47,"max_ext_allowed_pct":3.0,"volume_pace":1.967,"trend":"flat","recent_slope_pct":-0.0499,"volatility":"unknown"},"price":5.8428,"volume":{"bars":69,"last_bar_volume":101195.0,"baseline_avg":135774.0,"bar_rvol":0.745319,"raw_accel":0.358286,"smooth_accel":0.385622,"accel_momentum":0.918659,"rvol_3bar":[0.19917,0.547925,0.745319],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":50279.0,"sell_vol":2299.0,"unclassified_vol":0.0,"imbalance":0.912549,"bid":5.83,"ask":5.84,"spread_pct":0.17138,"quote_size_imbalance":null,"quote_age_s":1.513021},"context":{"vwap":5.748682,"price_vs_vwap_pct":1.637217,"ema9":5.848263,"ema20":5.843482,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-0.463373,"dist_to_hod_atr":1.155313,"atr":0.023543,"spread_atr":0.424747,"own_change_pct":-0.341588,"rel_strength_pct":{"SPY":-0.353289,"IWM":-0.289121}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.68014},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a7619209ea8c","ts":"2026-09-21T14:39:12.471365+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.7717,"target":5.87,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.83,"vwap":5.7487,"ext_from_open_pct":5.23,"max_ext_allowed_pct":3.0,"volume_pace":1.965,"trend":"flat","recent_slope_pct":-0.0938,"volatility":"unknown"},"price":5.83,"volume":{"bars":69,"last_bar_volume":101195.0,"baseline_avg":135774.0,"bar_rvol":0.745319,"raw_accel":0.358286,"smooth_accel":0.385622,"accel_momentum":0.918659,"rvol_3bar":[0.19917,0.547925,0.745319],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":50487.0,"sell_vol":2856.0,"unclassified_vol":0.0,"imbalance":0.892919,"bid":5.83,"ask":5.84,"spread_pct":0.17138,"quote_size_imbalance":null,"quote_age_s":6.621975},"context":{"vwap":5.748682,"price_vs_vwap_pct":1.414557,"ema9":5.848263,"ema20":5.843482,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-0.681431,"dist_to_hod_atr":1.698989,"atr":0.023543,"spread_atr":0.424747,"own_change_pct":-0.341588,"rel_strength_pct":{"SPY":-0.353289,"IWM":-0.289121}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.66551},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5d0237d60693","ts":"2026-09-21T14:39:22.667536+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.5s, plan says WATCH; stop 10.56, target 11.14 (premarket_high), R:R 0.40; R:R 0.40 < 2.0 at 10.97; breakout: 1-min close > 11.04 on >= 544101 sh","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.14,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":109.3,"room_to_5d_high_atr":-0.22},"price":10.973,"vwap":10.7843,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.937,"trend":"flat","recent_slope_pct":0.0284,"volatility":"medium"},"price":10.973,"volume":{"bars":69,"last_bar_volume":246826.0,"baseline_avg":344401.75,"bar_rvol":0.71668,"raw_accel":-0.023944,"smooth_accel":-0.363767,"accel_momentum":-0.334551,"rvol_3bar":[0.521303,0.746947,0.71668],"trend_3bar":"MIXED","projected_rvol":0.848913},"flow":{"window_s":30,"trades":266,"trade_rate":8.866667,"buy_vol":64094.0,"sell_vol":161058.0,"unclassified_vol":0.0,"imbalance":-0.43066,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":1.395303},"context":{"vwap":10.783655,"price_vs_vwap_pct":1.755853,"ema9":10.930906,"ema20":10.893784,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.516772,"dist_to_hod_atr":0.76626,"atr":0.074387,"spread_atr":0.134432,"own_change_pct":-0.684869,"rel_strength_pct":{"SPY":-0.696569,"IWM":-0.632401}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.308646},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5f5b3ef6432c","ts":"2026-09-21T14:39:22.667536+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.5% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.7857,"target":6.07,"target_label":"range_20d_high","reward_risk":3.87,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.8441,"vwap":5.7487,"ext_from_open_pct":5.49,"max_ext_allowed_pct":3.0,"volume_pace":1.96,"trend":"flat","recent_slope_pct":-0.0455,"volatility":"unknown"},"price":5.8441,"volume":{"bars":69,"last_bar_volume":101195.0,"baseline_avg":135774.0,"bar_rvol":0.745319,"raw_accel":0.358286,"smooth_accel":0.385622,"accel_momentum":0.918659,"rvol_3bar":[0.19917,0.547925,0.745319],"trend_3bar":"ACCELERATING","projected_rvol":0.087086},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":48582.0,"sell_vol":3920.0,"unclassified_vol":0.0,"imbalance":0.850672,"bid":5.83,"ask":5.84,"spread_pct":0.17138,"quote_size_imbalance":null,"quote_age_s":2.46761},"context":{"vwap":5.748682,"price_vs_vwap_pct":1.659831,"ema9":5.848263,"ema20":5.843482,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-0.441227,"dist_to_hod_atr":1.100096,"atr":0.023543,"spread_atr":0.424747,"own_change_pct":-0.341588,"rel_strength_pct":{"SPY":-0.353289,"IWM":-0.289121}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.634023},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"95a1ba17baad","ts":"2026-09-21T14:39:27.788303+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.6s, plan says PASS; stop 10.56, target 11.03 (ceiling), R:R 0.38; R:R 0.38 < 2.0 at 10.90; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":103.3,"room_to_5d_high_atr":-0.08},"price":10.9,"vwap":10.7843,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":3.0,"volume_pace":0.937,"trend":"flat","recent_slope_pct":-0.1053,"volatility":"medium"},"price":10.9,"volume":{"bars":69,"last_bar_volume":246826.0,"baseline_avg":344401.75,"bar_rvol":0.71668,"raw_accel":-0.023944,"smooth_accel":-0.363767,"accel_momentum":-0.334551,"rvol_3bar":[0.521303,0.746947,0.71668],"trend_3bar":"MIXED","projected_rvol":0.75818},"flow":{"window_s":30,"trades":269,"trade_rate":8.966667,"buy_vol":63240.0,"sell_vol":161542.0,"unclassified_vol":0.0,"imbalance":-0.437321,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.571689},"context":{"vwap":10.783655,"price_vs_vwap_pct":1.078903,"ema9":10.930906,"ema20":10.893784,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.178604,"dist_to_hod_atr":1.74761,"atr":0.074387,"spread_atr":0.134432,"own_change_pct":-0.684869,"rel_strength_pct":{"SPY":-0.696569,"IWM":-0.632401}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.31342},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f965bcda6e97","ts":"2026-09-21T14:39:27.788303+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.7717,"target":5.87,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.83,"vwap":5.7487,"ext_from_open_pct":5.23,"max_ext_allowed_pct":3.0,"volume_pace":1.958,"trend":"flat","recent_slope_pct":-0.0938,"volatility":"unknown"},"price":5.83,"volume":{"bars":69,"last_bar_volume":101195.0,"baseline_avg":135774.0,"bar_rvol":0.745319,"raw_accel":0.358286,"smooth_accel":0.385622,"accel_momentum":0.918659,"rvol_3bar":[0.19917,0.547925,0.745319],"trend_3bar":"ACCELERATING","projected_rvol":0.085334},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":2332.0,"sell_vol":3694.0,"unclassified_vol":0.0,"imbalance":-0.226021,"bid":5.83,"ask":5.84,"spread_pct":0.17138,"quote_size_imbalance":null,"quote_age_s":0.278876},"context":{"vwap":5.748682,"price_vs_vwap_pct":1.414557,"ema9":5.848263,"ema20":5.843482,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-0.681431,"dist_to_hod_atr":1.698989,"atr":0.023543,"spread_atr":0.424747,"own_change_pct":-0.341588,"rel_strength_pct":{"SPY":-0.353289,"IWM":-0.289121}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.168458},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c50116ff98cb","ts":"2026-09-21T14:39:38.127480+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.9s, plan says WATCH; stop 10.56, target 11.14 (premarket_high), R:R 0.40; R:R 0.40 < 2.0 at 10.97; breakout: 1-min close > 11.04 on >= 544101 sh","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.14,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":109.3,"room_to_5d_high_atr":-0.22},"price":10.973,"vwap":10.7846,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.935,"trend":"flat","recent_slope_pct":0.0284,"volatility":"medium"},"price":10.973,"volume":{"bars":69,"last_bar_volume":246826.0,"baseline_avg":344401.75,"bar_rvol":0.71668,"raw_accel":-0.023944,"smooth_accel":-0.363767,"accel_momentum":-0.334551,"rvol_3bar":[0.521303,0.746947,0.71668],"trend_3bar":"MIXED","projected_rvol":0.701088},"flow":{"window_s":30,"trades":260,"trade_rate":8.666667,"buy_vol":86586.0,"sell_vol":65325.0,"unclassified_vol":0.0,"imbalance":0.139957,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":0.080063},"context":{"vwap":10.783655,"price_vs_vwap_pct":1.755853,"ema9":10.930906,"ema20":10.893784,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.516772,"dist_to_hod_atr":0.76626,"atr":0.074387,"spread_atr":0.134432,"own_change_pct":-0.684869,"rel_strength_pct":{"SPY":-0.696569,"IWM":-0.632401}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.100304},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4a2587fe11ae","ts":"2026-09-21T14:39:38.127480+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.3% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.7767,"target":6.07,"target_label":"range_20d_high","reward_risk":4.03,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.835,"vwap":5.7488,"ext_from_open_pct":5.32,"max_ext_allowed_pct":3.0,"volume_pace":1.954,"trend":"flat","recent_slope_pct":-0.0766,"volatility":"unknown"},"price":5.835,"volume":{"bars":69,"last_bar_volume":101195.0,"baseline_avg":135774.0,"bar_rvol":0.745319,"raw_accel":0.358286,"smooth_accel":0.385622,"accel_momentum":0.918659,"rvol_3bar":[0.19917,0.547925,0.745319],"trend_3bar":"ACCELERATING","projected_rvol":0.152193},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":1865.0,"sell_vol":9382.0,"unclassified_vol":0.0,"imbalance":-0.668356,"bid":5.83,"ask":5.84,"spread_pct":0.17138,"quote_size_imbalance":null,"quote_age_s":0.961393},"context":{"vwap":5.748682,"price_vs_vwap_pct":1.501533,"ema9":5.848263,"ema20":5.843482,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-0.596252,"dist_to_hod_atr":1.486616,"atr":0.023543,"spread_atr":0.424747,"own_change_pct":-0.341588,"rel_strength_pct":{"SPY":-0.353289,"IWM":-0.289121}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.498139},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d582e4ea27e0","ts":"2026-09-21T14:39:43.314074+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 41.1s, plan says PASS; stop 10.56, target 11.03 (ceiling), R:R 0.32; R:R 0.32 < 2.0 at 10.91; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.32,"pos_in_5d_range_pct":104.5,"room_to_5d_high_atr":-0.11},"price":10.915,"vwap":10.7847,"ext_from_open_pct":-0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.935,"trend":"flat","recent_slope_pct":-0.0778,"volatility":"medium"},"price":10.915,"volume":{"bars":69,"last_bar_volume":246826.0,"baseline_avg":344401.75,"bar_rvol":0.71668,"raw_accel":-0.023944,"smooth_accel":-0.363767,"accel_momentum":-0.334551,"rvol_3bar":[0.521303,0.746947,0.71668],"trend_3bar":"MIXED","projected_rvol":0.74961},"flow":{"window_s":30,"trades":178,"trade_rate":5.933333,"buy_vol":42300.0,"sell_vol":82393.0,"unclassified_vol":0.0,"imbalance":-0.321534,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":0.276363},"context":{"vwap":10.783655,"price_vs_vwap_pct":1.218002,"ema9":10.930906,"ema20":10.893784,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.042611,"dist_to_hod_atr":1.545963,"atr":0.074387,"spread_atr":0.134432,"own_change_pct":-0.684869,"rel_strength_pct":{"SPY":-0.696569,"IWM":-0.632401}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.230437},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"46eee3c948ff","ts":"2026-09-21T14:39:43.314074+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.7718,"target":5.87,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.8301,"vwap":5.7488,"ext_from_open_pct":5.24,"max_ext_allowed_pct":3.0,"volume_pace":1.952,"trend":"flat","recent_slope_pct":-0.0934,"volatility":"unknown"},"price":5.8301,"volume":{"bars":69,"last_bar_volume":101195.0,"baseline_avg":135774.0,"bar_rvol":0.745319,"raw_accel":0.358286,"smooth_accel":0.385622,"accel_momentum":0.918659,"rvol_3bar":[0.19917,0.547925,0.745319],"trend_3bar":"ACCELERATING","projected_rvol":0.141682},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":1794.0,"sell_vol":9088.0,"unclassified_vol":0.0,"imbalance":-0.670281,"bid":5.83,"ask":5.84,"spread_pct":0.17138,"quote_size_imbalance":null,"quote_age_s":0.309847},"context":{"vwap":5.748682,"price_vs_vwap_pct":1.416296,"ema9":5.848263,"ema20":5.843482,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-0.679727,"dist_to_hod_atr":1.694742,"atr":0.023543,"spread_atr":0.424747,"own_change_pct":-0.341588,"rel_strength_pct":{"SPY":-0.353289,"IWM":-0.289121}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.499574},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fde7a02734c8","ts":"2026-09-21T14:39:48.499492+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.4% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.7789,"target":6.07,"target_label":"range_20d_high","reward_risk":3.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.8373,"vwap":5.7488,"ext_from_open_pct":5.37,"max_ext_allowed_pct":3.0,"volume_pace":1.95,"trend":"flat","recent_slope_pct":-0.0688,"volatility":"unknown"},"price":5.8373,"volume":{"bars":69,"last_bar_volume":101195.0,"baseline_avg":135774.0,"bar_rvol":0.745319,"raw_accel":0.358286,"smooth_accel":0.385622,"accel_momentum":0.918659,"rvol_3bar":[0.19917,0.547925,0.745319],"trend_3bar":"ACCELERATING","projected_rvol":0.145468},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":1898.0,"sell_vol":10243.0,"unclassified_vol":0.0,"imbalance":-0.68734,"bid":5.83,"ask":5.84,"spread_pct":0.17138,"quote_size_imbalance":null,"quote_age_s":0.12401},"context":{"vwap":5.748682,"price_vs_vwap_pct":1.541543,"ema9":5.848263,"ema20":5.843482,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-0.55707,"dist_to_hod_atr":1.388924,"atr":0.023543,"spread_atr":0.424747,"own_change_pct":-0.341588,"rel_strength_pct":{"SPY":-0.353289,"IWM":-0.289121}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.512288},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"025b48e7e773","ts":"2026-09-21T14:39:53.646998+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.7717,"target":5.87,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.83,"vwap":5.7488,"ext_from_open_pct":5.23,"max_ext_allowed_pct":3.0,"volume_pace":1.948,"trend":"flat","recent_slope_pct":-0.0938,"volatility":"unknown"},"price":5.83,"volume":{"bars":69,"last_bar_volume":101195.0,"baseline_avg":135774.0,"bar_rvol":0.745319,"raw_accel":0.358286,"smooth_accel":0.385622,"accel_momentum":0.918659,"rvol_3bar":[0.19917,0.547925,0.745319],"trend_3bar":"ACCELERATING","projected_rvol":0.140431},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":2074.0,"sell_vol":10392.0,"unclassified_vol":0.0,"imbalance":-0.667255,"bid":5.83,"ask":5.84,"spread_pct":0.17138,"quote_size_imbalance":null,"quote_age_s":0.158249},"context":{"vwap":5.748682,"price_vs_vwap_pct":1.414557,"ema9":5.848263,"ema20":5.843482,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-0.681431,"dist_to_hod_atr":1.698989,"atr":0.023543,"spread_atr":0.424747,"own_change_pct":-0.341588,"rel_strength_pct":{"SPY":-0.353289,"IWM":-0.289121}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.497318},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1892c9ccdec7","ts":"2026-09-21T14:40:03.928342+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 61.7s, plan says WATCH; stop 10.78, target 11.03 (ceiling), R:R 0.90; selling not fading: red-bar volume 0.96x the advance (max 0.7); no reclaim yet (needs a close > 10.98); R:R 0.90 < 2.0 at 10.","plan":{"state":"WATCH","setup":"","stop":10.7843,"target":11.03,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":104.4,"room_to_5d_high_atr":-0.1},"price":10.9133,"vwap":10.7852,"ext_from_open_pct":-0.61,"max_ext_allowed_pct":3.0,"volume_pace":0.933,"trend":"flat","recent_slope_pct":0.044,"volatility":"medium"},"price":10.9133,"volume":{"bars":70,"last_bar_volume":251503.0,"baseline_avg":349858.2,"bar_rvol":0.718871,"raw_accel":0.018949,"smooth_accel":-0.187387,"accel_momentum":0.17638,"rvol_3bar":[0.746947,0.71668,0.718871],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":203,"trade_rate":6.766667,"buy_vol":50970.0,"sell_vol":59787.0,"unclassified_vol":0.0,"imbalance":-0.079607,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":0.199896},"context":{"vwap":10.785187,"price_vs_vwap_pct":1.18786,"ema9":10.939345,"ema20":10.901338,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.058024,"dist_to_hod_atr":1.570003,"atr":0.074331,"spread_atr":0.134533,"own_change_pct":0.032818,"rel_strength_pct":{"SPY":0.019817,"IWM":0.064308}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.057227},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"499d4b9051df","ts":"2026-09-21T14:40:29.487553+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.06,"target":9.09,"target_label":"range_20d_high","reward_risk":5.44,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.22,"vwap":8.2096,"ext_from_open_pct":2.62,"max_ext_allowed_pct":5.0,"volume_pace":5.65,"trend":"flat","recent_slope_pct":-0.0234,"volatility":"unknown"},"price":8.22,"volume":{"bars":70,"last_bar_volume":320.0,"baseline_avg":3755.65,"bar_rvol":0.085205,"raw_accel":-0.966312,"smooth_accel":0.754543,"accel_momentum":-5.015845,"rvol_3bar":[3.499237,2.890573,0.085205],"trend_3bar":"DECELERATING","projected_rvol":0.143031},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":24.0,"sell_vol":240.0,"unclassified_vol":0.0,"imbalance":-0.818182,"bid":8.17,"ask":8.25,"spread_pct":0.974421,"quote_size_imbalance":null,"quote_age_s":2.85022},"context":{"vwap":8.209564,"price_vs_vwap_pct":0.127119,"ema9":8.265989,"ema20":8.302637,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.195804,"dist_to_hod_atr":4.428306,"atr":0.081295,"spread_atr":0.984068,"own_change_pct":-1.142514,"rel_strength_pct":{"SPY":-1.155515,"IWM":-1.111024}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.069713},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f6f5576fcf27","ts":"2026-09-21T14:40:39.625879+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.17 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.03,"target":9.09,"target_label":"range_20d_high","reward_risk":6.57,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.17,"vwap":8.2096,"ext_from_open_pct":2.0,"max_ext_allowed_pct":4.0,"volume_pace":5.637,"trend":"flat","recent_slope_pct":-0.1452,"volatility":"unknown"},"price":8.17,"volume":{"bars":70,"last_bar_volume":320.0,"baseline_avg":3755.65,"bar_rvol":0.085205,"raw_accel":-0.966312,"smooth_accel":0.754543,"accel_momentum":-5.015845,"rvol_3bar":[3.499237,2.890573,0.085205],"trend_3bar":"DECELERATING","projected_rvol":0.126595},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":13.0,"sell_vol":50.0,"unclassified_vol":0.0,"imbalance":-0.587302,"bid":8.18,"ask":8.25,"spread_pct":0.8521,"quote_size_imbalance":null,"quote_age_s":0.530901},"context":{"vwap":8.209564,"price_vs_vwap_pct":-0.481927,"ema9":8.265989,"ema20":8.302637,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.778555,"dist_to_hod_atr":5.043349,"atr":0.081295,"spread_atr":0.86106,"own_change_pct":-1.142514,"rel_strength_pct":{"SPY":-1.155515,"IWM":-1.111024}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.050041},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"19aa1c030962","ts":"2026-09-21T14:40:49.835162+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.05,"target":9.09,"target_label":"range_20d_high","reward_risk":5.5,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.21,"vwap":8.2096,"ext_from_open_pct":2.5,"max_ext_allowed_pct":4.0,"volume_pace":5.625,"trend":"flat","recent_slope_pct":-0.0477,"volatility":"unknown"},"price":8.21,"volume":{"bars":70,"last_bar_volume":320.0,"baseline_avg":3755.65,"bar_rvol":0.085205,"raw_accel":-0.966312,"smooth_accel":0.754543,"accel_momentum":-5.015845,"rvol_3bar":[3.499237,2.890573,0.085205],"trend_3bar":"DECELERATING","projected_rvol":0.143297},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":146.0,"sell_vol":50.0,"unclassified_vol":0.0,"imbalance":0.489796,"bid":8.17,"ask":8.25,"spread_pct":0.974421,"quote_size_imbalance":null,"quote_age_s":0.148866},"context":{"vwap":8.209564,"price_vs_vwap_pct":0.005309,"ema9":8.265989,"ema20":8.302637,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.312354,"dist_to_hod_atr":4.551315,"atr":0.081295,"spread_atr":0.984068,"own_change_pct":-1.142514,"rel_strength_pct":{"SPY":-1.155515,"IWM":-1.111024}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.041733},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"816775812acd","ts":"2026-09-21T14:40:54.930619+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.19 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.05,"target":9.09,"target_label":"range_20d_high","reward_risk":6.43,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.19,"vwap":8.2096,"ext_from_open_pct":2.25,"max_ext_allowed_pct":4.0,"volume_pace":5.618,"trend":"flat","recent_slope_pct":-0.0964,"volatility":"unknown"},"price":8.19,"volume":{"bars":70,"last_bar_volume":320.0,"baseline_avg":3755.65,"bar_rvol":0.085205,"raw_accel":-0.966312,"smooth_accel":0.754543,"accel_momentum":-5.015845,"rvol_3bar":[3.499237,2.890573,0.085205],"trend_3bar":"DECELERATING","projected_rvol":0.133495},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":155.0,"sell_vol":53.0,"unclassified_vol":0.0,"imbalance":0.490385,"bid":8.18,"ask":8.25,"spread_pct":0.8521,"quote_size_imbalance":null,"quote_age_s":4.461862},"context":{"vwap":8.209564,"price_vs_vwap_pct":-0.238309,"ema9":8.265989,"ema20":8.302637,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.545455,"dist_to_hod_atr":4.797332,"atr":0.081295,"spread_atr":0.86106,"own_change_pct":-1.142514,"rel_strength_pct":{"SPY":-1.155515,"IWM":-1.111024}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.041783},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"42ab165aea2f","ts":"2026-09-21T14:41:00.020960+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.951,"target":8.28,"target_label":"ceiling","reward_risk":1.14,"pos_in_5d_range_pct":120.6,"room_to_5d_high_atr":-0.65},"price":8.105,"vwap":8.0729,"ext_from_open_pct":-1.04,"max_ext_allowed_pct":4.0,"volume_pace":0.904,"trend":"flat","recent_slope_pct":0.0372,"volatility":"high"},"price":8.105,"volume":{"bars":70,"last_bar_volume":2973.0,"baseline_avg":7619.3,"bar_rvol":0.390193,"raw_accel":-0.408358,"smooth_accel":0.425216,"accel_momentum":-0.171494,"rvol_3bar":[0.680136,0.663266,0.390193],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":13648.0,"sell_vol":2665.0,"unclassified_vol":0.0,"imbalance":0.673267,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":6.315155},"context":{"vwap":8.072761,"price_vs_vwap_pct":0.399359,"ema9":8.052563,"ema20":8.045566,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.267771,"dist_to_hod_atr":7.747362,"atr":0.035341,"spread_atr":0.282957,"own_change_pct":-0.219529,"rel_strength_pct":{"SPY":-0.22408,"IWM":-0.156555}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.262704},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"73bb8fdf49a9","ts":"2026-09-21T14:41:05.349666+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.3s / 18s","plan":{"state":"WATCH","setup":"","stop":7.951,"target":8.28,"target_label":"ceiling","reward_risk":1.14,"pos_in_5d_range_pct":120.6,"room_to_5d_high_atr":-0.65},"price":8.105,"vwap":8.0729,"ext_from_open_pct":-1.04,"max_ext_allowed_pct":4.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":0.195,"volatility":"high"},"price":8.105,"volume":{"bars":71,"last_bar_volume":17671.0,"baseline_avg":7300.3,"bar_rvol":2.420585,"raw_accel":4.943828,"smooth_accel":1.544004,"accel_momentum":1.118788,"rvol_3bar":[0.663266,0.390193,2.420585],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":13588.0,"sell_vol":2765.0,"unclassified_vol":0.0,"imbalance":0.661836,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":0.000101},"context":{"vwap":8.072913,"price_vs_vwap_pct":0.39746,"ema9":8.063051,"ema20":8.051226,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.267771,"dist_to_hod_atr":7.124459,"atr":0.038431,"spread_atr":0.260207,"own_change_pct":0.371517,"rel_strength_pct":{"SPY":0.366967,"IWM":0.434492}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.60203},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"be20eedcef63","ts":"2026-09-21T14:41:10.489160+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.5s / 18s","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.28,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.073,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":3.0,"volume_pace":0.909,"trend":"flat","recent_slope_pct":0.1208,"volatility":"high"},"price":8.075,"volume":{"bars":71,"last_bar_volume":17671.0,"baseline_avg":7300.3,"bar_rvol":2.420585,"raw_accel":4.943828,"smooth_accel":1.544004,"accel_momentum":1.118788,"rvol_3bar":[0.663266,0.390193,2.420585],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":175,"trade_rate":5.833333,"buy_vol":15966.0,"sell_vol":9400.0,"unclassified_vol":0.0,"imbalance":0.25885,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":0.009497},"context":{"vwap":8.072913,"price_vs_vwap_pct":0.025847,"ema9":8.063051,"ema20":8.051226,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":7.90508,"atr":0.038431,"spread_atr":0.260207,"own_change_pct":0.371517,"rel_strength_pct":{"SPY":0.366967,"IWM":0.434492}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.62657},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"78abe108f300","ts":"2026-09-21T14:41:15.651502+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.08,"target":9.09,"target_label":"range_20d_high","reward_risk":6.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.22,"vwap":8.2096,"ext_from_open_pct":2.62,"max_ext_allowed_pct":5.0,"volume_pace":5.592,"trend":"flat","recent_slope_pct":-0.0595,"volatility":"unknown"},"price":8.22,"volume":{"bars":71,"last_bar_volume":459.0,"baseline_avg":3717.75,"bar_rvol":0.123462,"raw_accel":-0.506153,"smooth_accel":-0.529654,"accel_momentum":-1.284197,"rvol_3bar":[2.890573,0.085205,0.123462],"trend_3bar":"MIXED","projected_rvol":0.103113},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":242.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.97551,"bid":8.18,"ask":8.25,"spread_pct":0.8521,"quote_size_imbalance":null,"quote_age_s":3.610602},"context":{"vwap":8.209552,"price_vs_vwap_pct":0.127268,"ema9":8.250791,"ema20":8.291909,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.195804,"dist_to_hod_atr":4.553514,"atr":0.07906,"spread_atr":0.885405,"own_change_pct":-1.325301,"rel_strength_pct":{"SPY":-1.329851,"IWM":-1.262327}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.120438},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a7a901debd83","ts":"2026-09-21T14:41:31.135971+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.19 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.05,"target":9.09,"target_label":"range_20d_high","reward_risk":6.43,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.19,"vwap":8.2096,"ext_from_open_pct":2.25,"max_ext_allowed_pct":5.0,"volume_pace":5.572,"trend":"flat","recent_slope_pct":-0.1327,"volatility":"unknown"},"price":8.19,"volume":{"bars":71,"last_bar_volume":459.0,"baseline_avg":3717.75,"bar_rvol":0.123462,"raw_accel":-0.506153,"smooth_accel":-0.529654,"accel_momentum":-1.284197,"rvol_3bar":[2.890573,0.085205,0.123462],"trend_3bar":"MIXED","projected_rvol":0.057017},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":100.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":0.818182,"bid":8.18,"ask":8.25,"spread_pct":0.8521,"quote_size_imbalance":null,"quote_age_s":19.095071},"context":{"vwap":8.209552,"price_vs_vwap_pct":-0.23816,"ema9":8.250791,"ema20":8.291909,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.545455,"dist_to_hod_atr":4.932973,"atr":0.07906,"spread_atr":0.885405,"own_change_pct":-1.325301,"rel_strength_pct":{"SPY":-1.329851,"IWM":-1.262327}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.101014},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4527d4af7412","ts":"2026-09-21T14:41:36.266076+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.1015,"target":9.09,"target_label":"range_20d_high","reward_risk":6.06,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2415,"vwap":8.2096,"ext_from_open_pct":2.89,"max_ext_allowed_pct":5.0,"volume_pace":5.565,"trend":"flat","recent_slope_pct":-0.0072,"volatility":"unknown"},"price":8.2415,"volume":{"bars":71,"last_bar_volume":459.0,"baseline_avg":3717.75,"bar_rvol":0.123462,"raw_accel":-0.506153,"smooth_accel":-0.529654,"accel_momentum":-1.284197,"rvol_3bar":[2.890573,0.085205,0.123462],"trend_3bar":"MIXED","projected_rvol":0.064082},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":134.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":0.861111,"bid":8.18,"ask":8.25,"spread_pct":0.8521,"quote_size_imbalance":null,"quote_age_s":3.690308},"context":{"vwap":8.209552,"price_vs_vwap_pct":0.389158,"ema9":8.250791,"ema20":8.291909,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.945221,"dist_to_hod_atr":4.281568,"atr":0.07906,"spread_atr":0.885405,"own_change_pct":-1.325301,"rel_strength_pct":{"SPY":-1.329851,"IWM":-1.262327}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.106314},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"64006e251a3d","ts":"2026-09-21T14:41:46.656009+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.07","plan":{"state":"PASS","setup":"","stop":7.9179,"target":8.28,"target_label":"ceiling","reward_risk":1.35,"pos_in_5d_range_pct":118.9,"room_to_5d_high_atr":-0.6},"price":8.0719,"vwap":8.0731,"ext_from_open_pct":-1.44,"max_ext_allowed_pct":3.0,"volume_pace":0.907,"trend":"flat","recent_slope_pct":0.1131,"volatility":"high"},"price":8.0719,"volume":{"bars":71,"last_bar_volume":17671.0,"baseline_avg":7300.3,"bar_rvol":2.420585,"raw_accel":4.943828,"smooth_accel":1.544004,"accel_momentum":1.118788,"rvol_3bar":[0.663266,0.390193,2.420585],"trend_3bar":"MIXED","projected_rvol":2.72094},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2714.0,"sell_vol":2809.0,"unclassified_vol":0.0,"imbalance":-0.017201,"bid":8.12,"ask":8.13,"spread_pct":0.123077,"quote_size_imbalance":null,"quote_age_s":0.583252},"context":{"vwap":8.072913,"price_vs_vwap_pct":-0.012553,"ema9":8.063051,"ema20":8.051226,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.662816,"dist_to_hod_atr":7.985744,"atr":0.038431,"spread_atr":0.260207,"own_change_pct":0.371517,"rel_strength_pct":{"SPY":0.366967,"IWM":0.434492}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.041636},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9c81da5f589a","ts":"2026-09-21T14:41:51.767604+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.966,"target":8.28,"target_label":"ceiling","reward_risk":1.04,"pos_in_5d_range_pct":121.3,"room_to_5d_high_atr":-0.67},"price":8.12,"vwap":8.0733,"ext_from_open_pct":-0.85,"max_ext_allowed_pct":3.0,"volume_pace":0.906,"trend":"flat","recent_slope_pct":0.2321,"volatility":"high"},"price":8.12,"volume":{"bars":71,"last_bar_volume":17671.0,"baseline_avg":7300.3,"bar_rvol":2.420585,"raw_accel":4.943828,"smooth_accel":1.544004,"accel_momentum":1.118788,"rvol_3bar":[0.663266,0.390193,2.420585],"trend_3bar":"MIXED","projected_rvol":2.540544},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1832.0,"sell_vol":3212.0,"unclassified_vol":0.0,"imbalance":-0.273592,"bid":8.12,"ask":8.13,"spread_pct":0.123077,"quote_size_imbalance":null,"quote_age_s":2.290754},"context":{"vwap":8.072913,"price_vs_vwap_pct":0.583266,"ema9":8.063051,"ema20":8.051226,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.088748,"dist_to_hod_atr":6.734149,"atr":0.038431,"spread_atr":0.260207,"own_change_pct":0.371517,"rel_strength_pct":{"SPY":0.366967,"IWM":0.434492}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.662254},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cd2075f3d17b","ts":"2026-09-21T14:42:12.139132+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5376,"target":8.75,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":122.6,"room_to_5d_high_atr":-0.71},"price":8.6395,"vwap":8.5716,"ext_from_open_pct":0.23,"max_ext_allowed_pct":3.0,"volume_pace":1.216,"trend":"flat","recent_slope_pct":-0.0028,"volatility":"medium"},"price":8.6395,"volume":{"bars":72,"last_bar_volume":3728.0,"baseline_avg":5008.45,"bar_rvol":0.744342,"raw_accel":1.32419,"smooth_accel":1.985044,"accel_momentum":2.289485,"rvol_3bar":[0.082651,0.304561,0.744342],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":12.0,"sell_vol":1807.0,"unclassified_vol":0.0,"imbalance":-0.986806,"bid":8.63,"ask":8.64,"spread_pct":0.115808,"quote_size_imbalance":null,"quote_age_s":2.909524},"context":{"vwap":8.571381,"price_vs_vwap_pct":0.794728,"ema9":8.641322,"ema20":8.641554,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.262857,"dist_to_hod_atr":2.534548,"atr":0.043598,"spread_atr":0.229371,"own_change_pct":0.057937,"rel_strength_pct":{"SPY":0.067037,"IWM":0.02293}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.734521},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c263491751f1","ts":"2026-09-21T14:42:17.274186+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":103.1,"room_to_5d_high_atr":-0.07},"price":10.8977,"vwap":10.7893,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.932,"trend":"flat","recent_slope_pct":-0.0712,"volatility":"medium"},"price":10.8977,"volume":{"bars":72,"last_bar_volume":363964.0,"baseline_avg":364047.05,"bar_rvol":0.999772,"raw_accel":-0.027791,"smooth_accel":0.464985,"accel_momentum":0.556146,"rvol_3bar":[0.718871,1.064458,0.999772],"trend_3bar":"MIXED","projected_rvol":0.98061},"flow":{"window_s":30,"trades":227,"trade_rate":7.566667,"buy_vol":91709.0,"sell_vol":43785.0,"unclassified_vol":0.0,"imbalance":0.353698,"bid":10.89,"ask":10.9,"spread_pct":0.091785,"quote_size_imbalance":null,"quote_age_s":0.521237},"context":{"vwap":10.788889,"price_vs_vwap_pct":1.008545,"ema9":10.928781,"ema20":10.902909,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.199456,"dist_to_hod_atr":1.779697,"atr":0.074339,"spread_atr":0.13452,"own_change_pct":-0.091575,"rel_strength_pct":{"SPY":-0.082476,"IWM":-0.126583}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.353618},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d2919172d0b4","ts":"2026-09-21T14:42:17.274186+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.35x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2073,"target":5.31,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":93.3,"room_to_5d_high_atr":0.22},"price":5.265,"vwap":5.2531,"ext_from_open_pct":-1.03,"max_ext_allowed_pct":4.0,"volume_pace":0.346,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":5.265,"volume":{"bars":72,"last_bar_volume":909.0,"baseline_avg":2070.6,"bar_rvol":0.439003,"raw_accel":0.756013,"smooth_accel":-0.730891,"accel_momentum":0.094731,"rvol_3bar":[0.457123,0.101145,0.439003],"trend_3bar":"MIXED","projected_rvol":3.353283},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1757.0,"sell_vol":817.0,"unclassified_vol":0.0,"imbalance":0.36519,"bid":5.26,"ask":5.27,"spread_pct":0.189934,"quote_size_imbalance":null,"quote_age_s":0.936196},"context":{"vwap":5.252942,"price_vs_vwap_pct":0.229554,"ema9":5.262858,"ema20":5.261236,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.033835,"dist_to_hod_atr":3.353904,"atr":0.016399,"spread_atr":0.609801,"own_change_pct":-0.379147,"rel_strength_pct":{"SPY":-0.370048,"IWM":-0.414155}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.16032},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"356715a8a17c","ts":"2026-09-21T14:42:53.227756+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.3% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":5.7754,"target":6.07,"target_label":"range_20d_high","reward_risk":4.05,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.8337,"vwap":5.7505,"ext_from_open_pct":5.3,"max_ext_allowed_pct":3.0,"volume_pace":1.914,"trend":"flat","recent_slope_pct":0.0489,"volatility":"unknown"},"price":5.8337,"volume":{"bars":72,"last_bar_volume":28544.0,"baseline_avg":100683.05,"bar_rvol":0.283504,"raw_accel":-0.677374,"smooth_accel":0.193382,"accel_momentum":-0.937906,"rvol_3bar":[0.955633,0.68221,0.283504],"trend_3bar":"DECELERATING","projected_rvol":0.352143},"flow":{"window_s":30,"trades":125,"trade_rate":4.166667,"buy_vol":9193.0,"sell_vol":19050.0,"unclassified_vol":0.0,"imbalance":-0.349007,"bid":5.8,"ask":5.81,"spread_pct":0.172265,"quote_size_imbalance":null,"quote_age_s":1.155715},"context":{"vwap":5.750324,"price_vs_vwap_pct":1.449941,"ema9":5.834787,"ema20":5.837208,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-0.618399,"dist_to_hod_atr":1.34141,"atr":0.027061,"spread_atr":0.369535,"own_change_pct":-0.152137,"rel_strength_pct":{"SPY":-0.143037,"IWM":-0.187145}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.098945},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"6ae461e58f81","ts":"2026-09-21T14:42:58.302628+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7519,"target":5.87,"target_label":"ceiling","reward_risk":1.03,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.81,"vwap":5.7506,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":1.913,"trend":"flat","recent_slope_pct":-0.0325,"volatility":"unknown"},"price":5.81,"volume":{"bars":72,"last_bar_volume":28544.0,"baseline_avg":100683.05,"bar_rvol":0.283504,"raw_accel":-0.677374,"smooth_accel":0.193382,"accel_momentum":-0.937906,"rvol_3bar":[0.955633,0.68221,0.283504],"trend_3bar":"DECELERATING","projected_rvol":0.379415},"flow":{"window_s":30,"trades":125,"trade_rate":4.166667,"buy_vol":13394.0,"sell_vol":19115.0,"unclassified_vol":0.0,"imbalance":-0.175982,"bid":5.8,"ask":5.81,"spread_pct":0.172265,"quote_size_imbalance":null,"quote_age_s":0.020814},"context":{"vwap":5.750324,"price_vs_vwap_pct":1.03779,"ema9":5.834787,"ema20":5.837208,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.022147,"dist_to_hod_atr":2.217207,"atr":0.027061,"spread_atr":0.369535,"own_change_pct":-0.152137,"rel_strength_pct":{"SPY":-0.143037,"IWM":-0.187145}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.049892},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"eb1ca7ebbc77","ts":"2026-09-21T14:43:03.398147+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.45% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.0909,"target":9.09,"target_label":"range_20d_high","reward_risk":3.16,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3309,"vwap":8.2097,"ext_from_open_pct":4.01,"max_ext_allowed_pct":5.0,"volume_pace":5.48,"trend":"flat","recent_slope_pct":0.3841,"volatility":"unknown"},"price":8.3309,"volume":{"bars":73,"last_bar_volume":1612.0,"baseline_avg":2915.25,"bar_rvol":0.552954,"raw_accel":0.203883,"smooth_accel":-0.832613,"accel_momentum":0.091456,"rvol_3bar":[0.123462,0.363064,0.552954],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":833.0,"sell_vol":109.0,"unclassified_vol":0.0,"imbalance":0.768577,"bid":8.23,"ask":8.35,"spread_pct":1.447527,"quote_size_imbalance":null,"quote_age_s":2.366136},"context":{"vwap":8.209707,"price_vs_vwap_pct":1.476218,"ema9":8.251906,"ema20":8.284624,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-2.903263,"dist_to_hod_atr":3.237508,"atr":0.076942,"spread_atr":1.559619,"own_change_pct":0.607165,"rel_strength_pct":{"SPY":0.65525,"IWM":0.566818}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.424988},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e17da0995fd0","ts":"2026-09-21T14:43:03.398147+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.45,"pos_in_5d_range_pct":102.1,"room_to_5d_high_atr":-0.05},"price":10.885,"vwap":10.79,"ext_from_open_pct":-0.87,"max_ext_allowed_pct":3.0,"volume_pace":0.928,"trend":"flat","recent_slope_pct":-0.1844,"volatility":"medium"},"price":10.885,"volume":{"bars":73,"last_bar_volume":255010.0,"baseline_avg":370656.7,"bar_rvol":0.687995,"raw_accel":-0.299354,"smooth_accel":0.322323,"accel_momentum":-0.142663,"rvol_3bar":[1.064458,0.999772,0.687995],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":133,"trade_rate":4.433333,"buy_vol":47735.0,"sell_vol":88955.0,"unclassified_vol":0.0,"imbalance":-0.301558,"bid":10.88,"ask":10.89,"spread_pct":0.09187,"quote_size_imbalance":null,"quote_age_s":2.059857},"context":{"vwap":10.789927,"price_vs_vwap_pct":0.881129,"ema9":10.920025,"ema20":10.901203,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.314597,"dist_to_hod_atr":1.968388,"atr":0.073664,"spread_atr":0.135751,"own_change_pct":-0.243777,"rel_strength_pct":{"SPY":-0.195692,"IWM":-0.284124}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.207471},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"9699acd1728e","ts":"2026-09-21T14:43:08.511362+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5326,"target":8.75,"target_label":"ceiling","reward_risk":1.13,"pos_in_5d_range_pct":122.2,"room_to_5d_high_atr":-0.7},"price":8.6345,"vwap":8.572,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":1.207,"trend":"flat","recent_slope_pct":-0.0221,"volatility":"medium"},"price":8.6345,"volume":{"bars":73,"last_bar_volume":4199.0,"baseline_avg":3566.3,"bar_rvol":1.177411,"raw_accel":0.126341,"smooth_accel":4.085912,"accel_momentum":2.100869,"rvol_3bar":[0.304561,0.744342,1.177411],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":838.0,"sell_vol":1017.0,"unclassified_vol":0.0,"imbalance":-0.096496,"bid":8.63,"ask":8.65,"spread_pct":0.231481,"quote_size_imbalance":null,"quote_age_s":0.370663},"context":{"vwap":8.572014,"price_vs_vwap_pct":0.728959,"ema9":8.641058,"ema20":8.641406,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.32,"dist_to_hod_atr":2.77946,"atr":0.041555,"spread_atr":0.481292,"own_change_pct":0.057904,"rel_strength_pct":{"SPY":0.105989,"IWM":0.017557}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.113615},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5d8a6a83229d","ts":"2026-09-21T14:43:18.659617+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.13,"target":9.09,"target_label":"range_20d_high","reward_risk":7.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.25,"vwap":8.2097,"ext_from_open_pct":3.0,"max_ext_allowed_pct":4.0,"volume_pace":5.462,"trend":"flat","recent_slope_pct":0.1883,"volatility":"unknown"},"price":8.25,"volume":{"bars":73,"last_bar_volume":1612.0,"baseline_avg":2915.25,"bar_rvol":0.552954,"raw_accel":0.203883,"smooth_accel":-0.832613,"accel_momentum":0.091456,"rvol_3bar":[0.123462,0.363064,0.552954],"trend_3bar":"ACCELERATING","projected_rvol":0.158831},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":60.0,"sell_vol":110.0,"unclassified_vol":0.0,"imbalance":-0.294118,"bid":8.23,"ask":8.29,"spread_pct":0.726392,"quote_size_imbalance":null,"quote_age_s":4.880545},"context":{"vwap":8.209707,"price_vs_vwap_pct":0.4908,"ema9":8.251906,"ema20":8.284624,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.846154,"dist_to_hod_atr":4.288951,"atr":0.076942,"spread_atr":0.779809,"own_change_pct":0.607165,"rel_strength_pct":{"SPY":0.65525,"IWM":0.566818}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.162634},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b2dbc9809437","ts":"2026-09-21T14:43:23.735619+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":101.6,"room_to_5d_high_atr":-0.04},"price":10.8799,"vwap":10.7902,"ext_from_open_pct":-0.91,"max_ext_allowed_pct":3.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":-0.1937,"volatility":"medium"},"price":10.8799,"volume":{"bars":73,"last_bar_volume":255010.0,"baseline_avg":370656.7,"bar_rvol":0.687995,"raw_accel":-0.299354,"smooth_accel":0.322323,"accel_momentum":-0.142663,"rvol_3bar":[1.064458,0.999772,0.687995],"trend_3bar":"DECELERATING","projected_rvol":0.560392},"flow":{"window_s":30,"trades":219,"trade_rate":7.3,"buy_vol":27853.0,"sell_vol":68786.0,"unclassified_vol":0.0,"imbalance":-0.423566,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.634097},"context":{"vwap":10.789927,"price_vs_vwap_pct":0.833863,"ema9":10.920025,"ema20":10.901203,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.360834,"dist_to_hod_atr":2.037621,"atr":0.073664,"spread_atr":0.135751,"own_change_pct":-0.243777,"rel_strength_pct":{"SPY":-0.195692,"IWM":-0.284124}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.291411},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"1b5ad2e874f7","ts":"2026-09-21T14:44:04.447525+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9485,"target":9.1299,"target_label":"ceiling","reward_risk":1.1,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.88},"price":9.035,"vwap":9.0165,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":1.624,"trend":"flat","recent_slope_pct":-0.0432,"volatility":"medium"},"price":9.035,"volume":{"bars":74,"last_bar_volume":17555.0,"baseline_avg":23834.8,"bar_rvol":0.736528,"raw_accel":0.430492,"smooth_accel":0.670218,"accel_momentum":0.117668,"rvol_3bar":[1.15738,0.509622,0.736528],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":2791.0,"sell_vol":3978.0,"unclassified_vol":0.0,"imbalance":-0.175358,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":0.147009},"context":{"vwap":9.01645,"price_vs_vwap_pct":0.20574,"ema9":9.055316,"ema20":9.060043,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.039442,"dist_to_hod_atr":3.326783,"atr":0.028526,"spread_atr":0.350557,"own_change_pct":0.098397,"rel_strength_pct":{"SPY":0.146493,"IWM":0.101897}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.129156},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ea4d138d7f3c","ts":"2026-09-21T14:44:09.553891+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.09% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.07,"target":9.09,"target_label":"range_20d_high","reward_risk":4.67,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.25,"vwap":8.2098,"ext_from_open_pct":3.0,"max_ext_allowed_pct":4.0,"volume_pace":5.404,"trend":"flat","recent_slope_pct":0.2304,"volatility":"unknown"},"price":8.25,"volume":{"bars":74,"last_bar_volume":263.0,"baseline_avg":2839.85,"bar_rvol":0.092611,"raw_accel":-0.836849,"smooth_accel":-0.687293,"accel_momentum":0.14532,"rvol_3bar":[0.363064,0.552954,0.092611],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":103.0,"sell_vol":354.0,"unclassified_vol":0.0,"imbalance":-0.549234,"bid":8.21,"ask":8.3,"spread_pct":1.090248,"quote_size_imbalance":null,"quote_age_s":2.659854},"context":{"vwap":8.20974,"price_vs_vwap_pct":0.490393,"ema9":8.258525,"ema20":8.28466,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.846154,"dist_to_hod_atr":4.215157,"atr":0.078289,"spread_atr":1.149588,"own_change_pct":0.927043,"rel_strength_pct":{"SPY":0.975138,"IWM":0.930542}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.050865},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f0317a66566a","ts":"2026-09-21T14:44:40.191581+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.1,"target":9.09,"target_label":"range_20d_high","reward_risk":5.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.26,"vwap":8.2098,"ext_from_open_pct":3.12,"max_ext_allowed_pct":4.0,"volume_pace":5.372,"trend":"flat","recent_slope_pct":0.2546,"volatility":"unknown"},"price":8.26,"volume":{"bars":74,"last_bar_volume":263.0,"baseline_avg":2839.85,"bar_rvol":0.092611,"raw_accel":-0.836849,"smooth_accel":-0.687293,"accel_momentum":0.14532,"rvol_3bar":[0.363064,0.552954,0.092611],"trend_3bar":"MIXED","projected_rvol":0.503075},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":25.0,"sell_vol":580.0,"unclassified_vol":0.0,"imbalance":-0.917355,"bid":8.22,"ask":8.3,"spread_pct":0.968523,"quote_size_imbalance":null,"quote_age_s":2.616606},"context":{"vwap":8.20974,"price_vs_vwap_pct":0.612199,"ema9":8.258525,"ema20":8.28466,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.729604,"dist_to_hod_atr":4.087425,"atr":0.078289,"spread_atr":1.021856,"own_change_pct":0.927043,"rel_strength_pct":{"SPY":0.975138,"IWM":0.930542}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.084957},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"012cdebc81b3","ts":"2026-09-21T14:44:55.402491+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.4,"target":13.65,"target_label":"premarket_high","reward_risk":1.41,"pos_in_5d_range_pct":150.5,"room_to_5d_high_atr":-1.51},"price":12.9196,"vwap":12.7726,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.992,"trend":"flat","recent_slope_pct":0.9078,"volatility":"high"},"price":12.9196,"volume":{"bars":74,"last_bar_volume":31586.0,"baseline_avg":13400.05,"bar_rvol":2.357155,"raw_accel":3.586988,"smooth_accel":0.460465,"accel_momentum":1.19522,"rvol_3bar":[0.327589,0.497842,2.357155],"trend_3bar":"ACCELERATING","projected_rvol":6.101783},"flow":{"window_s":30,"trades":222,"trade_rate":7.4,"buy_vol":14279.0,"sell_vol":10707.0,"unclassified_vol":0.0,"imbalance":0.14296,"bid":12.91,"ask":12.93,"spread_pct":0.154799,"quote_size_imbalance":null,"quote_age_s":0.437914},"context":{"vwap":12.770073,"price_vs_vwap_pct":1.170915,"ema9":12.537761,"ema20":12.503822,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.37971,"dist_to_hod_atr":7.46674,"atr":0.11791,"spread_atr":0.169622,"own_change_pct":2.0,"rel_strength_pct":{"SPY":2.048096,"IWM":2.0035}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.336979},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d92263662902","ts":"2026-09-21T14:44:55.402491+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5231,"target":8.75,"target_label":"ceiling","reward_risk":1.23,"pos_in_5d_range_pct":121.4,"room_to_5d_high_atr":-0.67},"price":8.625,"vwap":8.5723,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.183,"trend":"flat","recent_slope_pct":-0.0266,"volatility":"medium"},"price":8.625,"volume":{"bars":74,"last_bar_volume":1164.0,"baseline_avg":3312.2,"bar_rvol":0.351428,"raw_accel":-0.722791,"smooth_accel":2.496538,"accel_momentum":-1.589374,"rvol_3bar":[0.744342,1.177411,0.351428],"trend_3bar":"MIXED","projected_rvol":0.234436},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":304.0,"sell_vol":314.0,"unclassified_vol":0.0,"imbalance":-0.016181,"bid":8.62,"ask":8.64,"spread_pct":0.23175,"quote_size_imbalance":null,"quote_age_s":0.264488},"context":{"vwap":8.572181,"price_vs_vwap_pct":0.616168,"ema9":8.640486,"ema20":8.641101,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.428571,"dist_to_hod_atr":3.180587,"atr":0.039301,"spread_atr":0.508894,"own_change_pct":0.02895,"rel_strength_pct":{"SPY":0.077045,"IWM":0.032449}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.005687},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0a9443cd4faa","ts":"2026-09-21T14:45:05.690488+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":100.4,"room_to_5d_high_atr":-0.01},"price":10.865,"vwap":10.7917,"ext_from_open_pct":-1.05,"max_ext_allowed_pct":4.0,"volume_pace":0.921,"trend":"flat","recent_slope_pct":-0.1011,"volatility":"medium"},"price":10.865,"volume":{"bars":75,"last_bar_volume":182053.0,"baseline_avg":380091.55,"bar_rvol":0.478971,"raw_accel":-0.531095,"smooth_accel":-0.166211,"accel_momentum":-0.320363,"rvol_3bar":[0.687995,1.026865,0.478971],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":161,"trade_rate":5.366667,"buy_vol":115355.0,"sell_vol":11859.0,"unclassified_vol":0.0,"imbalance":0.813558,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.57246},"context":{"vwap":10.791693,"price_vs_vwap_pct":0.679291,"ema9":10.899416,"ema20":10.894205,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.49592,"dist_to_hod_atr":2.245728,"atr":0.073473,"spread_atr":0.136105,"own_change_pct":-0.985136,"rel_strength_pct":{"SPY":-0.948738,"IWM":-0.967637}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.389671},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cdc4fb3a064b","ts":"2026-09-21T14:45:10.877398+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5305,"target":8.75,"target_label":"ceiling","reward_risk":1.15,"pos_in_5d_range_pct":122.0,"room_to_5d_high_atr":-0.69},"price":8.6324,"vwap":8.5723,"ext_from_open_pct":0.14,"max_ext_allowed_pct":3.0,"volume_pace":1.18,"trend":"flat","recent_slope_pct":-0.0234,"volatility":"medium"},"price":8.6324,"volume":{"bars":75,"last_bar_volume":717.0,"baseline_avg":2415.55,"bar_rvol":0.296827,"raw_accel":-0.384021,"smooth_accel":0.050449,"accel_momentum":-2.446089,"rvol_3bar":[1.177411,0.351428,0.296827],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":454.0,"sell_vol":314.0,"unclassified_vol":0.0,"imbalance":0.182292,"bid":8.62,"ask":8.64,"spread_pct":0.23175,"quote_size_imbalance":null,"quote_age_s":2.682855},"context":{"vwap":8.572273,"price_vs_vwap_pct":0.701417,"ema9":8.637389,"ema20":8.639567,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.344,"dist_to_hod_atr":3.141314,"atr":0.037437,"spread_atr":0.534237,"own_change_pct":-0.231348,"rel_strength_pct":{"SPY":-0.194949,"IWM":-0.213848}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.054109},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b6cc45ed10b1","ts":"2026-09-21T14:45:10.877398+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":99.7,"room_to_5d_high_atr":0.01},"price":10.8567,"vwap":10.7923,"ext_from_open_pct":-1.12,"max_ext_allowed_pct":4.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":-0.1164,"volatility":"medium"},"price":10.8567,"volume":{"bars":75,"last_bar_volume":182053.0,"baseline_avg":380091.55,"bar_rvol":0.478971,"raw_accel":-0.531095,"smooth_accel":-0.166211,"accel_momentum":-0.320363,"rvol_3bar":[0.687995,1.026865,0.478971],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":297,"trade_rate":9.9,"buy_vol":196277.0,"sell_vol":56757.0,"unclassified_vol":0.0,"imbalance":0.551388,"bid":10.85,"ask":10.86,"spread_pct":0.092123,"quote_size_imbalance":null,"quote_age_s":0.931226},"context":{"vwap":10.791693,"price_vs_vwap_pct":0.60238,"ema9":10.899416,"ema20":10.894205,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.57117,"dist_to_hod_atr":2.358695,"atr":0.073473,"spread_atr":0.136105,"own_change_pct":-0.985136,"rel_strength_pct":{"SPY":-0.948738,"IWM":-0.967637}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.264099},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ff7f4ec87137","ts":"2026-09-21T14:45:31.714918+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.11,"target":9.09,"target_label":"range_20d_high","reward_risk":5.13,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.27,"vwap":8.2099,"ext_from_open_pct":3.25,"max_ext_allowed_pct":4.0,"volume_pace":5.32,"trend":"flat","recent_slope_pct":0.1149,"volatility":"unknown"},"price":8.27,"volume":{"bars":75,"last_bar_volume":1070.0,"baseline_avg":2815.4,"bar_rvol":0.380053,"raw_accel":0.52021,"smooth_accel":0.390463,"accel_momentum":1.077756,"rvol_3bar":[0.552954,0.092611,0.380053],"trend_3bar":"MIXED","projected_rvol":0.626273},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":255.0,"sell_vol":677.0,"unclassified_vol":0.0,"imbalance":-0.45279,"bid":8.21,"ask":8.29,"spread_pct":0.969697,"quote_size_imbalance":null,"quote_age_s":2.974281},"context":{"vwap":8.209834,"price_vs_vwap_pct":0.732857,"ema9":8.26082,"ema20":8.283264,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.613054,"dist_to_hod_atr":3.953521,"atr":0.078411,"spread_atr":1.020264,"own_change_pct":0.608273,"rel_strength_pct":{"SPY":0.644671,"IWM":0.625772}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.172084},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"754a0f103a02","ts":"2026-09-21T14:46:02.748457+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":10.56,"target":11.03,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":100.7,"room_to_5d_high_atr":-0.02},"price":10.869,"vwap":10.7926,"ext_from_open_pct":-1.01,"max_ext_allowed_pct":4.0,"volume_pace":0.92,"trend":"flat","recent_slope_pct":-0.0259,"volatility":"medium"},"price":10.869,"volume":{"bars":76,"last_bar_volume":327841.0,"baseline_avg":374909.4,"bar_rvol":0.874454,"raw_accel":0.8008,"smooth_accel":-0.095835,"accel_momentum":0.070375,"rvol_3bar":[1.026865,0.478971,0.874454],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":24942.0,"sell_vol":567.0,"unclassified_vol":0.0,"imbalance":0.955545,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.221647},"context":{"vwap":10.792606,"price_vs_vwap_pct":0.70784,"ema9":10.892293,"ema20":10.891309,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.459655,"dist_to_hod_atr":2.212523,"atr":0.072768,"spread_atr":0.137424,"own_change_pct":-0.423465,"rel_strength_pct":{"SPY":-0.36295,"IWM":-0.423465}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.83558},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3acac298836f","ts":"2026-09-21T14:46:08.009448+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.15 below VWAP $9.16","plan":{"state":"PASS","setup":"","stop":9.0381,"target":9.26,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":304.9,"room_to_5d_high_atr":-4.45},"price":9.155,"vwap":9.158,"ext_from_open_pct":5.35,"max_ext_allowed_pct":4.0,"volume_pace":13.472,"trend":"flat","recent_slope_pct":-0.6733,"volatility":"medium"},"price":9.155,"volume":{"bars":76,"last_bar_volume":199660.0,"baseline_avg":259352.8,"bar_rvol":0.769839,"raw_accel":0.561527,"smooth_accel":0.447896,"accel_momentum":0.174837,"rvol_3bar":[2.092543,0.500859,0.769839],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":694,"trade_rate":23.133333,"buy_vol":51872.0,"sell_vol":99074.0,"unclassified_vol":0.0,"imbalance":-0.312708,"bid":9.15,"ask":9.16,"spread_pct":0.10923,"quote_size_imbalance":null,"quote_age_s":0.410289},"context":{"vwap":9.157973,"price_vs_vwap_pct":-0.032459,"ema9":9.280127,"ema20":9.279154,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-5.03112,"dist_to_hod_atr":3.730498,"atr":0.130009,"spread_atr":0.076917,"own_change_pct":-2.147279,"rel_strength_pct":{"SPY":-2.086763,"IWM":-2.147279}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.240735},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"13927515af87","ts":"2026-09-21T14:46:13.327685+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.5% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.0498,"target":9.26,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":306.1,"room_to_5d_high_atr":-4.47},"price":9.1667,"vwap":9.1581,"ext_from_open_pct":5.49,"max_ext_allowed_pct":4.0,"volume_pace":13.465,"trend":"flat","recent_slope_pct":-0.6478,"volatility":"medium"},"price":9.1667,"volume":{"bars":76,"last_bar_volume":199660.0,"baseline_avg":259352.8,"bar_rvol":0.769839,"raw_accel":0.561527,"smooth_accel":0.447896,"accel_momentum":0.174837,"rvol_3bar":[2.092543,0.500859,0.769839],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":746,"trade_rate":24.866667,"buy_vol":55484.0,"sell_vol":107993.0,"unclassified_vol":0.0,"imbalance":-0.321201,"bid":9.16,"ask":9.17,"spread_pct":0.109111,"quote_size_imbalance":null,"quote_age_s":1.312905},"context":{"vwap":9.157973,"price_vs_vwap_pct":0.095299,"ema9":9.280127,"ema20":9.279154,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.909751,"dist_to_hod_atr":3.640504,"atr":0.130009,"spread_atr":0.076917,"own_change_pct":-2.147279,"rel_strength_pct":{"SPY":-2.086763,"IWM":-2.147279}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.247273},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9b928c7dc0e2","ts":"2026-09-21T14:46:13.327685+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7797,"target":8.95,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":133.8,"room_to_5d_high_atr":-0.45},"price":8.9201,"vwap":8.8804,"ext_from_open_pct":2.18,"max_ext_allowed_pct":3.0,"volume_pace":1.205,"trend":"flat","recent_slope_pct":-0.1005,"volatility":"high"},"price":8.9201,"volume":{"bars":76,"last_bar_volume":4590.0,"baseline_avg":7023.6,"bar_rvol":0.653511,"raw_accel":1.614044,"smooth_accel":-0.476108,"accel_momentum":0.000538,"rvol_3bar":[0.327385,0.192187,0.653511],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1596.0,"sell_vol":1372.0,"unclassified_vol":0.0,"imbalance":0.075472,"bid":8.92,"ask":8.94,"spread_pct":0.223964,"quote_size_imbalance":null,"quote_age_s":1.354699},"context":{"vwap":8.880419,"price_vs_vwap_pct":0.446832,"ema9":8.92908,"ema20":8.913735,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.652701,"dist_to_hod_atr":4.048369,"atr":0.037027,"spread_atr":0.540143,"own_change_pct":0.056022,"rel_strength_pct":{"SPY":0.116537,"IWM":0.056022}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.049322},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"601fee54f5ca","ts":"2026-09-21T14:46:58.167084+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.78 below VWAP $12.78","plan":{"state":"PASS","setup":"","stop":12.3882,"target":13.65,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":147.5,"room_to_5d_high_atr":-1.42},"price":12.78,"vwap":12.7803,"ext_from_open_pct":-1.77,"max_ext_allowed_pct":3.0,"volume_pace":1.01,"trend":"flat","recent_slope_pct":0.579,"volatility":"high"},"price":12.78,"volume":{"bars":76,"last_bar_volume":103311.0,"baseline_avg":17642.5,"bar_rvol":5.855803,"raw_accel":0.361021,"smooth_accel":9.496639,"accel_momentum":4.723712,"rvol_3bar":[2.357155,5.206313,5.855803],"trend_3bar":"ACCELERATING","projected_rvol":1.589436},"flow":{"window_s":30,"trades":143,"trade_rate":4.766667,"buy_vol":2878.0,"sell_vol":10731.0,"unclassified_vol":0.0,"imbalance":-0.577045,"bid":12.77,"ask":12.82,"spread_pct":0.390778,"quote_size_imbalance":null,"quote_age_s":0.178574},"context":{"vwap":12.779661,"price_vs_vwap_pct":0.002656,"ema9":12.673655,"ema20":12.578522,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.391304,"dist_to_hod_atr":7.63773,"atr":0.133548,"spread_atr":0.374399,"own_change_pct":3.28,"rel_strength_pct":{"SPY":3.340515,"IWM":3.28}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.379059},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"506216470807","ts":"2026-09-21T14:47:04.013271+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.3982,"target":13.65,"target_label":"premarket_high","reward_risk":2.2,"pos_in_5d_range_pct":147.7,"room_to_5d_high_atr":-1.43},"price":12.79,"vwap":12.7803,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":3.0,"volume_pace":1.009,"trend":"flat","recent_slope_pct":-0.0535,"volatility":"high"},"price":12.79,"volume":{"bars":77,"last_bar_volume":27210.0,"baseline_avg":22167.3,"bar_rvol":1.227484,"raw_accel":-0.73662,"smooth_accel":3.798642,"accel_momentum":-5.697997,"rvol_3bar":[5.206313,5.855803,1.227484],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":2761.0,"sell_vol":9035.0,"unclassified_vol":0.0,"imbalance":-0.531875,"bid":12.78,"ask":12.81,"spread_pct":0.234467,"quote_size_imbalance":null,"quote_age_s":0.163817},"context":{"vwap":12.780296,"price_vs_vwap_pct":0.075929,"ema9":12.693564,"ema20":12.597063,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.318841,"dist_to_hod_atr":7.203562,"atr":0.140208,"spread_atr":0.213967,"own_change_pct":2.649576,"rel_strength_pct":{"SPY":2.682077,"IWM":2.633828}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.652868},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"babe09997d30","ts":"2026-09-21T14:47:04.013271+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7966,"target":8.95,"target_label":"premarket_high","reward_risk":0.09,"pos_in_5d_range_pct":136.1,"room_to_5d_high_atr":-0.48},"price":8.937,"vwap":8.8806,"ext_from_open_pct":2.37,"max_ext_allowed_pct":3.0,"volume_pace":1.195,"trend":"flat","recent_slope_pct":-0.025,"volatility":"high"},"price":8.937,"volume":{"bars":77,"last_bar_volume":3388.0,"baseline_avg":7187.95,"bar_rvol":0.471344,"raw_accel":-0.261874,"smooth_accel":-0.255013,"accel_momentum":0.221095,"rvol_3bar":[0.192187,0.653511,0.471344],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":577.0,"sell_vol":1384.0,"unclassified_vol":0.0,"imbalance":-0.411525,"bid":8.91,"ask":8.93,"spread_pct":0.224215,"quote_size_imbalance":null,"quote_age_s":3.634383},"context":{"vwap":8.880555,"price_vs_vwap_pct":0.635601,"ema9":8.927264,"ema20":8.914331,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.466373,"dist_to_hod_atr":3.636333,"atr":0.036575,"spread_atr":0.546817,"own_change_pct":-0.223714,"rel_strength_pct":{"SPY":-0.191213,"IWM":-0.239462}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.19397},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3fbb34271346","ts":"2026-09-21T14:47:06.980398+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.78 below VWAP $12.78","plan":{"state":"PASS","setup":"","stop":12.3882,"target":13.65,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":147.5,"room_to_5d_high_atr":-1.42},"price":12.78,"vwap":12.7803,"ext_from_open_pct":-1.77,"max_ext_allowed_pct":3.0,"volume_pace":1.009,"trend":"flat","recent_slope_pct":-0.0691,"volatility":"high"},"price":12.78,"volume":{"bars":77,"last_bar_volume":27210.0,"baseline_avg":22167.3,"bar_rvol":1.227484,"raw_accel":-0.73662,"smooth_accel":3.798642,"accel_momentum":-5.697997,"rvol_3bar":[5.206313,5.855803,1.227484],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":1214.0,"sell_vol":6581.0,"unclassified_vol":0.0,"imbalance":-0.688518,"bid":12.78,"ask":12.81,"spread_pct":0.234467,"quote_size_imbalance":null,"quote_age_s":0.916653},"context":{"vwap":12.780296,"price_vs_vwap_pct":-0.002316,"ema9":12.693564,"ema20":12.597063,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.391304,"dist_to_hod_atr":7.274884,"atr":0.140208,"spread_atr":0.213967,"own_change_pct":2.649576,"rel_strength_pct":{"SPY":2.682077,"IWM":2.633828}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.845145},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4625b0de76ef","ts":"2026-09-21T14:47:11.340347+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.4,"target":13.65,"target_label":"premarket_high","reward_risk":2.06,"pos_in_5d_range_pct":148.1,"room_to_5d_high_atr":-1.44},"price":12.8091,"vwap":12.7803,"ext_from_open_pct":-1.54,"max_ext_allowed_pct":3.0,"volume_pace":1.009,"trend":"flat","recent_slope_pct":-0.0237,"volatility":"high"},"price":12.8091,"volume":{"bars":77,"last_bar_volume":27210.0,"baseline_avg":22167.3,"bar_rvol":1.227484,"raw_accel":-0.73662,"smooth_accel":3.798642,"accel_momentum":-5.697997,"rvol_3bar":[5.206313,5.855803,1.227484],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":1465.0,"sell_vol":8967.0,"unclassified_vol":0.0,"imbalance":-0.719133,"bid":12.79,"ask":12.82,"spread_pct":0.234283,"quote_size_imbalance":null,"quote_age_s":0.817477},"context":{"vwap":12.780296,"price_vs_vwap_pct":0.225378,"ema9":12.693564,"ema20":12.597063,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.180435,"dist_to_hod_atr":7.067336,"atr":0.140208,"spread_atr":0.213967,"own_change_pct":2.649576,"rel_strength_pct":{"SPY":2.682077,"IWM":2.633828}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.882725},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"66360273563f","ts":"2026-09-21T14:47:32.010522+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.14 below VWAP $9.16","plan":{"state":"PASS","setup":"","stop":9.0281,"target":9.26,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":303.9,"room_to_5d_high_atr":-4.43},"price":9.145,"vwap":9.1586,"ext_from_open_pct":5.24,"max_ext_allowed_pct":4.0,"volume_pace":13.326,"trend":"flat","recent_slope_pct":-0.1537,"volatility":"medium"},"price":9.145,"volume":{"bars":77,"last_bar_volume":158871.0,"baseline_avg":246856.8,"bar_rvol":0.643576,"raw_accel":-0.204292,"smooth_accel":-0.457,"accel_momentum":-0.904896,"rvol_3bar":[0.500859,0.769839,0.643576],"trend_3bar":"MIXED","projected_rvol":0.607402},"flow":{"window_s":30,"trades":319,"trade_rate":10.633333,"buy_vol":38204.0,"sell_vol":37927.0,"unclassified_vol":0.0,"imbalance":0.003638,"bid":9.14,"ask":9.15,"spread_pct":0.109349,"quote_size_imbalance":null,"quote_age_s":0.162163},"context":{"vwap":9.158415,"price_vs_vwap_pct":-0.146481,"ema9":9.264102,"ema20":9.271615,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-5.134855,"dist_to_hod_atr":3.670895,"atr":0.134845,"spread_atr":0.074159,"own_change_pct":-1.971231,"rel_strength_pct":{"SPY":-1.93873,"IWM":-1.986979}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.002342},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"08ea8a5ce500","ts":"2026-09-21T14:47:37.076832+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.0581,"target":9.26,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":306.9,"room_to_5d_high_atr":-4.49},"price":9.175,"vwap":9.1586,"ext_from_open_pct":5.58,"max_ext_allowed_pct":4.0,"volume_pace":13.315,"trend":"flat","recent_slope_pct":-0.0883,"volatility":"medium"},"price":9.175,"volume":{"bars":77,"last_bar_volume":158871.0,"baseline_avg":246856.8,"bar_rvol":0.643576,"raw_accel":-0.204292,"smooth_accel":-0.457,"accel_momentum":-0.904896,"rvol_3bar":[0.500859,0.769839,0.643576],"trend_3bar":"MIXED","projected_rvol":0.578362},"flow":{"window_s":30,"trades":362,"trade_rate":12.066667,"buy_vol":41832.0,"sell_vol":40348.0,"unclassified_vol":0.0,"imbalance":0.018058,"bid":9.17,"ask":9.18,"spread_pct":0.108992,"quote_size_imbalance":null,"quote_age_s":0.021473},"context":{"vwap":9.158415,"price_vs_vwap_pct":0.181087,"ema9":9.264102,"ema20":9.271615,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.823651,"dist_to_hod_atr":3.448416,"atr":0.134845,"spread_atr":0.074159,"own_change_pct":-1.971231,"rel_strength_pct":{"SPY":-1.93873,"IWM":-1.986979}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.011622},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1ba069b38ecb","ts":"2026-09-21T14:48:02.489304+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.0636,"target":9.26,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":307.4,"room_to_5d_high_atr":-4.5},"price":9.1805,"vwap":9.1587,"ext_from_open_pct":5.64,"max_ext_allowed_pct":4.0,"volume_pace":13.265,"trend":"flat","recent_slope_pct":-0.0194,"volatility":"medium"},"price":9.1805,"volume":{"bars":78,"last_bar_volume":118343.0,"baseline_avg":245313.55,"bar_rvol":0.482415,"raw_accel":-0.2551,"smooth_accel":-0.416718,"accel_momentum":0.040282,"rvol_3bar":[0.769839,0.643576,0.482415],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":307,"trade_rate":10.233333,"buy_vol":22040.0,"sell_vol":31065.0,"unclassified_vol":0.0,"imbalance":-0.169946,"bid":9.18,"ask":9.19,"spread_pct":0.108873,"quote_size_imbalance":null,"quote_age_s":0.024852},"context":{"vwap":9.158669,"price_vs_vwap_pct":0.238363,"ema9":9.245281,"ema20":9.261938,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.766598,"dist_to_hod_atr":3.296982,"atr":0.13937,"spread_atr":0.071752,"own_change_pct":-2.860169,"rel_strength_pct":{"SPY":-2.869271,"IWM":-2.84268}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.081985},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"e860832eeeff","ts":"2026-09-21T14:48:02.489304+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.40x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.0033,"target":5.1483,"target_label":"premarket_high","reward_risk":0.67,"pos_in_5d_range_pct":60.3,"room_to_5d_high_atr":0.78},"price":5.09,"vwap":5.0842,"ext_from_open_pct":-1.74,"max_ext_allowed_pct":3.0,"volume_pace":0.397,"trend":"flat","recent_slope_pct":0.05,"volatility":"high"},"price":5.09,"volume":{"bars":78,"last_bar_volume":302527.0,"baseline_avg":48430.0,"bar_rvol":6.246686,"raw_accel":13.008474,"smooth_accel":9.700642,"accel_momentum":9.50434,"rvol_3bar":[0.337811,0.45203,6.246686],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":3316.0,"sell_vol":286794.0,"unclassified_vol":0.0,"imbalance":-0.97714,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":1.823648},"context":{"vwap":5.084231,"price_vs_vwap_pct":0.113469,"ema9":5.082291,"ema20":5.080085,"ema_stack":true,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.303263,"dist_to_hod_atr":5.352548,"atr":0.022419,"spread_atr":0.446046,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.009102,"IWM":0.017489}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-6.103885},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ea1d192e9ecd","ts":"2026-09-21T14:48:02.489304+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.56,"target":10.86,"target_label":"prev_day_high","reward_risk":0.05,"pos_in_5d_range_pct":98.8,"room_to_5d_high_atr":0.03},"price":10.845,"vwap":10.7937,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":3.0,"volume_pace":0.91,"trend":"flat","recent_slope_pct":-0.0542,"volatility":"medium"},"price":10.845,"volume":{"bars":78,"last_bar_volume":250857.0,"baseline_avg":371643.1,"bar_rvol":0.674994,"raw_accel":0.387637,"smooth_accel":-0.079771,"accel_momentum":0.234509,"rvol_3bar":[0.874454,0.477477,0.674994],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":225,"trade_rate":7.5,"buy_vol":105950.0,"sell_vol":74088.0,"unclassified_vol":0.0,"imbalance":0.176974,"bid":10.84,"ask":10.85,"spread_pct":0.092208,"quote_size_imbalance":null,"quote_age_s":0.942487},"context":{"vwap":10.793679,"price_vs_vwap_pct":0.47547,"ema9":10.879267,"ema20":10.885063,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.677244,"dist_to_hod_atr":2.7055,"atr":0.068379,"spread_atr":0.146243,"own_change_pct":-0.367478,"rel_strength_pct":{"SPY":-0.37658,"IWM":-0.349989}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.119456},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e010e87c6ce6","ts":"2026-09-21T14:48:28.131215+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.5177,"target":6.79,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":114.8,"room_to_5d_high_atr":-0.4},"price":6.681,"vwap":6.4891,"ext_from_open_pct":4.55,"max_ext_allowed_pct":3.0,"volume_pace":1.066,"trend":"flat","recent_slope_pct":0.083,"volatility":"high"},"price":6.681,"volume":{"bars":78,"last_bar_volume":5626.0,"baseline_avg":13072.75,"bar_rvol":0.430361,"raw_accel":0.721443,"smooth_accel":-0.160562,"accel_momentum":-0.422594,"rvol_3bar":[1.35409,0.066759,0.430361],"trend_3bar":"MIXED","projected_rvol":0.004731},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":29.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.68,"ask":6.7,"spread_pct":0.298954,"quote_size_imbalance":null,"quote_age_s":2.659664},"context":{"vwap":6.489078,"price_vs_vwap_pct":2.957613,"ema9":6.696813,"ema20":6.689005,"ema_stack":false,"ema_warm":true,"hod":6.79,"dist_to_hod_pct":-1.605302,"dist_to_hod_atr":2.510863,"atr":0.043411,"spread_atr":0.460709,"own_change_pct":-0.940253,"rel_strength_pct":{"SPY":-0.949355,"IWM":-0.922764}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.430361},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c99f75ed2bbb","ts":"2026-09-21T14:48:43.531394+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.08 below VWAP $5.08","plan":{"state":"PASS","setup":"","stop":4.9953,"target":5.1483,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":59.1,"room_to_5d_high_atr":0.8},"price":5.082,"vwap":5.0842,"ext_from_open_pct":-1.89,"max_ext_allowed_pct":4.0,"volume_pace":0.395,"trend":"flat","recent_slope_pct":0.0185,"volatility":"high"},"price":5.082,"volume":{"bars":78,"last_bar_volume":302527.0,"baseline_avg":48430.0,"bar_rvol":6.246686,"raw_accel":13.008474,"smooth_accel":9.700642,"accel_momentum":9.50434,"rvol_3bar":[0.337811,0.45203,6.246686],"trend_3bar":"ACCELERATING","projected_rvol":0.402424},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":9881.0,"sell_vol":389.0,"unclassified_vol":0.0,"imbalance":0.924245,"bid":5.09,"ask":5.1,"spread_pct":0.196271,"quote_size_imbalance":null,"quote_age_s":2.409551},"context":{"vwap":5.084231,"price_vs_vwap_pct":-0.04388,"ema9":5.082291,"ema20":5.080085,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.456814,"dist_to_hod_atr":5.709385,"atr":0.022419,"spread_atr":0.446046,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.009102,"IWM":0.017489}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":5.773471},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"eed964a17b43","ts":"2026-09-21T14:48:48.610506+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.78 below VWAP $12.78","plan":{"state":"PASS","setup":"","stop":12.3882,"target":13.65,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":147.5,"room_to_5d_high_atr":-1.42},"price":12.78,"vwap":12.7807,"ext_from_open_pct":-1.77,"max_ext_allowed_pct":3.0,"volume_pace":0.995,"trend":"flat","recent_slope_pct":-0.2677,"volatility":"high"},"price":12.78,"volume":{"bars":78,"last_bar_volume":15039.0,"baseline_avg":23039.9,"bar_rvol":0.652737,"raw_accel":-0.447299,"smooth_accel":0.272611,"accel_momentum":-3.526031,"rvol_3bar":[5.855803,1.227484,0.652737],"trend_3bar":"DECELERATING","projected_rvol":0.551366},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":1796.0,"sell_vol":4377.0,"unclassified_vol":0.0,"imbalance":-0.418111,"bid":12.78,"ask":12.81,"spread_pct":0.234467,"quote_size_imbalance":null,"quote_age_s":1.735123},"context":{"vwap":12.780631,"price_vs_vwap_pct":-0.004937,"ema9":12.724791,"ema20":12.621123,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.391304,"dist_to_hod_atr":7.287538,"atr":0.139965,"spread_atr":0.214339,"own_change_pct":2.877433,"rel_strength_pct":{"SPY":2.868331,"IWM":2.894922}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.272917},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"8e41e75d2eba","ts":"2026-09-21T14:48:48.610506+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.39x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.0083,"target":5.1483,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":61.0,"room_to_5d_high_atr":0.76},"price":5.095,"vwap":5.0843,"ext_from_open_pct":-1.64,"max_ext_allowed_pct":4.0,"volume_pace":0.395,"trend":"flat","recent_slope_pct":0.0696,"volatility":"high"},"price":5.095,"volume":{"bars":78,"last_bar_volume":302527.0,"baseline_avg":48430.0,"bar_rvol":6.246686,"raw_accel":13.008474,"smooth_accel":9.700642,"accel_momentum":9.50434,"rvol_3bar":[0.337811,0.45203,6.246686],"trend_3bar":"ACCELERATING","projected_rvol":0.363001},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":9948.0,"sell_vol":389.0,"unclassified_vol":0.0,"imbalance":0.924736,"bid":5.09,"ask":5.1,"spread_pct":0.196271,"quote_size_imbalance":null,"quote_age_s":0.182518},"context":{"vwap":5.084231,"price_vs_vwap_pct":0.211812,"ema9":5.082291,"ema20":5.080085,"ema_stack":true,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.207294,"dist_to_hod_atr":5.129526,"atr":0.022419,"spread_atr":0.446046,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.009102,"IWM":0.017489}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":5.776538},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0d6dadc59e8d","ts":"2026-09-21T14:48:53.759670+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.4,"target":13.65,"target_label":"premarket_high","reward_risk":2.05,"pos_in_5d_range_pct":148.1,"room_to_5d_high_atr":-1.44},"price":12.81,"vwap":12.7808,"ext_from_open_pct":-1.54,"max_ext_allowed_pct":3.0,"volume_pace":0.994,"trend":"flat","recent_slope_pct":-0.2209,"volatility":"high"},"price":12.81,"volume":{"bars":78,"last_bar_volume":15039.0,"baseline_avg":23039.9,"bar_rvol":0.652737,"raw_accel":-0.447299,"smooth_accel":0.272611,"accel_momentum":-3.526031,"rvol_3bar":[5.855803,1.227484,0.652737],"trend_3bar":"DECELERATING","projected_rvol":0.53324},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":1974.0,"sell_vol":4728.0,"unclassified_vol":0.0,"imbalance":-0.410922,"bid":12.8,"ask":12.87,"spread_pct":0.545384,"quote_size_imbalance":null,"quote_age_s":3.015815},"context":{"vwap":12.780631,"price_vs_vwap_pct":0.229793,"ema9":12.724791,"ema20":12.621123,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.173913,"dist_to_hod_atr":7.073199,"atr":0.139965,"spread_atr":0.500125,"own_change_pct":2.877433,"rel_strength_pct":{"SPY":2.868331,"IWM":2.894922}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.268224},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"915cd423d855","ts":"2026-09-21T14:49:29.883664+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.78 below VWAP $12.78","plan":{"state":"PASS","setup":"","stop":12.3861,"target":13.65,"target_label":"premarket_high","reward_risk":2.23,"pos_in_5d_range_pct":147.4,"room_to_5d_high_atr":-1.42},"price":12.7779,"vwap":12.7808,"ext_from_open_pct":-1.78,"max_ext_allowed_pct":3.0,"volume_pace":0.989,"trend":"flat","recent_slope_pct":-0.1695,"volatility":"high"},"price":12.7779,"volume":{"bars":79,"last_bar_volume":11821.0,"baseline_avg":22657.45,"bar_rvol":0.521727,"raw_accel":-0.213977,"smooth_accel":-0.743506,"accel_momentum":-1.016117,"rvol_3bar":[1.227484,0.652737,0.521727],"trend_3bar":"DECELERATING","projected_rvol":0.530537},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":937.0,"sell_vol":5050.0,"unclassified_vol":0.0,"imbalance":-0.686988,"bid":12.77,"ask":12.8,"spread_pct":0.23465,"quote_size_imbalance":null,"quote_age_s":1.873613},"context":{"vwap":12.780779,"price_vs_vwap_pct":-0.022527,"ema9":12.743833,"ema20":12.640064,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.406522,"dist_to_hod_atr":7.556141,"atr":0.135267,"spread_atr":0.221783,"own_change_pct":0.54902,"rel_strength_pct":{"SPY":0.504802,"IWM":0.517521}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.35842},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0f93e9de542f","ts":"2026-09-21T14:49:40.152674+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.53 below VWAP $11.54","plan":{"state":"PASS","setup":"","stop":11.3255,"target":11.77,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":112.6,"room_to_5d_high_atr":-0.56},"price":11.53,"vwap":11.5399,"ext_from_open_pct":-1.2,"max_ext_allowed_pct":3.0,"volume_pace":0.354,"trend":"flat","recent_slope_pct":-0.3105,"volatility":"high"},"price":11.53,"volume":{"bars":79,"last_bar_volume":13883.0,"baseline_avg":9186.6,"bar_rvol":1.511223,"raw_accel":3.112263,"smooth_accel":3.172093,"accel_momentum":-0.143414,"rvol_3bar":[11.137224,0.364622,1.511223],"trend_3bar":"MIXED","projected_rvol":1.169854},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":6158.0,"sell_vol":829.0,"unclassified_vol":0.0,"imbalance":0.762702,"bid":11.53,"ask":11.58,"spread_pct":0.432713,"quote_size_imbalance":null,"quote_age_s":3.574203},"context":{"vwap":11.539842,"price_vs_vwap_pct":-0.085289,"ema9":11.632159,"ema20":11.626897,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.75626,"dist_to_hod_atr":6.113071,"atr":0.073613,"spread_atr":0.67923,"own_change_pct":-1.113967,"rel_strength_pct":{"SPY":-1.158185,"IWM":-1.145466}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.152613},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"628e3fb47ccb","ts":"2026-09-21T14:49:45.227853+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.3455,"target":11.77,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":113.2,"room_to_5d_high_atr":-0.59},"price":11.55,"vwap":11.5399,"ext_from_open_pct":-1.03,"max_ext_allowed_pct":4.0,"volume_pace":0.353,"trend":"flat","recent_slope_pct":-0.2759,"volatility":"high"},"price":11.55,"volume":{"bars":79,"last_bar_volume":13883.0,"baseline_avg":9186.6,"bar_rvol":1.511223,"raw_accel":3.112263,"smooth_accel":3.172093,"accel_momentum":-0.143414,"rvol_3bar":[11.137224,0.364622,1.511223],"trend_3bar":"MIXED","projected_rvol":1.040025},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":6068.0,"sell_vol":829.0,"unclassified_vol":0.0,"imbalance":0.759606,"bid":11.53,"ask":11.58,"spread_pct":0.432713,"quote_size_imbalance":null,"quote_age_s":8.649382},"context":{"vwap":11.539842,"price_vs_vwap_pct":0.088023,"ema9":11.632159,"ema20":11.626897,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.589316,"dist_to_hod_atr":5.841379,"atr":0.073613,"spread_atr":0.67923,"own_change_pct":-1.113967,"rel_strength_pct":{"SPY":-1.158185,"IWM":-1.145466}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.147933},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1413113fcd3c","ts":"2026-09-21T14:50:05.665333+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.08 below VWAP $5.08","plan":{"state":"PASS","setup":"","stop":4.9933,"target":5.1483,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":58.8,"room_to_5d_high_atr":0.81},"price":5.08,"vwap":5.0843,"ext_from_open_pct":-1.93,"max_ext_allowed_pct":4.0,"volume_pace":0.393,"trend":"flat","recent_slope_pct":-0.0004,"volatility":"high"},"price":5.08,"volume":{"bars":80,"last_bar_volume":41148.0,"baseline_avg":63396.3,"bar_rvol":0.64906,"raw_accel":1.59624,"smooth_accel":6.709252,"accel_momentum":-1.760975,"rvol_3bar":[6.246686,0.229769,0.64906],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":3929.0,"sell_vol":6832.0,"unclassified_vol":0.0,"imbalance":-0.26977,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":0.075328},"context":{"vwap":5.084329,"price_vs_vwap_pct":-0.085138,"ema9":5.084066,"ema20":5.081407,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.495202,"dist_to_hod_atr":5.946811,"atr":0.02186,"spread_atr":0.457447,"own_change_pct":0.049188,"rel_strength_pct":{"SPY":0.048538,"IWM":0.024685}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.175097},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"061943532613","ts":"2026-09-21T14:50:10.769785+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.39x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":4.9983,"target":5.1483,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":59.6,"room_to_5d_high_atr":0.79},"price":5.085,"vwap":5.0843,"ext_from_open_pct":-1.83,"max_ext_allowed_pct":3.0,"volume_pace":0.392,"trend":"flat","recent_slope_pct":0.0193,"volatility":"high"},"price":5.085,"volume":{"bars":80,"last_bar_volume":41148.0,"baseline_avg":63396.3,"bar_rvol":0.64906,"raw_accel":1.59624,"smooth_accel":6.709252,"accel_momentum":-1.760975,"rvol_3bar":[6.246686,0.229769,0.64906],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":3732.0,"sell_vol":6942.0,"unclassified_vol":0.0,"imbalance":-0.300731,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":0.853003},"context":{"vwap":5.084329,"price_vs_vwap_pct":0.013203,"ema9":5.084066,"ema20":5.081407,"ema_stack":true,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.399232,"dist_to_hod_atr":5.718087,"atr":0.02186,"spread_atr":0.457447,"own_change_pct":0.049188,"rel_strength_pct":{"SPY":0.048538,"IWM":0.024685}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.195192},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1be54631b519","ts":"2026-09-21T14:50:20.997193+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.08 below VWAP $5.08","plan":{"state":"PASS","setup":"","stop":4.9938,"target":5.1483,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":58.9,"room_to_5d_high_atr":0.81},"price":5.0805,"vwap":5.0843,"ext_from_open_pct":-1.92,"max_ext_allowed_pct":3.0,"volume_pace":0.392,"trend":"flat","recent_slope_pct":0.0016,"volatility":"high"},"price":5.0805,"volume":{"bars":80,"last_bar_volume":41148.0,"baseline_avg":63396.3,"bar_rvol":0.64906,"raw_accel":1.59624,"smooth_accel":6.709252,"accel_momentum":-1.760975,"rvol_3bar":[6.246686,0.229769,0.64906],"trend_3bar":"MIXED","projected_rvol":0.053728},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":829.0,"sell_vol":663.0,"unclassified_vol":0.0,"imbalance":0.11126,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":2.038957},"context":{"vwap":5.084329,"price_vs_vwap_pct":-0.075304,"ema9":5.084066,"ema20":5.081407,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.485605,"dist_to_hod_atr":5.923939,"atr":0.02186,"spread_atr":0.457447,"own_change_pct":0.049188,"rel_strength_pct":{"SPY":0.048538,"IWM":0.024685}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.072214},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"46995451f023","ts":"2026-09-21T14:50:26.130471+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.39x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.0063,"target":5.1483,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":60.7,"room_to_5d_high_atr":0.77},"price":5.093,"vwap":5.0843,"ext_from_open_pct":-1.68,"max_ext_allowed_pct":3.0,"volume_pace":0.391,"trend":"flat","recent_slope_pct":0.0507,"volatility":"high"},"price":5.093,"volume":{"bars":80,"last_bar_volume":41148.0,"baseline_avg":63396.3,"bar_rvol":0.64906,"raw_accel":1.59624,"smooth_accel":6.709252,"accel_momentum":-1.760975,"rvol_3bar":[6.246686,0.229769,0.64906],"trend_3bar":"MIXED","projected_rvol":0.04723},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":841.0,"sell_vol":563.0,"unclassified_vol":0.0,"imbalance":0.198006,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":3.054539},"context":{"vwap":5.084329,"price_vs_vwap_pct":0.17055,"ema9":5.084066,"ema20":5.081407,"ema_stack":true,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.245681,"dist_to_hod_atr":5.35213,"atr":0.02186,"spread_atr":0.457447,"own_change_pct":0.049188,"rel_strength_pct":{"SPY":0.048538,"IWM":0.024685}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.128518},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"eb83931b9efb","ts":"2026-09-21T14:50:36.353006+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.54 below VWAP $11.54","plan":{"state":"PASS","setup":"","stop":11.3305,"target":11.77,"target_label":"ceiling","reward_risk":1.15,"pos_in_5d_range_pct":112.8,"room_to_5d_high_atr":-0.57},"price":11.535,"vwap":11.54,"ext_from_open_pct":-1.16,"max_ext_allowed_pct":3.0,"volume_pace":0.351,"trend":"flat","recent_slope_pct":-0.2289,"volatility":"high"},"price":11.535,"volume":{"bars":80,"last_bar_volume":7586.0,"baseline_avg":9652.05,"bar_rvol":0.785947,"raw_accel":-0.453576,"smooth_accel":-0.688546,"accel_momentum":-3.860639,"rvol_3bar":[0.364622,1.511223,0.785947],"trend_3bar":"MIXED","projected_rvol":0.828486},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":351.0,"sell_vol":3524.0,"unclassified_vol":0.0,"imbalance":-0.818839,"bid":11.52,"ask":11.55,"spread_pct":0.260078,"quote_size_imbalance":null,"quote_age_s":0.92901},"context":{"vwap":11.539917,"price_vs_vwap_pct":-0.042609,"ema9":11.616727,"ema20":11.62005,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.714524,"dist_to_hod_atr":6.186903,"atr":0.071926,"spread_atr":0.417095,"own_change_pct":-1.154833,"rel_strength_pct":{"SPY":-1.155483,"IWM":-1.179337}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.643564},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0b2a82488d1e","ts":"2026-09-21T14:50:36.353006+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.07 below VWAP $5.08","plan":{"state":"PASS","setup":"","stop":4.9833,"target":5.1483,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":57.4,"room_to_5d_high_atr":0.84},"price":5.07,"vwap":5.0843,"ext_from_open_pct":-2.12,"max_ext_allowed_pct":3.0,"volume_pace":0.391,"trend":"flat","recent_slope_pct":-0.0397,"volatility":"high"},"price":5.07,"volume":{"bars":80,"last_bar_volume":41148.0,"baseline_avg":63396.3,"bar_rvol":0.64906,"raw_accel":1.59624,"smooth_accel":6.709252,"accel_momentum":-1.760975,"rvol_3bar":[6.246686,0.229769,0.64906],"trend_3bar":"MIXED","projected_rvol":0.12447},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2133.0,"sell_vol":2077.0,"unclassified_vol":0.0,"imbalance":0.013302,"bid":5.07,"ask":5.08,"spread_pct":0.197044,"quote_size_imbalance":null,"quote_age_s":2.341795},"context":{"vwap":5.084329,"price_vs_vwap_pct":-0.281821,"ema9":5.084066,"ema20":5.081407,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.68714,"dist_to_hod_atr":6.404258,"atr":0.02186,"spread_atr":0.457447,"own_change_pct":0.049188,"rel_strength_pct":{"SPY":0.048538,"IWM":0.024685}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.008634},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"00c62d21f7de","ts":"2026-09-21T14:51:06.914811+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7596,"target":8.95,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":131.1,"room_to_5d_high_atr":-0.41},"price":8.9,"vwap":8.8809,"ext_from_open_pct":1.95,"max_ext_allowed_pct":3.0,"volume_pace":1.147,"trend":"flat","recent_slope_pct":-0.1178,"volatility":"high"},"price":8.9,"volume":{"bars":81,"last_bar_volume":1242.0,"baseline_avg":5868.85,"bar_rvol":0.211626,"raw_accel":-0.35245,"smooth_accel":-0.251214,"accel_momentum":-0.154914,"rvol_3bar":[0.741153,0.325971,0.211626],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":263.0,"sell_vol":656.0,"unclassified_vol":0.0,"imbalance":-0.427639,"bid":8.88,"ask":8.91,"spread_pct":0.337268,"quote_size_imbalance":null,"quote_age_s":0.748624},"context":{"vwap":8.880929,"price_vs_vwap_pct":0.214739,"ema9":8.920207,"ema20":8.915361,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.874311,"dist_to_hod_atr":4.825154,"atr":0.035232,"spread_atr":0.851498,"own_change_pct":-0.447928,"rel_strength_pct":{"SPY":-0.462302,"IWM":-0.458431}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.090499},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"09397c69bdc1","ts":"2026-09-21T14:51:22.198576+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.3364,"target":11.77,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":112.9,"room_to_5d_high_atr":-0.58},"price":11.5409,"vwap":11.54,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":4.0,"volume_pace":0.348,"trend":"flat","recent_slope_pct":-0.1326,"volatility":"high"},"price":11.5409,"volume":{"bars":81,"last_bar_volume":7476.0,"baseline_avg":9575.9,"bar_rvol":0.78071,"raw_accel":-0.0145,"smooth_accel":-0.640596,"accel_momentum":0.04795,"rvol_3bar":[1.511223,0.785947,0.78071],"trend_3bar":"DECELERATING","projected_rvol":0.252057},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":1938.0,"sell_vol":604.0,"unclassified_vol":0.0,"imbalance":0.524784,"bid":11.52,"ask":11.53,"spread_pct":0.086768,"quote_size_imbalance":null,"quote_age_s":8.463726},"context":{"vwap":11.540039,"price_vs_vwap_pct":0.007464,"ema9":11.598382,"ema20":11.610997,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.665275,"dist_to_hod_atr":5.77145,"atr":0.076081,"spread_atr":0.131438,"own_change_pct":-1.157804,"rel_strength_pct":{"SPY":-1.172178,"IWM":-1.168307}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.409704},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b95c7f0ff061","ts":"2026-09-21T14:51:27.279417+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.53 below VWAP $11.54","plan":{"state":"PASS","setup":"","stop":11.3241,"target":11.77,"target_label":"ceiling","reward_risk":1.18,"pos_in_5d_range_pct":112.6,"room_to_5d_high_atr":-0.56},"price":11.5286,"vwap":11.54,"ext_from_open_pct":-1.21,"max_ext_allowed_pct":4.0,"volume_pace":0.348,"trend":"flat","recent_slope_pct":-0.1539,"volatility":"high"},"price":11.5286,"volume":{"bars":81,"last_bar_volume":7476.0,"baseline_avg":9575.9,"bar_rvol":0.78071,"raw_accel":-0.0145,"smooth_accel":-0.640596,"accel_momentum":0.04795,"rvol_3bar":[1.511223,0.785947,0.78071],"trend_3bar":"DECELERATING","projected_rvol":0.402641},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1488.0,"sell_vol":814.0,"unclassified_vol":0.0,"imbalance":0.292789,"bid":11.52,"ask":11.53,"spread_pct":0.086768,"quote_size_imbalance":null,"quote_age_s":13.544567},"context":{"vwap":11.540039,"price_vs_vwap_pct":-0.099121,"ema9":11.598382,"ema20":11.610997,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.767947,"dist_to_hod_atr":5.933119,"atr":0.076081,"spread_atr":0.131438,"own_change_pct":-1.157804,"rel_strength_pct":{"SPY":-1.172178,"IWM":-1.168307}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.228583},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"d9cbf7f28918","ts":"2026-09-21T14:51:32.362407+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.3% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.6321,"target":6.95,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":121.3,"room_to_5d_high_atr":-0.57},"price":6.7954,"vwap":6.5081,"ext_from_open_pct":6.34,"max_ext_allowed_pct":3.0,"volume_pace":1.104,"trend":"flat","recent_slope_pct":0.3256,"volatility":"high"},"price":6.7954,"volume":{"bars":81,"last_bar_volume":1811.0,"baseline_avg":11302.05,"bar_rvol":0.160236,"raw_accel":-0.831973,"smooth_accel":-0.427288,"accel_momentum":-0.081133,"rvol_3bar":[0.123067,0.972774,0.160236],"trend_3bar":"MIXED","projected_rvol":14.381501},"flow":{"window_s":30,"trades":762,"trade_rate":25.4,"buy_vol":61954.0,"sell_vol":25716.0,"unclassified_vol":0.0,"imbalance":0.413346,"bid":6.79,"ask":6.81,"spread_pct":0.294118,"quote_size_imbalance":null,"quote_age_s":0.136412},"context":{"vwap":6.491043,"price_vs_vwap_pct":4.688871,"ema9":6.691715,"ema20":6.68824,"ema_stack":true,"ema_warm":true,"hod":6.79,"dist_to_hod_pct":0.079529,"dist_to_hod_atr":-0.138115,"atr":0.039098,"spread_atr":0.511536,"own_change_pct":0.29985,"rel_strength_pct":{"SPY":0.285476,"IWM":0.289348}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.066233},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6a144b6361c5","ts":"2026-09-21T14:51:37.408917+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.3555,"target":11.77,"target_label":"ceiling","reward_risk":1.03,"pos_in_5d_range_pct":113.5,"room_to_5d_high_atr":-0.6},"price":11.56,"vwap":11.5401,"ext_from_open_pct":-0.94,"max_ext_allowed_pct":4.0,"volume_pace":0.349,"trend":"flat","recent_slope_pct":-0.0995,"volatility":"high"},"price":11.56,"volume":{"bars":81,"last_bar_volume":7476.0,"baseline_avg":9575.9,"bar_rvol":0.78071,"raw_accel":-0.0145,"smooth_accel":-0.640596,"accel_momentum":0.04795,"rvol_3bar":[1.511223,0.785947,0.78071],"trend_3bar":"DECELERATING","projected_rvol":1.365067},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":6782.0,"sell_vol":1368.0,"unclassified_vol":0.0,"imbalance":0.664294,"bid":11.55,"ask":11.58,"spread_pct":0.259403,"quote_size_imbalance":null,"quote_age_s":2.450528},"context":{"vwap":11.540039,"price_vs_vwap_pct":0.172975,"ema9":11.598382,"ema20":11.610997,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.505843,"dist_to_hod_atr":5.520403,"atr":0.076081,"spread_atr":0.394314,"own_change_pct":-1.157804,"rel_strength_pct":{"SPY":-1.172178,"IWM":-1.168307}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.518621},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"4c88fbc81108","ts":"2026-09-21T14:52:17.738985+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5681,"target":8.75,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":124.9,"room_to_5d_high_atr":-0.78},"price":8.67,"vwap":8.5786,"ext_from_open_pct":0.58,"max_ext_allowed_pct":4.0,"volume_pace":1.146,"trend":"flat","recent_slope_pct":-0.0578,"volatility":"medium"},"price":8.67,"volume":{"bars":82,"last_bar_volume":415.0,"baseline_avg":2660.6,"bar_rvol":0.15598,"raw_accel":-0.691908,"smooth_accel":-0.912745,"accel_momentum":-1.273554,"rvol_3bar":[0.157343,0.515085,0.15598],"trend_3bar":"MIXED","projected_rvol":0.075006},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":67.0,"sell_vol":47.0,"unclassified_vol":0.0,"imbalance":0.175439,"bid":8.66,"ask":8.67,"spread_pct":0.115407,"quote_size_imbalance":null,"quote_age_s":0.724798},"context":{"vwap":8.57862,"price_vs_vwap_pct":1.065208,"ema9":8.668972,"ema20":8.657543,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.914286,"dist_to_hod_atr":2.336084,"atr":0.034245,"spread_atr":0.292011,"own_change_pct":0.460936,"rel_strength_pct":{"SPY":0.459636,"IWM":0.494177}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.027365},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"49b260607285","ts":"2026-09-21T14:52:22.780330+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.5005,"target":13.65,"target_label":"premarket_high","reward_risk":1.93,"pos_in_5d_range_pct":149.9,"room_to_5d_high_atr":-1.49},"price":12.8923,"vwap":12.7805,"ext_from_open_pct":-0.9,"max_ext_allowed_pct":3.0,"volume_pace":0.967,"trend":"flat","recent_slope_pct":0.2304,"volatility":"high"},"price":12.8923,"volume":{"bars":82,"last_bar_volume":9720.0,"baseline_avg":22316.3,"bar_rvol":0.435556,"raw_accel":-0.211615,"smooth_accel":-0.267727,"accel_momentum":0.445828,"rvol_3bar":[0.786029,0.562127,0.435556],"trend_3bar":"DECELERATING","projected_rvol":0.620332},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":3468.0,"sell_vol":3005.0,"unclassified_vol":0.0,"imbalance":0.071528,"bid":12.86,"ask":12.9,"spread_pct":0.310559,"quote_size_imbalance":null,"quote_age_s":2.624145},"context":{"vwap":12.780345,"price_vs_vwap_pct":0.875994,"ema9":12.747322,"ema20":12.667276,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.577536,"dist_to_hod_atr":6.693845,"atr":0.135602,"spread_atr":0.29498,"own_change_pct":0.288103,"rel_strength_pct":{"SPY":0.286803,"IWM":0.321344}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.031154},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"7949e4575f43","ts":"2026-09-21T14:53:03.480999+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.34x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.3375,"target":11.77,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":113.0,"room_to_5d_high_atr":-0.58},"price":11.542,"vwap":11.5403,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.344,"trend":"flat","recent_slope_pct":0.0035,"volatility":"high"},"price":11.542,"volume":{"bars":83,"last_bar_volume":5091.0,"baseline_avg":10042.6,"bar_rvol":0.50694,"raw_accel":-0.487156,"smooth_accel":-0.094627,"accel_momentum":0.612127,"rvol_3bar":[0.78071,1.010767,0.50694],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":706.0,"sell_vol":2312.0,"unclassified_vol":0.0,"imbalance":-0.53214,"bid":11.54,"ask":11.57,"spread_pct":0.259628,"quote_size_imbalance":null,"quote_age_s":3.48407},"context":{"vwap":11.540281,"price_vs_vwap_pct":0.014895,"ema9":11.583564,"ema20":11.60127,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-3.656093,"dist_to_hod_atr":5.678958,"atr":0.077127,"spread_atr":0.38897,"own_change_pct":-0.47373,"rel_strength_pct":{"SPY":-0.447727,"IWM":-0.424751}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.269764},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4e1281a37daf","ts":"2026-09-21T14:53:03.480999+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":4.9988,"target":5.1483,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":59.6,"room_to_5d_high_atr":0.79},"price":5.0855,"vwap":5.0842,"ext_from_open_pct":-1.82,"max_ext_allowed_pct":3.0,"volume_pace":0.382,"trend":"flat","recent_slope_pct":-0.0079,"volatility":"high"},"price":5.0855,"volume":{"bars":83,"last_bar_volume":17824.0,"baseline_avg":33794.4,"bar_rvol":0.527425,"raw_accel":1.109699,"smooth_accel":-0.912026,"accel_momentum":-0.073966,"rvol_3bar":[0.137204,0.108753,0.527425],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":9626.0,"sell_vol":3182.0,"unclassified_vol":0.0,"imbalance":0.503123,"bid":5.06,"ask":5.07,"spread_pct":0.197433,"quote_size_imbalance":null,"quote_age_s":1.011688},"context":{"vwap":5.084244,"price_vs_vwap_pct":0.024694,"ema9":5.077802,"ema20":5.078834,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.389635,"dist_to_hod_atr":5.579721,"atr":0.022313,"spread_atr":0.44817,"own_change_pct":-0.491159,"rel_strength_pct":{"SPY":-0.465157,"IWM":-0.442181}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.26536},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bf4668671d36","ts":"2026-09-21T14:53:03.480999+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2087,"target":5.31,"target_label":"ceiling","reward_risk":0.76,"pos_in_5d_range_pct":93.5,"room_to_5d_high_atr":0.21},"price":5.2664,"vwap":5.2538,"ext_from_open_pct":-1.01,"max_ext_allowed_pct":4.0,"volume_pace":0.318,"trend":"flat","recent_slope_pct":-0.0006,"volatility":"medium"},"price":5.2664,"volume":{"bars":83,"last_bar_volume":91.0,"baseline_avg":1077.7,"bar_rvol":0.084439,"raw_accel":-0.662244,"smooth_accel":0.21164,"accel_momentum":0.388235,"rvol_3bar":[1.718695,0.019297,0.084439],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":6.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":-0.25,"bid":5.26,"ask":5.27,"spread_pct":0.189934,"quote_size_imbalance":null,"quote_age_s":45.84213},"context":{"vwap":5.253817,"price_vs_vwap_pct":0.239504,"ema9":5.265612,"ema20":5.264084,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-1.007519,"dist_to_hod_atr":4.543512,"atr":0.011797,"spread_atr":0.84767,"own_change_pct":0.036087,"rel_strength_pct":{"SPY":0.062089,"IWM":0.085066}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.02111},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c1d507ec50db","ts":"2026-09-21T14:53:03.480999+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.18,"target":6.34,"target_label":"premarket_high","reward_risk":0.52,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.285,"vwap":6.2773,"ext_from_open_pct":-0.08,"max_ext_allowed_pct":3.0,"volume_pace":1.421,"trend":"flat","recent_slope_pct":0.1195,"volatility":"unknown"},"price":6.285,"volume":{"bars":83,"last_bar_volume":32575.0,"baseline_avg":54386.65,"bar_rvol":0.598952,"raw_accel":-0.65717,"smooth_accel":-0.135612,"accel_momentum":-0.276973,"rvol_3bar":[0.520094,1.848495,0.598952],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":3559.0,"sell_vol":1235.0,"unclassified_vol":0.0,"imbalance":0.484773,"bid":6.28,"ask":6.29,"spread_pct":0.159109,"quote_size_imbalance":null,"quote_age_s":0.344244},"context":{"vwap":6.27726,"price_vs_vwap_pct":0.123299,"ema9":6.266466,"ema20":6.250654,"ema_stack":true,"ema_warm":true,"hod":6.42,"dist_to_hod_pct":-2.102804,"dist_to_hod_atr":5.049685,"atr":0.026734,"spread_atr":0.374051,"own_change_pct":0.64,"rel_strength_pct":{"SPY":0.666002,"IWM":0.688978}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.290356},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9b8090b1b653","ts":"2026-09-21T14:53:08.606044+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.06 below VWAP $5.08","plan":{"state":"PASS","setup":"","stop":4.9733,"target":5.1483,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":55.9,"room_to_5d_high_atr":0.86},"price":5.06,"vwap":5.0842,"ext_from_open_pct":-2.32,"max_ext_allowed_pct":3.0,"volume_pace":0.382,"trend":"flat","recent_slope_pct":-0.1084,"volatility":"high"},"price":5.06,"volume":{"bars":83,"last_bar_volume":17824.0,"baseline_avg":33794.4,"bar_rvol":0.527425,"raw_accel":1.109699,"smooth_accel":-0.912026,"accel_momentum":-0.073966,"rvol_3bar":[0.137204,0.108753,0.527425],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":4112.0,"sell_vol":3165.0,"unclassified_vol":0.0,"imbalance":0.130136,"bid":5.06,"ask":5.07,"spread_pct":0.197433,"quote_size_imbalance":null,"quote_age_s":0.078243},"context":{"vwap":5.084244,"price_vs_vwap_pct":-0.476855,"ema9":5.077802,"ema20":5.078834,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-2.879079,"dist_to_hod_atr":6.722555,"atr":0.022313,"spread_atr":0.44817,"own_change_pct":-0.491159,"rel_strength_pct":{"SPY":-0.465157,"IWM":-0.442181}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.068637},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d36159d5e0cc","ts":"2026-09-21T14:53:18.747554+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7696,"target":8.95,"target_label":"premarket_high","reward_risk":0.28,"pos_in_5d_range_pct":132.4,"room_to_5d_high_atr":-0.43},"price":8.91,"vwap":8.881,"ext_from_open_pct":2.06,"max_ext_allowed_pct":4.0,"volume_pace":1.119,"trend":"flat","recent_slope_pct":-0.0148,"volatility":"high"},"price":8.91,"volume":{"bars":83,"last_bar_volume":2147.0,"baseline_avg":5423.05,"bar_rvol":0.395903,"raw_accel":0.371009,"smooth_accel":-0.412009,"accel_momentum":0.110473,"rvol_3bar":[0.211626,0.269681,0.395903],"trend_3bar":"ACCELERATING","projected_rvol":0.003541},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":622.0,"sell_vol":13.0,"unclassified_vol":0.0,"imbalance":0.959055,"bid":8.89,"ask":8.93,"spread_pct":0.448934,"quote_size_imbalance":null,"quote_age_s":0.387378},"context":{"vwap":8.881007,"price_vs_vwap_pct":0.326462,"ema9":8.914933,"ema20":8.913527,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.764057,"dist_to_hod_atr":4.553894,"atr":0.035135,"spread_atr":1.138474,"own_change_pct":-0.279799,"rel_strength_pct":{"SPY":-0.253796,"IWM":-0.23082}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.379692},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c3fb7bf3e62b","ts":"2026-09-21T14:53:23.839143+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.726,"target":11.03,"target_label":"ceiling","reward_risk":1.36,"pos_in_5d_range_pct":99.6,"room_to_5d_high_atr":0.01},"price":10.855,"vwap":10.795,"ext_from_open_pct":-1.14,"max_ext_allowed_pct":3.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":-0.0228,"volatility":"medium"},"price":10.855,"volume":{"bars":83,"last_bar_volume":61574.0,"baseline_avg":255600.0,"bar_rvol":0.2409,"raw_accel":-0.036401,"smooth_accel":-0.552829,"accel_momentum":0.079252,"rvol_3bar":[0.26126,0.167875,0.2409],"trend_3bar":"MIXED","projected_rvol":1.692939},"flow":{"window_s":30,"trades":193,"trade_rate":6.433333,"buy_vol":112240.0,"sell_vol":72108.0,"unclassified_vol":0.0,"imbalance":0.217697,"bid":10.85,"ask":10.86,"spread_pct":0.092123,"quote_size_imbalance":null,"quote_age_s":0.137877},"context":{"vwap":10.794669,"price_vs_vwap_pct":0.558893,"ema9":10.869507,"ema20":10.877179,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.586582,"dist_to_hod_atr":3.260687,"atr":0.05367,"spread_atr":0.186325,"own_change_pct":0.186261,"rel_strength_pct":{"SPY":0.212263,"IWM":0.235239}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.052443},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9d71ba1e4766","ts":"2026-09-21T14:53:23.839143+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.28 below VWAP $6.28","plan":{"state":"PASS","setup":"","stop":6.18,"target":6.34,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.275,"vwap":6.2773,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":3.0,"volume_pace":1.423,"trend":"flat","recent_slope_pct":0.0876,"volatility":"unknown"},"price":6.275,"volume":{"bars":83,"last_bar_volume":32575.0,"baseline_avg":54386.65,"bar_rvol":0.598952,"raw_accel":-0.65717,"smooth_accel":-0.135612,"accel_momentum":-0.276973,"rvol_3bar":[0.520094,1.848495,0.598952],"trend_3bar":"MIXED","projected_rvol":1.841653},"flow":{"window_s":30,"trades":117,"trade_rate":3.9,"buy_vol":15240.0,"sell_vol":26491.0,"unclassified_vol":0.0,"imbalance":-0.269608,"bid":6.27,"ask":6.28,"spread_pct":0.159363,"quote_size_imbalance":null,"quote_age_s":0.174411},"context":{"vwap":6.27726,"price_vs_vwap_pct":-0.036006,"ema9":6.266466,"ema20":6.250654,"ema_stack":true,"ema_warm":true,"hod":6.42,"dist_to_hod_pct":-2.258567,"dist_to_hod_atr":5.423736,"atr":0.026734,"spread_atr":0.374051,"own_change_pct":0.64,"rel_strength_pct":{"SPY":0.666002,"IWM":0.688978}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.161482},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3ba6fa5bb401","ts":"2026-09-21T14:53:28.970839+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.18,"target":6.34,"target_label":"premarket_high","reward_risk":0.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.28,"vwap":6.2773,"ext_from_open_pct":-0.16,"max_ext_allowed_pct":3.0,"volume_pace":1.427,"trend":"flat","recent_slope_pct":0.1036,"volatility":"unknown"},"price":6.28,"volume":{"bars":83,"last_bar_volume":32575.0,"baseline_avg":54386.65,"bar_rvol":0.598952,"raw_accel":-0.65717,"smooth_accel":-0.135612,"accel_momentum":-0.276973,"rvol_3bar":[0.520094,1.848495,0.598952],"trend_3bar":"MIXED","projected_rvol":2.534077},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":39703.0,"sell_vol":26847.0,"unclassified_vol":0.0,"imbalance":0.193178,"bid":6.28,"ask":6.29,"spread_pct":0.159109,"quote_size_imbalance":null,"quote_age_s":1.41134},"context":{"vwap":6.27726,"price_vs_vwap_pct":0.043647,"ema9":6.266466,"ema20":6.250654,"ema_stack":true,"ema_warm":true,"hod":6.42,"dist_to_hod_pct":-2.180685,"dist_to_hod_atr":5.236711,"atr":0.026734,"spread_atr":0.374051,"own_change_pct":0.64,"rel_strength_pct":{"SPY":0.666002,"IWM":0.688978}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.115704},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"692b6ebe8a5b","ts":"2026-09-21T14:53:44.206677+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.99,"target":9.4,"target_label":"premarket_high","reward_risk":0.05,"pos_in_5d_range_pct":146.2,"room_to_5d_high_atr":-1.23},"price":9.38,"vwap":9.1845,"ext_from_open_pct":1.41,"max_ext_allowed_pct":4.0,"volume_pace":0.952,"trend":"flat","recent_slope_pct":0.5431,"volatility":"high"},"price":9.38,"volume":{"bars":83,"last_bar_volume":2501.0,"baseline_avg":4116.25,"bar_rvol":0.607592,"raw_accel":-0.345288,"smooth_accel":-0.518798,"accel_momentum":-0.090002,"rvol_3bar":[0.447806,0.949646,0.607592],"trend_3bar":"MIXED","projected_rvol":0.532518},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":759.0,"sell_vol":451.0,"unclassified_vol":0.0,"imbalance":0.254545,"bid":9.16,"ask":9.19,"spread_pct":0.326975,"quote_size_imbalance":null,"quote_age_s":11.121632},"context":{"vwap":9.184256,"price_vs_vwap_pct":2.131298,"ema9":9.138804,"ema20":9.11588,"ema_stack":true,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-1.054852,"dist_to_hod_atr":2.239096,"atr":0.044661,"spread_atr":0.671729,"own_change_pct":0.823723,"rel_strength_pct":{"SPY":0.849725,"IWM":0.872702}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.15466},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d3dd12494f02","ts":"2026-09-21T14:53:59.317023+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.78 below VWAP $12.78","plan":{"state":"PASS","setup":"","stop":12.3882,"target":13.65,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":147.5,"room_to_5d_high_atr":-1.42},"price":12.78,"vwap":12.7808,"ext_from_open_pct":-1.77,"max_ext_allowed_pct":3.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":0.2695,"volatility":"high"},"price":12.78,"volume":{"bars":83,"last_bar_volume":15682.0,"baseline_avg":22136.3,"bar_rvol":0.708429,"raw_accel":0.613374,"smooth_accel":-0.150298,"accel_momentum":0.117429,"rvol_3bar":[0.562127,0.435556,0.708429],"trend_3bar":"MIXED","projected_rvol":0.505202},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":1099.0,"sell_vol":4282.0,"unclassified_vol":0.0,"imbalance":-0.591526,"bid":12.78,"ask":12.84,"spread_pct":0.468384,"quote_size_imbalance":null,"quote_age_s":0.803384},"context":{"vwap":12.780728,"price_vs_vwap_pct":-0.005699,"ema9":12.768698,"ema20":12.685078,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.391304,"dist_to_hod_atr":7.707135,"atr":0.132345,"spread_atr":0.453361,"own_change_pct":0.03502,"rel_strength_pct":{"SPY":0.061022,"IWM":0.083999}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.419054},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0300a78ae135","ts":"2026-09-21T14:53:59.317023+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.10 below VWAP $9.18","plan":{"state":"PASS","setup":"","stop":8.9492,"target":9.4,"target_label":"premarket_high","reward_risk":1.95,"pos_in_5d_range_pct":129.2,"room_to_5d_high_atr":-0.78},"price":9.1022,"vwap":9.1843,"ext_from_open_pct":-1.6,"max_ext_allowed_pct":4.0,"volume_pace":0.95,"trend":"flat","recent_slope_pct":-0.0606,"volatility":"high"},"price":9.1022,"volume":{"bars":83,"last_bar_volume":2501.0,"baseline_avg":4116.25,"bar_rvol":0.607592,"raw_accel":-0.345288,"smooth_accel":-0.518798,"accel_momentum":-0.090002,"rvol_3bar":[0.447806,0.949646,0.607592],"trend_3bar":"MIXED","projected_rvol":0.421439},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":503.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.668325,"bid":9.16,"ask":9.19,"spread_pct":0.326975,"quote_size_imbalance":null,"quote_age_s":26.231978},"context":{"vwap":9.184256,"price_vs_vwap_pct":-0.893444,"ema9":9.138804,"ema20":9.11588,"ema_stack":false,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-3.985232,"dist_to_hod_atr":8.459304,"atr":0.044661,"spread_atr":0.671729,"own_change_pct":0.823723,"rel_strength_pct":{"SPY":0.849725,"IWM":0.872702}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.406069},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c0eae988b327","ts":"2026-09-21T14:54:04.347886+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.3982,"target":13.65,"target_label":"premarket_high","reward_risk":2.2,"pos_in_5d_range_pct":147.7,"room_to_5d_high_atr":-1.43},"price":12.79,"vwap":12.7808,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":3.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":0.0391,"volatility":"high"},"price":12.79,"volume":{"bars":84,"last_bar_volume":11056.0,"baseline_avg":22639.6,"bar_rvol":0.488348,"raw_accel":-0.294988,"smooth_accel":-0.125603,"accel_momentum":0.024696,"rvol_3bar":[0.435556,0.708429,0.488348],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":1240.0,"sell_vol":4836.0,"unclassified_vol":0.0,"imbalance":-0.591837,"bid":12.75,"ask":12.8,"spread_pct":0.391389,"quote_size_imbalance":null,"quote_age_s":0.48488},"context":{"vwap":12.78078,"price_vs_vwap_pct":0.072138,"ema9":12.770958,"ema20":12.694118,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.318841,"dist_to_hod_atr":7.746317,"atr":0.130385,"spread_atr":0.383481,"own_change_pct":-0.312012,"rel_strength_pct":{"SPY":-0.263915,"IWM":-0.224545}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.289022},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ed11a88a8cc7","ts":"2026-09-21T14:54:09.391428+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.27 below VWAP $6.28","plan":{"state":"PASS","setup":"","stop":6.18,"target":6.34,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.2688,"vwap":6.2773,"ext_from_open_pct":-0.34,"max_ext_allowed_pct":4.0,"volume_pace":1.421,"trend":"flat","recent_slope_pct":-0.007,"volatility":"unknown"},"price":6.2688,"volume":{"bars":84,"last_bar_volume":90078.0,"baseline_avg":55414.85,"bar_rvol":1.625521,"raw_accel":1.765249,"smooth_accel":0.353364,"accel_momentum":0.488976,"rvol_3bar":[1.848495,0.598952,1.625521],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":17701.0,"sell_vol":1653.0,"unclassified_vol":0.0,"imbalance":0.829183,"bid":6.28,"ask":6.29,"spread_pct":0.159109,"quote_size_imbalance":null,"quote_age_s":0.156134},"context":{"vwap":6.277266,"price_vs_vwap_pct":-0.134869,"ema9":6.268713,"ema20":6.25323,"ema_stack":true,"ema_warm":true,"hod":6.42,"dist_to_hod_pct":-2.35514,"dist_to_hod_atr":5.689613,"atr":0.026575,"spread_atr":0.376297,"own_change_pct":0.202713,"rel_strength_pct":{"SPY":0.250811,"IWM":0.290181}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.347854},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ff526a088fdd","ts":"2026-09-21T14:54:14.429356+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.78 below VWAP $12.78","plan":{"state":"PASS","setup":"","stop":12.3882,"target":13.65,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":147.5,"room_to_5d_high_atr":-1.42},"price":12.78,"vwap":12.7808,"ext_from_open_pct":-1.77,"max_ext_allowed_pct":3.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":0.0234,"volatility":"high"},"price":12.78,"volume":{"bars":84,"last_bar_volume":11056.0,"baseline_avg":22639.6,"bar_rvol":0.488348,"raw_accel":-0.294988,"smooth_accel":-0.125603,"accel_momentum":0.024696,"rvol_3bar":[0.435556,0.708429,0.488348],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1548.0,"sell_vol":9253.0,"unclassified_vol":0.0,"imbalance":-0.71336,"bid":12.75,"ask":12.8,"spread_pct":0.391389,"quote_size_imbalance":null,"quote_age_s":1.734347},"context":{"vwap":12.78078,"price_vs_vwap_pct":-0.006104,"ema9":12.770958,"ema20":12.694118,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.391304,"dist_to_hod_atr":7.823013,"atr":0.130385,"spread_atr":0.383481,"own_change_pct":-0.312012,"rel_strength_pct":{"SPY":-0.263915,"IWM":-0.224545}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.348368},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f8f57f7687db","ts":"2026-09-21T14:54:14.429356+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.18,"target":6.34,"target_label":"premarket_high","reward_risk":0.52,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.285,"vwap":6.2773,"ext_from_open_pct":-0.08,"max_ext_allowed_pct":4.0,"volume_pace":1.419,"trend":"flat","recent_slope_pct":0.0446,"volatility":"unknown"},"price":6.285,"volume":{"bars":84,"last_bar_volume":90078.0,"baseline_avg":55414.85,"bar_rvol":1.625521,"raw_accel":1.765249,"smooth_accel":0.353364,"accel_momentum":0.488976,"rvol_3bar":[1.848495,0.598952,1.625521],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":17614.0,"sell_vol":2125.0,"unclassified_vol":0.0,"imbalance":0.78469,"bid":6.28,"ask":6.29,"spread_pct":0.159109,"quote_size_imbalance":null,"quote_age_s":0.126877},"context":{"vwap":6.277266,"price_vs_vwap_pct":0.123205,"ema9":6.268713,"ema20":6.25323,"ema_stack":true,"ema_warm":true,"hod":6.42,"dist_to_hod_pct":-2.102804,"dist_to_hod_atr":5.080011,"atr":0.026575,"spread_atr":0.376297,"own_change_pct":0.202713,"rel_strength_pct":{"SPY":0.250811,"IWM":0.290181}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.27553},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a553e75882f4","ts":"2026-09-21T14:54:19.475885+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.3983,"target":13.65,"target_label":"premarket_high","reward_risk":2.19,"pos_in_5d_range_pct":147.7,"room_to_5d_high_atr":-1.43},"price":12.7901,"vwap":12.7808,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":3.0,"volume_pace":0.954,"trend":"flat","recent_slope_pct":0.0392,"volatility":"high"},"price":12.7901,"volume":{"bars":84,"last_bar_volume":11056.0,"baseline_avg":22639.6,"bar_rvol":0.488348,"raw_accel":-0.294988,"smooth_accel":-0.125603,"accel_momentum":0.024696,"rvol_3bar":[0.435556,0.708429,0.488348],"trend_3bar":"MIXED","projected_rvol":1.340088},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":1420.0,"sell_vol":9457.0,"unclassified_vol":0.0,"imbalance":-0.738899,"bid":12.79,"ask":12.84,"spread_pct":0.390168,"quote_size_imbalance":null,"quote_age_s":2.670322},"context":{"vwap":12.78078,"price_vs_vwap_pct":0.072921,"ema9":12.770958,"ema20":12.694118,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.318116,"dist_to_hod_atr":7.74555,"atr":0.130385,"spread_atr":0.383481,"own_change_pct":-0.312012,"rel_strength_pct":{"SPY":-0.263915,"IWM":-0.224545}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.36084},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e9c2d769dff9","ts":"2026-09-21T14:54:19.475885+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.5756,"target":8.75,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.8},"price":8.6775,"vwap":8.5806,"ext_from_open_pct":0.67,"max_ext_allowed_pct":3.0,"volume_pace":1.142,"trend":"flat","recent_slope_pct":-0.0251,"volatility":"medium"},"price":8.6775,"volume":{"bars":84,"last_bar_volume":3767.0,"baseline_avg":2541.05,"bar_rvol":1.482458,"raw_accel":0.337713,"smooth_accel":-0.563007,"accel_momentum":0.253012,"rvol_3bar":[0.15598,1.099206,1.482458],"trend_3bar":"ACCELERATING","projected_rvol":4.617977},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":2850.0,"sell_vol":1492.0,"unclassified_vol":0.0,"imbalance":0.312759,"bid":8.65,"ask":8.67,"spread_pct":0.230947,"quote_size_imbalance":null,"quote_age_s":0.869498},"context":{"vwap":8.57986,"price_vs_vwap_pct":1.138019,"ema9":8.669494,"ema20":8.660072,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.828571,"dist_to_hod_atr":2.133838,"atr":0.033976,"spread_atr":0.588645,"own_change_pct":-0.345423,"rel_strength_pct":{"SPY":-0.297326,"IWM":-0.257956}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.463652},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"317af2e81862","ts":"2026-09-21T14:54:44.845504+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.78 below VWAP $12.78","plan":{"state":"PASS","setup":"","stop":12.3882,"target":13.65,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":147.5,"room_to_5d_high_atr":-1.42},"price":12.78,"vwap":12.7808,"ext_from_open_pct":-1.77,"max_ext_allowed_pct":3.0,"volume_pace":0.951,"trend":"flat","recent_slope_pct":0.0234,"volatility":"high"},"price":12.78,"volume":{"bars":84,"last_bar_volume":11056.0,"baseline_avg":22639.6,"bar_rvol":0.488348,"raw_accel":-0.294988,"smooth_accel":-0.125603,"accel_momentum":0.024696,"rvol_3bar":[0.435556,0.708429,0.488348],"trend_3bar":"MIXED","projected_rvol":0.799993},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":1916.0,"sell_vol":2435.0,"unclassified_vol":0.0,"imbalance":-0.119283,"bid":12.8,"ask":12.81,"spread_pct":0.078094,"quote_size_imbalance":null,"quote_age_s":0.982766},"context":{"vwap":12.78078,"price_vs_vwap_pct":-0.006104,"ema9":12.770958,"ema20":12.694118,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.391304,"dist_to_hod_atr":7.823013,"atr":0.130385,"spread_atr":0.076696,"own_change_pct":-0.312012,"rel_strength_pct":{"SPY":-0.263915,"IWM":-0.224545}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.058252},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fd3bfcf4b500","ts":"2026-09-21T14:54:49.919856+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.3% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.5667,"target":6.79,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":117.6,"room_to_5d_high_atr":-0.47},"price":6.73,"vwap":6.5107,"ext_from_open_pct":5.32,"max_ext_allowed_pct":3.0,"volume_pace":1.074,"trend":"flat","recent_slope_pct":0.126,"volatility":"high"},"price":6.73,"volume":{"bars":84,"last_bar_volume":3296.0,"baseline_avg":11884.7,"bar_rvol":0.277331,"raw_accel":-0.604084,"smooth_accel":6.467884,"accel_momentum":1.685882,"rvol_3bar":[10.357843,0.683237,0.277331],"trend_3bar":"DECELERATING","projected_rvol":0.185982},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":63.0,"sell_vol":1414.0,"unclassified_vol":0.0,"imbalance":-0.914692,"bid":6.73,"ask":6.75,"spread_pct":0.296736,"quote_size_imbalance":null,"quote_age_s":0.21039},"context":{"vwap":6.510451,"price_vs_vwap_pct":3.372254,"ema9":6.729358,"ema20":6.709099,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.464129,"dist_to_hod_atr":2.321701,"atr":0.043072,"spread_atr":0.46434,"own_change_pct":1.310906,"rel_strength_pct":{"SPY":1.359004,"IWM":1.398374}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.253673},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ee5f055f239d","ts":"2026-09-21T14:54:54.959554+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.5867,"target":6.95,"target_label":"premarket_high","reward_risk":1.22,"pos_in_5d_range_pct":118.8,"room_to_5d_high_atr":-0.51},"price":6.75,"vwap":6.5108,"ext_from_open_pct":5.63,"max_ext_allowed_pct":3.0,"volume_pace":1.073,"trend":"flat","recent_slope_pct":0.1852,"volatility":"high"},"price":6.75,"volume":{"bars":84,"last_bar_volume":3296.0,"baseline_avg":11884.7,"bar_rvol":0.277331,"raw_accel":-0.604084,"smooth_accel":6.467884,"accel_momentum":1.685882,"rvol_3bar":[10.357843,0.683237,0.277331],"trend_3bar":"DECELERATING","projected_rvol":0.173521},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":113.0,"sell_vol":1414.0,"unclassified_vol":0.0,"imbalance":-0.851997,"bid":6.73,"ask":6.75,"spread_pct":0.296736,"quote_size_imbalance":null,"quote_age_s":1.459495},"context":{"vwap":6.510451,"price_vs_vwap_pct":3.679453,"ema9":6.729358,"ema20":6.709099,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.171303,"dist_to_hod_atr":1.857361,"atr":0.043072,"spread_atr":0.46434,"own_change_pct":1.310906,"rel_strength_pct":{"SPY":1.359004,"IWM":1.398374}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.236286},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"3df828683650","ts":"2026-09-21T14:55:05.063287+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5431,"target":8.75,"target_label":"ceiling","reward_risk":1.03,"pos_in_5d_range_pct":123.0,"room_to_5d_high_atr":-0.72},"price":8.645,"vwap":8.5808,"ext_from_open_pct":0.29,"max_ext_allowed_pct":3.0,"volume_pace":1.136,"trend":"flat","recent_slope_pct":-0.1137,"volatility":"medium"},"price":8.645,"volume":{"bars":85,"last_bar_volume":5556.0,"baseline_avg":2653.4,"bar_rvol":2.093917,"raw_accel":0.474914,"smooth_accel":4.553065,"accel_momentum":5.116072,"rvol_3bar":[1.099206,1.482458,2.093917],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":422.0,"sell_vol":879.0,"unclassified_vol":0.0,"imbalance":-0.351268,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":2.991109},"context":{"vwap":8.580746,"price_vs_vwap_pct":0.748814,"ema9":8.665595,"ema20":8.659113,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.2,"dist_to_hod_atr":3.100008,"atr":0.033871,"spread_atr":0.295239,"own_change_pct":-0.512962,"rel_strength_pct":{"SPY":-0.535719,"IWM":-0.488464}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.735527},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"676957a3b777","ts":"2026-09-21T14:55:05.063287+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.7209,"target":10.86,"target_label":"prev_day_high","reward_risk":0.08,"pos_in_5d_range_pct":99.2,"room_to_5d_high_atr":0.02},"price":10.8499,"vwap":10.7953,"ext_from_open_pct":-1.18,"max_ext_allowed_pct":4.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":-0.0372,"volatility":"medium"},"price":10.8499,"volume":{"bars":85,"last_bar_volume":98240.0,"baseline_avg":231243.2,"bar_rvol":0.424834,"raw_accel":-0.560121,"smooth_accel":0.843298,"accel_momentum":0.680452,"rvol_3bar":[0.2409,0.94733,0.424834],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":40027.0,"sell_vol":2334.0,"unclassified_vol":0.0,"imbalance":0.889804,"bid":10.84,"ask":10.85,"spread_pct":0.092208,"quote_size_imbalance":null,"quote_age_s":0.712688},"context":{"vwap":10.795284,"price_vs_vwap_pct":0.505924,"ema9":10.862484,"ema20":10.872249,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.63282,"dist_to_hod_atr":3.622562,"atr":0.049716,"spread_atr":0.201142,"own_change_pct":-0.183993,"rel_strength_pct":{"SPY":-0.20675,"IWM":-0.159495}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.378019},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"eab111a65191","ts":"2026-09-21T14:55:15.175666+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.1,"target":9.09,"target_label":"range_20d_high","reward_risk":7.13,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2218,"vwap":8.2087,"ext_from_open_pct":2.64,"max_ext_allowed_pct":5.0,"volume_pace":4.851,"trend":"flat","recent_slope_pct":0.2242,"volatility":"unknown"},"price":8.2218,"volume":{"bars":84,"last_bar_volume":1217.0,"baseline_avg":2731.45,"bar_rvol":0.445551,"raw_accel":-0.276026,"smooth_accel":0.659487,"accel_momentum":0.547412,"rvol_3bar":[1.504837,0.598487,0.445551],"trend_3bar":"DECELERATING","projected_rvol":0.01737},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":12.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.17,"ask":8.23,"spread_pct":0.731707,"quote_size_imbalance":null,"quote_age_s":30.295758},"context":{"vwap":8.208664,"price_vs_vwap_pct":0.160023,"ema9":8.191228,"ema20":8.220705,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.174825,"dist_to_hod_atr":4.726043,"atr":0.075793,"spread_atr":0.791632,"own_change_pct":0.257384,"rel_strength_pct":{"SPY":0.234628,"IWM":0.281882}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.445551},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"d17a4da57128","ts":"2026-09-21T14:55:15.175666+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.4% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":6.5732,"target":6.79,"target_label":"ceiling","reward_risk":0.33,"pos_in_5d_range_pct":118.0,"room_to_5d_high_atr":-0.48},"price":6.7365,"vwap":6.5108,"ext_from_open_pct":5.42,"max_ext_allowed_pct":4.0,"volume_pace":1.069,"trend":"flat","recent_slope_pct":-0.1147,"volatility":"high"},"price":6.7365,"volume":{"bars":85,"last_bar_volume":1889.0,"baseline_avg":11493.35,"bar_rvol":0.164356,"raw_accel":-0.426881,"smooth_accel":-0.871647,"accel_momentum":-7.339531,"rvol_3bar":[0.683237,0.277331,0.164356],"trend_3bar":"DECELERATING","projected_rvol":0.11008},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":161.0,"sell_vol":260.0,"unclassified_vol":0.0,"imbalance":-0.235154,"bid":6.73,"ask":6.75,"spread_pct":0.296736,"quote_size_imbalance":null,"quote_age_s":0.05443},"context":{"vwap":6.510759,"price_vs_vwap_pct":3.467192,"ema9":6.733487,"ema20":6.712994,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.36896,"dist_to_hod_atr":2.181906,"atr":0.042852,"spread_atr":0.466718,"own_change_pct":0.972326,"rel_strength_pct":{"SPY":0.949569,"IWM":0.996824}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.038649},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"9e8480092e56","ts":"2026-09-21T14:55:35.395606+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":6.5867,"target":6.95,"target_label":"premarket_high","reward_risk":1.22,"pos_in_5d_range_pct":118.8,"room_to_5d_high_atr":-0.51},"price":6.75,"vwap":6.511,"ext_from_open_pct":5.63,"max_ext_allowed_pct":4.0,"volume_pace":1.066,"trend":"flat","recent_slope_pct":-0.0747,"volatility":"high"},"price":6.75,"volume":{"bars":85,"last_bar_volume":1889.0,"baseline_avg":11493.35,"bar_rvol":0.164356,"raw_accel":-0.426881,"smooth_accel":-0.871647,"accel_momentum":-7.339531,"rvol_3bar":[0.683237,0.277331,0.164356],"trend_3bar":"DECELERATING","projected_rvol":0.249106},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":1369.0,"sell_vol":9.0,"unclassified_vol":0.0,"imbalance":0.986938,"bid":6.75,"ask":6.76,"spread_pct":0.148038,"quote_size_imbalance":null,"quote_age_s":4.556824},"context":{"vwap":6.510759,"price_vs_vwap_pct":3.674541,"ema9":6.733487,"ema20":6.712994,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.171303,"dist_to_hod_atr":1.866871,"atr":0.042852,"spread_atr":0.233359,"own_change_pct":0.972326,"rel_strength_pct":{"SPY":0.949569,"IWM":0.996824}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.162209},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"8c0c7f3c28a5","ts":"2026-09-21T14:55:45.495847+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.3% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":6.5667,"target":6.79,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":117.6,"room_to_5d_high_atr":-0.47},"price":6.73,"vwap":6.5111,"ext_from_open_pct":5.32,"max_ext_allowed_pct":4.0,"volume_pace":1.064,"trend":"flat","recent_slope_pct":-0.1339,"volatility":"high"},"price":6.73,"volume":{"bars":85,"last_bar_volume":1889.0,"baseline_avg":11493.35,"bar_rvol":0.164356,"raw_accel":-0.426881,"smooth_accel":-0.871647,"accel_momentum":-7.339531,"rvol_3bar":[0.683237,0.277331,0.164356],"trend_3bar":"DECELERATING","projected_rvol":0.267814},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":1469.0,"sell_vol":545.0,"unclassified_vol":0.0,"imbalance":0.458788,"bid":6.73,"ask":6.76,"spread_pct":0.444774,"quote_size_imbalance":null,"quote_age_s":0.381888},"context":{"vwap":6.510759,"price_vs_vwap_pct":3.367358,"ema9":6.733487,"ema20":6.712994,"ema_stack":false,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.464129,"dist_to_hod_atr":2.333589,"atr":0.042852,"spread_atr":0.700077,"own_change_pct":0.972326,"rel_strength_pct":{"SPY":0.949569,"IWM":0.996824}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.075405},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"866425cc125f","ts":"2026-09-21T14:55:55.571647+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.20 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.1,"target":9.09,"target_label":"range_20d_high","reward_risk":8.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2,"vwap":8.2087,"ext_from_open_pct":2.37,"max_ext_allowed_pct":4.0,"volume_pace":4.816,"trend":"flat","recent_slope_pct":0.1711,"volatility":"unknown"},"price":8.2,"volume":{"bars":84,"last_bar_volume":1217.0,"baseline_avg":2731.45,"bar_rvol":0.445551,"raw_accel":-0.276026,"smooth_accel":0.659487,"accel_momentum":0.547412,"rvol_3bar":[1.504837,0.598487,0.445551],"trend_3bar":"DECELERATING","projected_rvol":0.19092},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":39.0,"sell_vol":432.0,"unclassified_vol":0.0,"imbalance":-0.834395,"bid":8.18,"ask":8.23,"spread_pct":0.609385,"quote_size_imbalance":null,"quote_age_s":1.598704},"context":{"vwap":8.208664,"price_vs_vwap_pct":-0.10555,"ema9":8.191228,"ema20":8.220705,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.428904,"dist_to_hod_atr":5.01367,"atr":0.075793,"spread_atr":0.659693,"own_change_pct":0.257384,"rel_strength_pct":{"SPY":0.234628,"IWM":0.281882}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.371765},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"2c57b16f54bc","ts":"2026-09-21T14:56:05.660743+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.5867,"target":6.95,"target_label":"premarket_high","reward_risk":1.22,"pos_in_5d_range_pct":118.8,"room_to_5d_high_atr":-0.51},"price":6.75,"vwap":6.5112,"ext_from_open_pct":5.63,"max_ext_allowed_pct":3.0,"volume_pace":1.06,"trend":"flat","recent_slope_pct":-0.1051,"volatility":"high"},"price":6.75,"volume":{"bars":86,"last_bar_volume":2526.0,"baseline_avg":11232.15,"bar_rvol":0.22489,"raw_accel":-0.100439,"smooth_accel":-0.924993,"accel_momentum":-0.053346,"rvol_3bar":[0.277331,0.164356,0.22489],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":291.0,"sell_vol":547.0,"unclassified_vol":0.0,"imbalance":-0.305489,"bid":6.73,"ask":6.75,"spread_pct":0.296736,"quote_size_imbalance":null,"quote_age_s":0.529337},"context":{"vwap":6.511153,"price_vs_vwap_pct":3.668268,"ema9":6.734789,"ema20":6.715566,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.171303,"dist_to_hod_atr":1.9408,"atr":0.04122,"spread_atr":0.4852,"own_change_pct":0.747384,"rel_strength_pct":{"SPY":0.718108,"IWM":0.764886}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.068702},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"de000484ae1f","ts":"2026-09-21T14:56:05.660743+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.27 below VWAP $6.28","plan":{"state":"PASS","setup":"","stop":6.18,"target":6.34,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.2721,"vwap":6.2773,"ext_from_open_pct":-0.28,"max_ext_allowed_pct":3.0,"volume_pace":1.395,"trend":"flat","recent_slope_pct":-0.0371,"volatility":"unknown"},"price":6.2721,"volume":{"bars":86,"last_bar_volume":25098.0,"baseline_avg":54154.7,"bar_rvol":0.46345,"raw_accel":0.8538,"smooth_accel":-0.189944,"accel_momentum":0.063944,"rvol_3bar":[1.625521,0.175304,0.46345],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":1734.0,"sell_vol":2379.0,"unclassified_vol":0.0,"imbalance":-0.15682,"bid":6.29,"ask":6.3,"spread_pct":0.158856,"quote_size_imbalance":null,"quote_age_s":3.044956},"context":{"vwap":6.277307,"price_vs_vwap_pct":-0.082947,"ema9":6.276416,"ema20":6.259919,"ema_stack":false,"ema_warm":true,"hod":6.42,"dist_to_hod_pct":-2.303738,"dist_to_hod_atr":5.585937,"atr":0.026477,"spread_atr":0.377683,"own_change_pct":0.402235,"rel_strength_pct":{"SPY":0.372958,"IWM":0.419737}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.072678},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e6fe58e17fe0","ts":"2026-09-21T14:56:10.699546+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.18,"target":6.34,"target_label":"premarket_high","reward_risk":0.42,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.2925,"vwap":6.2773,"ext_from_open_pct":0.04,"max_ext_allowed_pct":3.0,"volume_pace":1.394,"trend":"flat","recent_slope_pct":0.0278,"volatility":"unknown"},"price":6.2925,"volume":{"bars":86,"last_bar_volume":25098.0,"baseline_avg":54154.7,"bar_rvol":0.46345,"raw_accel":0.8538,"smooth_accel":-0.189944,"accel_momentum":0.063944,"rvol_3bar":[1.625521,0.175304,0.46345],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":2858.0,"sell_vol":2476.0,"unclassified_vol":0.0,"imbalance":0.071616,"bid":6.29,"ask":6.3,"spread_pct":0.158856,"quote_size_imbalance":null,"quote_age_s":4.521118},"context":{"vwap":6.277307,"price_vs_vwap_pct":0.242033,"ema9":6.276416,"ema20":6.259919,"ema_stack":true,"ema_warm":true,"hod":6.42,"dist_to_hod_pct":-1.985981,"dist_to_hod_atr":4.815463,"atr":0.026477,"spread_atr":0.377683,"own_change_pct":0.402235,"rel_strength_pct":{"SPY":0.372958,"IWM":0.419737}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.03319},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6299d640ef99","ts":"2026-09-21T14:56:15.890693+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.5% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.5767,"target":6.79,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":118.2,"room_to_5d_high_atr":-0.49},"price":6.74,"vwap":6.5112,"ext_from_open_pct":5.48,"max_ext_allowed_pct":3.0,"volume_pace":1.058,"trend":"flat","recent_slope_pct":-0.1347,"volatility":"high"},"price":6.74,"volume":{"bars":86,"last_bar_volume":2526.0,"baseline_avg":11232.15,"bar_rvol":0.22489,"raw_accel":-0.100439,"smooth_accel":-0.924993,"accel_momentum":-0.053346,"rvol_3bar":[0.277331,0.164356,0.22489],"trend_3bar":"MIXED","projected_rvol":0.001008},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":191.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.958974,"bid":6.73,"ask":6.75,"spread_pct":0.296736,"quote_size_imbalance":null,"quote_age_s":3.852641},"context":{"vwap":6.511153,"price_vs_vwap_pct":3.514685,"ema9":6.734789,"ema20":6.715566,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.317716,"dist_to_hod_atr":2.183399,"atr":0.04122,"spread_atr":0.4852,"own_change_pct":0.747384,"rel_strength_pct":{"SPY":0.718108,"IWM":0.764886}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.215664},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f75bd1a53638","ts":"2026-09-21T14:56:20.973859+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.27 below VWAP $6.28","plan":{"state":"PASS","setup":"","stop":6.18,"target":6.34,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.2722,"vwap":6.2773,"ext_from_open_pct":-0.28,"max_ext_allowed_pct":3.0,"volume_pace":1.391,"trend":"flat","recent_slope_pct":-0.0368,"volatility":"unknown"},"price":6.2722,"volume":{"bars":86,"last_bar_volume":25098.0,"baseline_avg":54154.7,"bar_rvol":0.46345,"raw_accel":0.8538,"smooth_accel":-0.189944,"accel_momentum":0.063944,"rvol_3bar":[1.625521,0.175304,0.46345],"trend_3bar":"MIXED","projected_rvol":0.123979},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2700.0,"sell_vol":2582.0,"unclassified_vol":0.0,"imbalance":0.02234,"bid":6.29,"ask":6.3,"spread_pct":0.158856,"quote_size_imbalance":null,"quote_age_s":0.926696},"context":{"vwap":6.277307,"price_vs_vwap_pct":-0.081354,"ema9":6.276416,"ema20":6.259919,"ema_stack":false,"ema_warm":true,"hod":6.42,"dist_to_hod_pct":-2.302181,"dist_to_hod_atr":5.582161,"atr":0.026477,"spread_atr":0.377683,"own_change_pct":0.402235,"rel_strength_pct":{"SPY":0.372958,"IWM":0.419737}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.010353},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"33c128d10a61","ts":"2026-09-21T14:56:26.054673+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.18,"target":6.34,"target_label":"premarket_high","reward_risk":0.55,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.2833,"vwap":6.2773,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":3.0,"volume_pace":1.39,"trend":"flat","recent_slope_pct":-0.0014,"volatility":"unknown"},"price":6.2833,"volume":{"bars":86,"last_bar_volume":25098.0,"baseline_avg":54154.7,"bar_rvol":0.46345,"raw_accel":0.8538,"smooth_accel":-0.189944,"accel_momentum":0.063944,"rvol_3bar":[1.625521,0.175304,0.46345],"trend_3bar":"MIXED","projected_rvol":0.191186},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3000.0,"sell_vol":3792.0,"unclassified_vol":0.0,"imbalance":-0.116608,"bid":6.29,"ask":6.3,"spread_pct":0.158856,"quote_size_imbalance":null,"quote_age_s":0.299063},"context":{"vwap":6.277307,"price_vs_vwap_pct":0.095474,"ema9":6.276416,"ema20":6.259919,"ema_stack":true,"ema_warm":true,"hod":6.42,"dist_to_hod_pct":-2.129283,"dist_to_hod_atr":5.162932,"atr":0.026477,"spread_atr":0.377683,"own_change_pct":0.402235,"rel_strength_pct":{"SPY":0.372958,"IWM":0.419737}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.054042},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d793ea0be648","ts":"2026-09-21T14:56:51.787110+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5357,"target":8.75,"target_label":"ceiling","reward_risk":1.1,"pos_in_5d_range_pct":122.4,"room_to_5d_high_atr":-0.71},"price":8.6376,"vwap":8.5811,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":1.12,"trend":"flat","recent_slope_pct":-0.1551,"volatility":"medium"},"price":8.6376,"volume":{"bars":86,"last_bar_volume":2821.0,"baseline_avg":2824.1,"bar_rvol":0.998902,"raw_accel":-0.492261,"smooth_accel":1.652687,"accel_momentum":-2.900378,"rvol_3bar":[1.482458,2.093917,0.998902],"trend_3bar":"MIXED","projected_rvol":0.177228},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":147.0,"sell_vol":177.0,"unclassified_vol":0.0,"imbalance":-0.092593,"bid":8.62,"ask":8.63,"spread_pct":0.115942,"quote_size_imbalance":null,"quote_age_s":10.423999},"context":{"vwap":8.581066,"price_vs_vwap_pct":0.658819,"ema9":8.657476,"ema20":8.655864,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.284571,"dist_to_hod_atr":3.263908,"atr":0.034437,"spread_atr":0.290383,"own_change_pct":-0.618756,"rel_strength_pct":{"SPY":-0.648033,"IWM":-0.601254}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.092491},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d2c1400131b1","ts":"2026-09-21T14:56:56.823651+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":6.5866,"target":6.95,"target_label":"premarket_high","reward_risk":1.23,"pos_in_5d_range_pct":118.7,"room_to_5d_high_atr":-0.51},"price":6.7499,"vwap":6.5119,"ext_from_open_pct":5.63,"max_ext_allowed_pct":4.0,"volume_pace":1.053,"trend":"flat","recent_slope_pct":-0.1054,"volatility":"high"},"price":6.7499,"volume":{"bars":86,"last_bar_volume":2526.0,"baseline_avg":11232.15,"bar_rvol":0.22489,"raw_accel":-0.100439,"smooth_accel":-0.924993,"accel_momentum":-0.053346,"rvol_3bar":[0.277331,0.164356,0.22489],"trend_3bar":"MIXED","projected_rvol":0.424911},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":2079.0,"sell_vol":1437.0,"unclassified_vol":0.0,"imbalance":0.182594,"bid":6.73,"ask":6.75,"spread_pct":0.296736,"quote_size_imbalance":null,"quote_age_s":2.445165},"context":{"vwap":6.511153,"price_vs_vwap_pct":3.666732,"ema9":6.734789,"ema20":6.715566,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.172767,"dist_to_hod_atr":1.943226,"atr":0.04122,"spread_atr":0.4852,"own_change_pct":0.747384,"rel_strength_pct":{"SPY":0.718108,"IWM":0.764886}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.041064},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aaba4fccd342","ts":"2026-09-21T14:57:22.182481+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.56,"target":10.86,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":97.1,"room_to_5d_high_atr":0.07},"price":10.825,"vwap":10.7957,"ext_from_open_pct":-1.41,"max_ext_allowed_pct":3.0,"volume_pace":0.84,"trend":"flat","recent_slope_pct":-0.0616,"volatility":"medium"},"price":10.825,"volume":{"bars":87,"last_bar_volume":121139.0,"baseline_avg":203852.8,"bar_rvol":0.594247,"raw_accel":0.182594,"smooth_accel":-0.043973,"accel_momentum":-1.143391,"rvol_3bar":[0.424834,0.454659,0.594247],"trend_3bar":"ACCELERATING","projected_rvol":0.503344},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":13028.0,"sell_vol":31720.0,"unclassified_vol":0.0,"imbalance":-0.417717,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":0.317161},"context":{"vwap":10.795643,"price_vs_vwap_pct":0.271935,"ema9":10.85383,"ema20":10.866182,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.858568,"dist_to_hod_atr":4.436231,"atr":0.04621,"spread_atr":0.216402,"own_change_pct":-0.269735,"rel_strength_pct":{"SPY":-0.302246,"IWM":-0.227733}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.248227},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"37031f17471a","ts":"2026-09-21T14:58:17.872703+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.0521,"target":8.28,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":125.8,"room_to_5d_high_atr":-0.81},"price":8.2061,"vwap":8.0887,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.854,"trend":"flat","recent_slope_pct":0.0001,"volatility":"high"},"price":8.2061,"volume":{"bars":88,"last_bar_volume":6128.0,"baseline_avg":10462.55,"bar_rvol":0.585708,"raw_accel":0.34563,"smooth_accel":1.291558,"accel_momentum":1.626542,"rvol_3bar":[1.821789,0.437002,0.585708],"trend_3bar":"MIXED","projected_rvol":1.892146},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":2700.0,"sell_vol":5032.0,"unclassified_vol":0.0,"imbalance":-0.301604,"bid":8.16,"ask":8.17,"spread_pct":0.122474,"quote_size_imbalance":null,"quote_age_s":4.668998},"context":{"vwap":8.08822,"price_vs_vwap_pct":1.457434,"ema9":8.195227,"ema20":8.169298,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.061154,"dist_to_hod_atr":3.350406,"atr":0.051546,"spread_atr":0.194002,"own_change_pct":-0.261866,"rel_strength_pct":{"SPY":-0.307382,"IWM":-0.205863}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.176652},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5ec00a38b0c4","ts":"2026-09-21T14:58:43.223415+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.0161,"target":8.28,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":123.9,"room_to_5d_high_atr":-0.75},"price":8.1701,"vwap":8.0888,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":3.0,"volume_pace":0.853,"trend":"flat","recent_slope_pct":-0.0878,"volatility":"high"},"price":8.1701,"volume":{"bars":88,"last_bar_volume":6128.0,"baseline_avg":10462.55,"bar_rvol":0.585708,"raw_accel":0.34563,"smooth_accel":1.291558,"accel_momentum":1.626542,"rvol_3bar":[1.821789,0.437002,0.585708],"trend_3bar":"MIXED","projected_rvol":1.26746},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2449.0,"sell_vol":1307.0,"unclassified_vol":0.0,"imbalance":0.304047,"bid":8.11,"ask":8.12,"spread_pct":0.123229,"quote_size_imbalance":null,"quote_age_s":0.678691},"context":{"vwap":8.08822,"price_vs_vwap_pct":1.012342,"ema9":8.195227,"ema20":8.169298,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.49081,"dist_to_hod_atr":4.048812,"atr":0.051546,"spread_atr":0.194002,"own_change_pct":-0.261866,"rel_strength_pct":{"SPY":-0.307382,"IWM":-0.205863}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.178083},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"29c2cb2d63aa","ts":"2026-09-21T14:58:53.371229+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.971,"target":8.28,"target_label":"ceiling","reward_risk":1.01,"pos_in_5d_range_pct":121.6,"room_to_5d_high_atr":-0.68},"price":8.125,"vwap":8.0887,"ext_from_open_pct":-0.79,"max_ext_allowed_pct":4.0,"volume_pace":0.852,"trend":"flat","recent_slope_pct":-0.1982,"volatility":"high"},"price":8.125,"volume":{"bars":88,"last_bar_volume":6128.0,"baseline_avg":10462.55,"bar_rvol":0.585708,"raw_accel":0.34563,"smooth_accel":1.291558,"accel_momentum":1.626542,"rvol_3bar":[1.821789,0.437002,0.585708],"trend_3bar":"MIXED","projected_rvol":1.135102},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":1524.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.996071,"bid":8.12,"ask":8.13,"spread_pct":0.123077,"quote_size_imbalance":null,"quote_age_s":0.010418},"context":{"vwap":8.08822,"price_vs_vwap_pct":0.454741,"ema9":8.195227,"ema20":8.169298,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.029073,"dist_to_hod_atr":4.923758,"atr":0.051546,"spread_atr":0.194002,"own_change_pct":-0.261866,"rel_strength_pct":{"SPY":-0.307382,"IWM":-0.205863}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.583407},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3dcf31a98363","ts":"2026-09-21T14:59:03.585762+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.971,"target":8.28,"target_label":"ceiling","reward_risk":1.01,"pos_in_5d_range_pct":121.6,"room_to_5d_high_atr":-0.68},"price":8.125,"vwap":8.0887,"ext_from_open_pct":-0.79,"max_ext_allowed_pct":4.0,"volume_pace":0.85,"trend":"flat","recent_slope_pct":-0.2483,"volatility":"high"},"price":8.125,"volume":{"bars":89,"last_bar_volume":10779.0,"baseline_avg":10507.55,"bar_rvol":1.025834,"raw_accel":0.758975,"smooth_accel":-0.188221,"accel_momentum":-1.479779,"rvol_3bar":[0.437002,0.585708,1.025834],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":1513.0,"sell_vol":22.0,"unclassified_vol":0.0,"imbalance":0.971336,"bid":8.12,"ask":8.13,"spread_pct":0.123077,"quote_size_imbalance":null,"quote_age_s":0.82413},"context":{"vwap":8.088715,"price_vs_vwap_pct":0.448591,"ema9":8.181182,"ema20":8.165079,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.029073,"dist_to_hod_atr":4.637444,"atr":0.054728,"spread_atr":0.18272,"own_change_pct":-0.860228,"rel_strength_pct":{"SPY":-0.926245,"IWM":-0.879488}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.996429},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e9607f5082cb","ts":"2026-09-21T14:59:03.585762+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.56,"target":10.86,"target_label":"prev_day_high","reward_risk":0.09,"pos_in_5d_range_pct":97.9,"room_to_5d_high_atr":0.05},"price":10.835,"vwap":10.796,"ext_from_open_pct":-1.32,"max_ext_allowed_pct":4.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":-0.0187,"volatility":"medium"},"price":10.835,"volume":{"bars":89,"last_bar_volume":195682.0,"baseline_avg":192966.15,"bar_rvol":1.014074,"raw_accel":1.175114,"smooth_accel":-0.040622,"accel_momentum":0.141057,"rvol_3bar":[0.594247,0.447333,1.014074],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":6782.0,"sell_vol":6232.0,"unclassified_vol":0.0,"imbalance":0.042262,"bid":10.83,"ask":10.84,"spread_pct":0.092293,"quote_size_imbalance":null,"quote_age_s":0.21051},"context":{"vwap":10.796002,"price_vs_vwap_pct":0.361228,"ema9":10.845287,"ema20":10.859601,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.767906,"dist_to_hod_atr":4.405735,"atr":0.04426,"spread_atr":0.225935,"own_change_pct":-0.157604,"rel_strength_pct":{"SPY":-0.22362,"IWM":-0.176863}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.042857},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d917505b5d55","ts":"2026-09-21T14:59:13.807805+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.88 below VWAP $8.88","plan":{"state":"PASS","setup":"","stop":8.7396,"target":8.95,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":128.4,"room_to_5d_high_atr":-0.37},"price":8.88,"vwap":8.8815,"ext_from_open_pct":1.72,"max_ext_allowed_pct":3.0,"volume_pace":1.072,"trend":"flat","recent_slope_pct":-0.069,"volatility":"high"},"price":8.88,"volume":{"bars":89,"last_bar_volume":820.0,"baseline_avg":4676.2,"bar_rvol":0.175356,"raw_accel":-0.414704,"smooth_accel":-0.527477,"accel_momentum":0.010643,"rvol_3bar":[0.888993,0.268301,0.175356],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":2245.0,"sell_vol":5321.0,"unclassified_vol":0.0,"imbalance":-0.406556,"bid":8.87,"ask":8.89,"spread_pct":0.225225,"quote_size_imbalance":null,"quote_age_s":0.696121},"context":{"vwap":8.881478,"price_vs_vwap_pct":-0.016646,"ema9":8.905342,"ema20":8.908394,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-2.094818,"dist_to_hod_atr":5.84155,"atr":0.032526,"spread_atr":0.6149,"own_change_pct":-0.112233,"rel_strength_pct":{"SPY":-0.17825,"IWM":-0.131493}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.071292},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"333efd6efec6","ts":"2026-09-21T15:00:04.700012+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.75,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":120.7,"room_to_5d_high_atr":-0.65},"price":8.615,"vwap":8.5813,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":1.084,"trend":"flat","recent_slope_pct":-0.0628,"volatility":"medium"},"price":8.615,"volume":{"bars":90,"last_bar_volume":627.0,"baseline_avg":2804.45,"bar_rvol":0.223573,"raw_accel":-0.105707,"smooth_accel":-0.865194,"accel_momentum":0.047191,"rvol_3bar":[0.123995,0.076578,0.223573],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":276.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":0.833887,"bid":8.61,"ask":8.62,"spread_pct":0.116077,"quote_size_imbalance":null,"quote_age_s":2.030409},"context":{"vwap":8.581259,"price_vs_vwap_pct":0.393193,"ema9":8.64104,"ema20":8.647482,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.542857,"dist_to_hod_atr":3.720496,"atr":0.036285,"spread_atr":0.275592,"own_change_pct":-0.346821,"rel_strength_pct":{"SPY":-0.353321,"IWM":-0.290812}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.186435},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c03bec0e8bb9","ts":"2026-09-21T15:01:05.874352+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.976,"target":8.28,"target_label":"ceiling","reward_risk":0.97,"pos_in_5d_range_pct":121.9,"room_to_5d_high_atr":-0.69},"price":8.13,"vwap":8.0891,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":4.0,"volume_pace":0.84,"trend":"flat","recent_slope_pct":-0.1484,"volatility":"high"},"price":8.13,"volume":{"bars":91,"last_bar_volume":2809.0,"baseline_avg":11164.25,"bar_rvol":0.251607,"raw_accel":-0.728678,"smooth_accel":-0.150335,"accel_momentum":-0.296821,"rvol_3bar":[1.025834,0.959033,0.251607],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1443.0,"sell_vol":428.0,"unclassified_vol":0.0,"imbalance":0.542491,"bid":8.13,"ask":8.14,"spread_pct":0.122926,"quote_size_imbalance":null,"quote_age_s":1.460924},"context":{"vwap":8.089124,"price_vs_vwap_pct":0.505316,"ema9":8.158736,"ema20":8.156652,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.969399,"dist_to_hod_atr":4.611153,"atr":0.053956,"spread_atr":0.185336,"own_change_pct":-0.861764,"rel_strength_pct":{"SPY":-0.882554,"IWM":-0.803997}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.136494},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"bed3b7a5e5f0","ts":"2026-09-21T15:01:16.046412+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.4382,"target":13.65,"target_label":"premarket_high","reward_risk":2.09,"pos_in_5d_range_pct":148.6,"room_to_5d_high_atr":-1.45},"price":12.83,"vwap":12.7788,"ext_from_open_pct":-1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.911,"trend":"flat","recent_slope_pct":0.3378,"volatility":"high"},"price":12.83,"volume":{"bars":91,"last_bar_volume":7181.0,"baseline_avg":22694.1,"bar_rvol":0.316426,"raw_accel":-0.345456,"smooth_accel":0.635509,"accel_momentum":0.195375,"rvol_3bar":[1.875826,0.488113,0.316426],"trend_3bar":"DECELERATING","projected_rvol":0.155537},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":2092.0,"sell_vol":1029.0,"unclassified_vol":0.0,"imbalance":0.340596,"bid":12.82,"ask":12.84,"spread_pct":0.155885,"quote_size_imbalance":null,"quote_age_s":2.564068},"context":{"vwap":12.778763,"price_vs_vwap_pct":0.400955,"ema9":12.746439,"ema20":12.712197,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.028986,"dist_to_hod_atr":8.263257,"atr":0.117387,"spread_atr":0.170376,"own_change_pct":0.874704,"rel_strength_pct":{"SPY":0.853914,"IWM":0.932472}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.107773},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"d00337e4727a","ts":"2026-09-21T15:01:26.270861+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7596,"target":8.95,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":131.1,"room_to_5d_high_atr":-0.41},"price":8.9,"vwap":8.8815,"ext_from_open_pct":1.95,"max_ext_allowed_pct":4.0,"volume_pace":1.062,"trend":"flat","recent_slope_pct":-0.0074,"volatility":"high"},"price":8.9,"volume":{"bars":91,"last_bar_volume":3271.0,"baseline_avg":3937.75,"bar_rvol":0.830677,"raw_accel":-0.798646,"smooth_accel":1.871505,"accel_momentum":0.128487,"rvol_3bar":[0.175356,4.945055,0.830677],"trend_3bar":"MIXED","projected_rvol":2.339724},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":3957.0,"sell_vol":178.0,"unclassified_vol":0.0,"imbalance":0.913906,"bid":8.9,"ask":8.91,"spread_pct":0.112296,"quote_size_imbalance":null,"quote_age_s":0.51533},"context":{"vwap":8.881451,"price_vs_vwap_pct":0.208849,"ema9":8.896427,"ema20":8.903231,"ema_stack":false,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-1.874311,"dist_to_hod_atr":5.181453,"atr":0.032809,"spread_atr":0.304791,"own_change_pct":-0.176292,"rel_strength_pct":{"SPY":-0.197082,"IWM":-0.118525}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.759161},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e895fa84df19","ts":"2026-09-21T15:02:01.992042+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.75,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":120.7,"room_to_5d_high_atr":-0.65},"price":8.615,"vwap":8.5816,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":1.07,"trend":"flat","recent_slope_pct":-0.029,"volatility":"medium"},"price":8.615,"volume":{"bars":92,"last_bar_volume":3715.0,"baseline_avg":2761.25,"bar_rvol":1.345405,"raw_accel":4.381621,"smooth_accel":3.615602,"accel_momentum":4.230755,"rvol_3bar":[0.223573,0.202275,1.345405],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1748.0,"sell_vol":1702.0,"unclassified_vol":0.0,"imbalance":0.013333,"bid":8.61,"ask":8.62,"spread_pct":0.116077,"quote_size_imbalance":null,"quote_age_s":9.369957},"context":{"vwap":8.581571,"price_vs_vwap_pct":0.389546,"ema9":8.631233,"ema20":8.641357,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.542857,"dist_to_hod_atr":3.870998,"atr":0.034875,"spread_atr":0.286741,"own_change_pct":-0.115942,"rel_strength_pct":{"SPY":-0.118542,"IWM":-0.091431}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.017939},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1748cde524f8","ts":"2026-09-21T15:02:01.992042+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6015,"target":9.74,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":107.5,"room_to_5d_high_atr":-0.08},"price":9.7,"vwap":9.6727,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.863,"trend":"flat","recent_slope_pct":0.1862,"volatility":"medium"},"price":9.7,"volume":{"bars":92,"last_bar_volume":34300.0,"baseline_avg":8217.5,"bar_rvol":4.174019,"raw_accel":9.645562,"smooth_accel":0.655846,"accel_momentum":1.045563,"rvol_3bar":[0.723426,0.389674,4.174019],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":3579.0,"sell_vol":704.0,"unclassified_vol":0.0,"imbalance":0.671258,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":0.568203},"context":{"vwap":9.672669,"price_vs_vwap_pct":0.282557,"ema9":9.660357,"ema20":9.65965,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.322482,"dist_to_hod_atr":5.49679,"atr":0.02365,"spread_atr":0.42283,"own_change_pct":0.362131,"rel_strength_pct":{"SPY":0.359531,"IWM":0.386643}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.801845},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b80fae5ff69f","ts":"2026-09-21T15:02:07.048802+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5,"target":8.75,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":120.7,"room_to_5d_high_atr":-0.65},"price":8.615,"vwap":8.5816,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":1.069,"trend":"flat","recent_slope_pct":-0.029,"volatility":"medium"},"price":8.615,"volume":{"bars":92,"last_bar_volume":3715.0,"baseline_avg":2761.25,"bar_rvol":1.345405,"raw_accel":4.381621,"smooth_accel":3.615602,"accel_momentum":4.230755,"rvol_3bar":[0.223573,0.202275,1.345405],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":1016.0,"sell_vol":74.0,"unclassified_vol":0.0,"imbalance":0.86422,"bid":8.61,"ask":8.62,"spread_pct":0.116077,"quote_size_imbalance":null,"quote_age_s":1.148051},"context":{"vwap":8.581571,"price_vs_vwap_pct":0.389546,"ema9":8.631233,"ema20":8.641357,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.542857,"dist_to_hod_atr":3.870998,"atr":0.034875,"spread_atr":0.286741,"own_change_pct":-0.115942,"rel_strength_pct":{"SPY":-0.118542,"IWM":-0.091431}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.162726},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9e0bac6ee9ba","ts":"2026-09-21T15:02:07.048802+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.66 below VWAP $9.67","plan":{"state":"PASS","setup":"","stop":9.5626,"target":9.74,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":97.8,"room_to_5d_high_atr":0.02},"price":9.6611,"vwap":9.6727,"ext_from_open_pct":-0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.862,"trend":"flat","recent_slope_pct":0.1058,"volatility":"medium"},"price":9.6611,"volume":{"bars":92,"last_bar_volume":34300.0,"baseline_avg":8217.5,"bar_rvol":4.174019,"raw_accel":9.645562,"smooth_accel":0.655846,"accel_momentum":1.045563,"rvol_3bar":[0.723426,0.389674,4.174019],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":3579.0,"sell_vol":784.0,"unclassified_vol":0.0,"imbalance":0.640614,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":1.801488},"context":{"vwap":9.672669,"price_vs_vwap_pct":-0.119607,"ema9":9.660357,"ema20":9.65965,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.71821,"dist_to_hod_atr":7.141599,"atr":0.02365,"spread_atr":0.42283,"own_change_pct":0.362131,"rel_strength_pct":{"SPY":0.359531,"IWM":0.386643}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.673936},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d56f30f3938a","ts":"2026-09-21T15:02:12.126512+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6015,"target":9.74,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":107.5,"room_to_5d_high_atr":-0.08},"price":9.7,"vwap":9.6727,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.861,"trend":"flat","recent_slope_pct":0.1862,"volatility":"medium"},"price":9.7,"volume":{"bars":92,"last_bar_volume":34300.0,"baseline_avg":8217.5,"bar_rvol":4.174019,"raw_accel":9.645562,"smooth_accel":0.655846,"accel_momentum":1.045563,"rvol_3bar":[0.723426,0.389674,4.174019],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":3679.0,"sell_vol":772.0,"unclassified_vol":0.0,"imbalance":0.653112,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":0.10687},"context":{"vwap":9.672669,"price_vs_vwap_pct":0.282557,"ema9":9.660357,"ema20":9.65965,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.322482,"dist_to_hod_atr":5.49679,"atr":0.02365,"spread_atr":0.42283,"own_change_pct":0.362131,"rel_strength_pct":{"SPY":0.359531,"IWM":0.386643}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.7261},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"03ae4cd7cad5","ts":"2026-09-21T15:02:17.259995+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.66 below VWAP $9.67","plan":{"state":"PASS","setup":"","stop":9.5568,"target":9.67,"target_label":"prev_day_high","reward_risk":0.15,"pos_in_5d_range_pct":96.3,"room_to_5d_high_atr":0.04},"price":9.6553,"vwap":9.6727,"ext_from_open_pct":-0.36,"max_ext_allowed_pct":4.0,"volume_pace":0.86,"trend":"flat","recent_slope_pct":0.0938,"volatility":"medium"},"price":9.6553,"volume":{"bars":92,"last_bar_volume":34300.0,"baseline_avg":8217.5,"bar_rvol":4.174019,"raw_accel":9.645562,"smooth_accel":0.655846,"accel_momentum":1.045563,"rvol_3bar":[0.723426,0.389674,4.174019],"trend_3bar":"MIXED","projected_rvol":0.115064},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":3661.0,"sell_vol":801.0,"unclassified_vol":0.0,"imbalance":0.640968,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":5.240353},"context":{"vwap":9.672669,"price_vs_vwap_pct":-0.17957,"ema9":9.660357,"ema20":9.65965,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.777213,"dist_to_hod_atr":7.386841,"atr":0.02365,"spread_atr":0.42283,"own_change_pct":0.362131,"rel_strength_pct":{"SPY":0.359531,"IWM":0.386643}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.675413},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8d5919396e2c","ts":"2026-09-21T15:02:22.382984+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.585,"target":9.74,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.03},"price":9.6835,"vwap":9.6727,"ext_from_open_pct":-0.07,"max_ext_allowed_pct":3.0,"volume_pace":0.86,"trend":"flat","recent_slope_pct":0.1522,"volatility":"medium"},"price":9.6835,"volume":{"bars":92,"last_bar_volume":34300.0,"baseline_avg":8217.5,"bar_rvol":4.174019,"raw_accel":9.645562,"smooth_accel":0.655846,"accel_momentum":1.045563,"rvol_3bar":[0.723426,0.389674,4.174019],"trend_3bar":"MIXED","projected_rvol":0.089381},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":3661.0,"sell_vol":182.0,"unclassified_vol":0.0,"imbalance":0.905282,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":0.499059},"context":{"vwap":9.672669,"price_vs_vwap_pct":0.111973,"ema9":9.660357,"ema20":9.65965,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.490336,"dist_to_hod_atr":6.19446,"atr":0.02365,"spread_atr":0.42283,"own_change_pct":0.362131,"rel_strength_pct":{"SPY":0.359531,"IWM":0.386643}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.778666},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3d9a4d24cda5","ts":"2026-09-21T15:03:03.803860+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.66 below VWAP $9.67","plan":{"state":"PASS","setup":"","stop":9.564,"target":9.74,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":98.1,"room_to_5d_high_atr":0.02},"price":9.6625,"vwap":9.6727,"ext_from_open_pct":-0.28,"max_ext_allowed_pct":3.0,"volume_pace":0.854,"trend":"flat","recent_slope_pct":0.1165,"volatility":"medium"},"price":9.6625,"volume":{"bars":93,"last_bar_volume":1717.0,"baseline_avg":9043.3,"bar_rvol":0.189864,"raw_accel":-0.949942,"smooth_accel":0.573147,"accel_momentum":-0.0827,"rvol_3bar":[0.389674,4.174019,0.189864],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1241.0,"sell_vol":125.0,"unclassified_vol":0.0,"imbalance":0.816984,"bid":9.7,"ask":9.71,"spread_pct":0.10304,"quote_size_imbalance":null,"quote_age_s":0.619754},"context":{"vwap":9.672694,"price_vs_vwap_pct":-0.105389,"ema9":9.670285,"ema20":9.664445,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.703967,"dist_to_hod_atr":6.475179,"atr":0.025868,"spread_atr":0.386578,"own_change_pct":0.760634,"rel_strength_pct":{"SPY":0.774932,"IWM":0.765887}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.155116},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ad63245034d8","ts":"2026-09-21T15:03:08.967445+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.5477,"target":6.79,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":116.5,"room_to_5d_high_atr":-0.45},"price":6.711,"vwap":6.5157,"ext_from_open_pct":5.02,"max_ext_allowed_pct":3.0,"volume_pace":1.002,"trend":"flat","recent_slope_pct":0.0634,"volatility":"high"},"price":6.711,"volume":{"bars":93,"last_bar_volume":9259.0,"baseline_avg":9978.4,"bar_rvol":0.927904,"raw_accel":0.405221,"smooth_accel":3.495327,"accel_momentum":3.597931,"rvol_3bar":[0.442824,0.679583,0.927904],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":2140.0,"sell_vol":3870.0,"unclassified_vol":0.0,"imbalance":-0.287854,"bid":6.72,"ask":6.74,"spread_pct":0.297177,"quote_size_imbalance":null,"quote_age_s":1.004519},"context":{"vwap":6.515712,"price_vs_vwap_pct":2.997179,"ema9":6.715957,"ema20":6.713907,"ema_stack":false,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.742313,"dist_to_hod_atr":3.105656,"atr":0.038317,"spread_atr":0.521959,"own_change_pct":0.231171,"rel_strength_pct":{"SPY":0.245469,"IWM":0.236424}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.267101},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5441c0f772ca","ts":"2026-09-21T15:03:14.038407+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6057,"target":9.74,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":108.6,"room_to_5d_high_atr":-0.09},"price":9.7042,"vwap":9.6727,"ext_from_open_pct":0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.853,"trend":"flat","recent_slope_pct":0.2026,"volatility":"medium"},"price":9.7042,"volume":{"bars":93,"last_bar_volume":1717.0,"baseline_avg":9043.3,"bar_rvol":0.189864,"raw_accel":-0.949942,"smooth_accel":0.573147,"accel_momentum":-0.0827,"rvol_3bar":[0.389674,4.174019,0.189864],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":157.0,"sell_vol":106.0,"unclassified_vol":0.0,"imbalance":0.193916,"bid":9.7,"ask":9.71,"spread_pct":0.10304,"quote_size_imbalance":null,"quote_age_s":0.519815},"context":{"vwap":9.672694,"price_vs_vwap_pct":0.325722,"ema9":9.670285,"ema20":9.664445,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.279756,"dist_to_hod_atr":4.863149,"atr":0.025868,"spread_atr":0.386578,"own_change_pct":0.760634,"rel_strength_pct":{"SPY":0.774932,"IWM":0.765887}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.036818},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8dea97d692b7","ts":"2026-09-21T15:03:34.669825+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5356,"target":8.75,"target_label":"ceiling","reward_risk":1.1,"pos_in_5d_range_pct":122.4,"room_to_5d_high_atr":-0.71},"price":8.6375,"vwap":8.5818,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":1.057,"trend":"flat","recent_slope_pct":0.0437,"volatility":"medium"},"price":8.6375,"volume":{"bars":93,"last_bar_volume":1002.0,"baseline_avg":2760.6,"bar_rvol":0.362965,"raw_accel":-0.730283,"smooth_accel":3.419732,"accel_momentum":-0.195869,"rvol_3bar":[0.202275,1.345405,0.362965],"trend_3bar":"MIXED","projected_rvol":1.06259},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1388.0,"sell_vol":306.0,"unclassified_vol":0.0,"imbalance":0.638725,"bid":8.6,"ask":8.61,"spread_pct":0.116212,"quote_size_imbalance":null,"quote_age_s":0.196506},"context":{"vwap":8.581655,"price_vs_vwap_pct":0.650749,"ema9":8.627987,"ema20":8.638847,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-1.285714,"dist_to_hod_atr":3.216443,"atr":0.034977,"spread_atr":0.285906,"own_change_pct":-0.452959,"rel_strength_pct":{"SPY":-0.438661,"IWM":-0.447706}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.231835},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"48d7a277cd25","ts":"2026-09-21T15:03:39.847594+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.65 below VWAP $9.67","plan":{"state":"PASS","setup":"","stop":9.5564,"target":9.67,"target_label":"prev_day_high","reward_risk":0.15,"pos_in_5d_range_pct":96.2,"room_to_5d_high_atr":0.04},"price":9.6549,"vwap":9.6727,"ext_from_open_pct":-0.36,"max_ext_allowed_pct":3.0,"volume_pace":0.849,"trend":"flat","recent_slope_pct":0.1008,"volatility":"medium"},"price":9.6549,"volume":{"bars":93,"last_bar_volume":1717.0,"baseline_avg":9043.3,"bar_rvol":0.189864,"raw_accel":-0.949942,"smooth_accel":0.573147,"accel_momentum":-0.0827,"rvol_3bar":[0.389674,4.174019,0.189864],"trend_3bar":"MIXED","projected_rvol":0.061606},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":41.0,"sell_vol":300.0,"unclassified_vol":0.0,"imbalance":-0.759531,"bid":9.7,"ask":9.71,"spread_pct":0.10304,"quote_size_imbalance":null,"quote_age_s":4.114305},"context":{"vwap":9.672694,"price_vs_vwap_pct":-0.18396,"ema9":9.670285,"ema20":9.664445,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.781282,"dist_to_hod_atr":6.768978,"atr":0.025868,"spread_atr":0.386578,"own_change_pct":0.760634,"rel_strength_pct":{"SPY":0.774932,"IWM":0.765887}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.144208},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d48d0233276c","ts":"2026-09-21T15:03:44.975946+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6115,"target":9.74,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":110.0,"room_to_5d_high_atr":-0.1},"price":9.71,"vwap":9.6728,"ext_from_open_pct":0.21,"max_ext_allowed_pct":4.0,"volume_pace":0.853,"trend":"flat","recent_slope_pct":0.2146,"volatility":"medium"},"price":9.71,"volume":{"bars":93,"last_bar_volume":1717.0,"baseline_avg":9043.3,"bar_rvol":0.189864,"raw_accel":-0.949942,"smooth_accel":0.573147,"accel_momentum":-0.0827,"rvol_3bar":[0.389674,4.174019,0.189864],"trend_3bar":"MIXED","projected_rvol":1.188402},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":7685.0,"sell_vol":307.0,"unclassified_vol":0.0,"imbalance":0.923173,"bid":9.7,"ask":9.71,"spread_pct":0.10304,"quote_size_imbalance":null,"quote_age_s":2.321765},"context":{"vwap":9.672694,"price_vs_vwap_pct":0.385684,"ema9":9.670285,"ema20":9.664445,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.220753,"dist_to_hod_atr":4.638934,"atr":0.025868,"spread_atr":0.386578,"own_change_pct":0.760634,"rel_strength_pct":{"SPY":0.774932,"IWM":0.765887}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.175278},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f8bdc42877e7","ts":"2026-09-21T15:04:05.561383+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 2.05% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":9.36,"target":9.83,"target_label":"prev_day_high","reward_risk":0.18,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.76,"vwap":9.636,"ext_from_open_pct":0.72,"max_ext_allowed_pct":3.0,"volume_pace":0.12,"trend":"flat","recent_slope_pct":0.0824,"volatility":"unknown"},"price":9.76,"volume":{"bars":72,"last_bar_volume":300.0,"baseline_avg":2857.45,"bar_rvol":0.104989,"raw_accel":-0.942955,"smooth_accel":1.503913,"accel_momentum":0.482842,"rvol_3bar":[0.076809,2.015831,0.104989],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":26.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":9.66,"ask":9.86,"spread_pct":2.04918,"quote_size_imbalance":null,"quote_age_s":0.675892},"context":{"vwap":9.635991,"price_vs_vwap_pct":1.286935,"ema9":9.695136,"ema20":9.674708,"ema_stack":true,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-3.270565,"dist_to_hod_atr":2.308268,"atr":0.142964,"spread_atr":1.39895,"own_change_pct":0.103627,"rel_strength_pct":{"SPY":0.120211,"IWM":0.119382}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.104989},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cd6d944cba12","ts":"2026-09-21T15:04:10.751789+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.53 below VWAP $9.64","plan":{"state":"PASS","setup":"","stop":8.87,"target":9.74,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.53,"vwap":9.6355,"ext_from_open_pct":-1.65,"max_ext_allowed_pct":3.0,"volume_pace":0.121,"trend":"flat","recent_slope_pct":-0.3934,"volatility":"unknown"},"price":9.53,"volume":{"bars":72,"last_bar_volume":300.0,"baseline_avg":2857.45,"bar_rvol":0.104989,"raw_accel":-0.942955,"smooth_accel":1.503913,"accel_momentum":0.482842,"rvol_3bar":[0.076809,2.015831,0.104989],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":225.0,"sell_vol":2188.0,"unclassified_vol":0.0,"imbalance":-0.81351,"bid":9.53,"ask":9.86,"spread_pct":3.403816,"quote_size_imbalance":null,"quote_age_s":0.6826},"context":{"vwap":9.635991,"price_vs_vwap_pct":-1.099949,"ema9":9.695136,"ema20":9.674708,"ema_stack":false,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-5.55005,"dist_to_hod_atr":3.91706,"atr":0.142964,"spread_atr":2.308268,"own_change_pct":0.103627,"rel_strength_pct":{"SPY":0.120211,"IWM":0.119382}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.085409},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5bf40a8ecb5a","ts":"2026-09-21T15:04:15.885549+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 3.40% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":9.2,"target":9.9,"target_label":"ceiling","reward_risk":0.06,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.86,"vwap":9.6378,"ext_from_open_pct":1.75,"max_ext_allowed_pct":3.0,"volume_pace":0.121,"trend":"flat","recent_slope_pct":0.2879,"volatility":"unknown"},"price":9.86,"volume":{"bars":72,"last_bar_volume":300.0,"baseline_avg":2857.45,"bar_rvol":0.104989,"raw_accel":-0.942955,"smooth_accel":1.503913,"accel_momentum":0.482842,"rvol_3bar":[0.076809,2.015831,0.104989],"trend_3bar":"MIXED","projected_rvol":3.196147},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":230.0,"sell_vol":2188.0,"unclassified_vol":0.0,"imbalance":-0.80976,"bid":9.53,"ask":9.86,"spread_pct":3.403816,"quote_size_imbalance":null,"quote_age_s":5.81636},"context":{"vwap":9.635991,"price_vs_vwap_pct":2.324711,"ema9":9.695136,"ema20":9.674708,"ema_stack":true,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-2.279485,"dist_to_hod_atr":1.608793,"atr":0.142964,"spread_atr":2.308268,"own_change_pct":0.103627,"rel_strength_pct":{"SPY":0.120211,"IWM":0.119382}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.085016},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"abf84f5829a0","ts":"2026-09-21T15:04:21.038440+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.54 below VWAP $9.64","plan":{"state":"PASS","setup":"","stop":8.875,"target":9.74,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.535,"vwap":9.6361,"ext_from_open_pct":-1.6,"max_ext_allowed_pct":3.0,"volume_pace":0.121,"trend":"flat","recent_slope_pct":-0.383,"volatility":"unknown"},"price":9.535,"volume":{"bars":72,"last_bar_volume":300.0,"baseline_avg":2857.45,"bar_rvol":0.104989,"raw_accel":-0.942955,"smooth_accel":1.503913,"accel_momentum":0.482842,"rvol_3bar":[0.076809,2.015831,0.104989],"trend_3bar":"MIXED","projected_rvol":2.612936},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":230.0,"sell_vol":2388.0,"unclassified_vol":0.0,"imbalance":-0.824293,"bid":9.53,"ask":9.86,"spread_pct":3.403816,"quote_size_imbalance":null,"quote_age_s":10.969251},"context":{"vwap":9.635991,"price_vs_vwap_pct":-1.048061,"ema9":9.695136,"ema20":9.674708,"ema_stack":false,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-5.500496,"dist_to_hod_atr":3.882086,"atr":0.142964,"spread_atr":2.308268,"own_change_pct":0.103627,"rel_strength_pct":{"SPY":0.120211,"IWM":0.119382}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.086541},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"28254956702b","ts":"2026-09-21T15:04:31.323525+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6575,"target":9.21,"target_label":"prev_day_high","reward_risk":5.32,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.745,"vwap":8.7275,"ext_from_open_pct":2.64,"max_ext_allowed_pct":3.0,"volume_pace":0.682,"trend":"flat","recent_slope_pct":0.1089,"volatility":"unknown"},"price":8.745,"volume":{"bars":94,"last_bar_volume":129743.0,"baseline_avg":68090.6,"bar_rvol":1.905447,"raw_accel":1.539598,"smooth_accel":0.317519,"accel_momentum":-0.280814,"rvol_3bar":[0.989399,0.721144,1.905447],"trend_3bar":"MIXED","projected_rvol":2.510515},"flow":{"window_s":30,"trades":183,"trade_rate":6.1,"buy_vol":46898.0,"sell_vol":41943.0,"unclassified_vol":0.0,"imbalance":0.055774,"bid":8.74,"ask":8.75,"spread_pct":0.114351,"quote_size_imbalance":null,"quote_age_s":1.023742},"context":{"vwap":8.727392,"price_vs_vwap_pct":0.20176,"ema9":8.720157,"ema20":8.716821,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-2.126469,"dist_to_hod_atr":6.609046,"atr":0.028748,"spread_atr":0.347845,"own_change_pct":0.286862,"rel_strength_pct":{"SPY":0.303446,"IWM":0.302617}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.106274},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b12b2f1bcb26","ts":"2026-09-21T15:04:36.479770+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":8.6527,"target":9.21,"target_label":"prev_day_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7401,"vwap":8.7275,"ext_from_open_pct":2.58,"max_ext_allowed_pct":3.0,"volume_pace":0.682,"trend":"flat","recent_slope_pct":0.0977,"volatility":"unknown"},"price":8.7401,"volume":{"bars":94,"last_bar_volume":129743.0,"baseline_avg":68090.6,"bar_rvol":1.905447,"raw_accel":1.539598,"smooth_accel":0.317519,"accel_momentum":-0.280814,"rvol_3bar":[0.989399,0.721144,1.905447],"trend_3bar":"MIXED","projected_rvol":2.244653},"flow":{"window_s":30,"trades":197,"trade_rate":6.566667,"buy_vol":48104.0,"sell_vol":31759.0,"unclassified_vol":0.0,"imbalance":0.204663,"bid":8.74,"ask":8.75,"spread_pct":0.114351,"quote_size_imbalance":null,"quote_age_s":0.804717},"context":{"vwap":8.727392,"price_vs_vwap_pct":0.145615,"ema9":8.720157,"ema20":8.716821,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-2.181309,"dist_to_hod_atr":6.77949,"atr":0.028748,"spread_atr":0.347845,"own_change_pct":0.286862,"rel_strength_pct":{"SPY":0.303446,"IWM":0.302617}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.389974},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7236e87d9906","ts":"2026-09-21T15:04:41.747730+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6625,"target":9.21,"target_label":"prev_day_high","reward_risk":5.26,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.75,"vwap":8.7275,"ext_from_open_pct":2.7,"max_ext_allowed_pct":3.0,"volume_pace":0.682,"trend":"flat","recent_slope_pct":0.1203,"volatility":"unknown"},"price":8.75,"volume":{"bars":94,"last_bar_volume":129743.0,"baseline_avg":68090.6,"bar_rvol":1.905447,"raw_accel":1.539598,"smooth_accel":0.317519,"accel_momentum":-0.280814,"rvol_3bar":[0.989399,0.721144,1.905447],"trend_3bar":"MIXED","projected_rvol":2.378679},"flow":{"window_s":30,"trades":175,"trade_rate":5.833333,"buy_vol":52006.0,"sell_vol":18776.0,"unclassified_vol":0.0,"imbalance":0.46947,"bid":8.74,"ask":8.75,"spread_pct":0.114351,"quote_size_imbalance":null,"quote_age_s":0.067605},"context":{"vwap":8.727392,"price_vs_vwap_pct":0.259051,"ema9":8.720157,"ema20":8.716821,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-2.070509,"dist_to_hod_atr":6.435124,"atr":0.028748,"spread_atr":0.347845,"own_change_pct":0.286862,"rel_strength_pct":{"SPY":0.303446,"IWM":0.302617}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.894549},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b4eaebaf35ba","ts":"2026-09-21T15:04:57.578451+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.66 below VWAP $9.67","plan":{"state":"PASS","setup":"","stop":9.5646,"target":9.74,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":98.3,"room_to_5d_high_atr":0.02},"price":9.6631,"vwap":9.6728,"ext_from_open_pct":-0.28,"max_ext_allowed_pct":4.0,"volume_pace":0.846,"trend":"flat","recent_slope_pct":0.0533,"volatility":"medium"},"price":9.6631,"volume":{"bars":94,"last_bar_volume":8184.0,"baseline_avg":8759.65,"bar_rvol":0.934284,"raw_accel":2.737136,"smooth_accel":1.907195,"accel_momentum":1.334049,"rvol_3bar":[4.174019,0.189864,0.934284],"trend_3bar":"MIXED","projected_rvol":0.779551},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":4502.0,"sell_vol":1088.0,"unclassified_vol":0.0,"imbalance":0.610733,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":0.112836},"context":{"vwap":9.67281,"price_vs_vwap_pct":-0.100386,"ema9":9.678228,"ema20":9.668784,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.697864,"dist_to_hod_atr":5.970094,"atr":0.027956,"spread_atr":0.357705,"own_change_pct":0.726141,"rel_strength_pct":{"SPY":0.742725,"IWM":0.741896}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.570598},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f0e9630bc158","ts":"2026-09-21T15:05:03.027698+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6123,"target":9.74,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":110.2,"room_to_5d_high_atr":-0.1},"price":9.7108,"vwap":9.6729,"ext_from_open_pct":0.21,"max_ext_allowed_pct":4.0,"volume_pace":0.846,"trend":"flat","recent_slope_pct":0.0325,"volatility":"medium"},"price":9.7108,"volume":{"bars":95,"last_bar_volume":6890.0,"baseline_avg":8937.4,"bar_rvol":0.770918,"raw_accel":-0.158113,"smooth_accel":-0.613654,"accel_momentum":-2.520849,"rvol_3bar":[0.189864,0.934284,0.770918],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":4839.0,"sell_vol":1119.0,"unclassified_vol":0.0,"imbalance":0.624371,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":0.345232},"context":{"vwap":9.672949,"price_vs_vwap_pct":0.391306,"ema9":9.686583,"ema20":9.673661,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.212614,"dist_to_hod_atr":3.937445,"atr":0.030273,"spread_atr":0.330323,"own_change_pct":0.829876,"rel_strength_pct":{"SPY":0.789575,"IWM":0.759825}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.481338},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"07fa7952c98b","ts":"2026-09-21T15:05:08.391841+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.1279,"target":9.09,"target_label":"range_20d_high","reward_risk":10.72,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.21,"vwap":8.208,"ext_from_open_pct":2.5,"max_ext_allowed_pct":4.0,"volume_pace":4.448,"trend":"flat","recent_slope_pct":0.1709,"volatility":"unknown"},"price":8.21,"volume":{"bars":94,"last_bar_volume":707.0,"baseline_avg":1696.25,"bar_rvol":0.416802,"raw_accel":0.667207,"smooth_accel":0.571274,"accel_momentum":-0.370674,"rvol_3bar":[2.128261,0.062666,0.416802],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":50.0,"sell_vol":200.0,"unclassified_vol":0.0,"imbalance":-0.6,"bid":8.2,"ask":8.24,"spread_pct":0.486618,"quote_size_imbalance":null,"quote_age_s":48.42751},"context":{"vwap":8.207971,"price_vs_vwap_pct":0.024722,"ema9":8.191275,"ema20":8.200408,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.312354,"dist_to_hod_atr":6.557003,"atr":0.056428,"spread_atr":0.708865,"own_change_pct":0.3663,"rel_strength_pct":{"SPY":0.326,"IWM":0.29625}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.250081},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"783a44cb2449","ts":"2026-09-21T15:05:08.391841+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.66 below VWAP $9.67","plan":{"state":"PASS","setup":"","stop":9.5649,"target":9.74,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":98.3,"room_to_5d_high_atr":0.02},"price":9.6634,"vwap":9.673,"ext_from_open_pct":-0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.845,"trend":"flat","recent_slope_pct":-0.0652,"volatility":"medium"},"price":9.6634,"volume":{"bars":95,"last_bar_volume":6890.0,"baseline_avg":8937.4,"bar_rvol":0.770918,"raw_accel":-0.158113,"smooth_accel":-0.613654,"accel_momentum":-2.520849,"rvol_3bar":[0.189864,0.934284,0.770918],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":4491.0,"sell_vol":1197.0,"unclassified_vol":0.0,"imbalance":0.579114,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":0.804255},"context":{"vwap":9.672949,"price_vs_vwap_pct":-0.09872,"ema9":9.686583,"ema20":9.673661,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.694812,"dist_to_hod_atr":5.503174,"atr":0.030273,"spread_atr":0.330323,"own_change_pct":0.829876,"rel_strength_pct":{"SPY":0.789575,"IWM":0.759825}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.446449},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"33ba40bbc4dc","ts":"2026-09-21T15:05:13.644266+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.615,"target":9.74,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":112.1,"room_to_5d_high_atr":-0.12},"price":9.7185,"vwap":9.673,"ext_from_open_pct":0.29,"max_ext_allowed_pct":4.0,"volume_pace":0.845,"trend":"flat","recent_slope_pct":0.0484,"volatility":"medium"},"price":9.7185,"volume":{"bars":95,"last_bar_volume":6890.0,"baseline_avg":8937.4,"bar_rvol":0.770918,"raw_accel":-0.158113,"smooth_accel":-0.613654,"accel_momentum":-2.520849,"rvol_3bar":[0.189864,0.934284,0.770918],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1931.0,"sell_vol":442.0,"unclassified_vol":0.0,"imbalance":0.627476,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":0.230639},"context":{"vwap":9.672949,"price_vs_vwap_pct":0.47091,"ema9":9.686583,"ema20":9.673661,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.134283,"dist_to_hod_atr":3.683097,"atr":0.030273,"spread_atr":0.330323,"own_change_pct":0.829876,"rel_strength_pct":{"SPY":0.789575,"IWM":0.759825}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.483732},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d87a1899d3f0","ts":"2026-09-21T15:05:29.001290+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 3.19% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":9.1667,"target":9.83,"target_label":"prev_day_high","reward_risk":0.07,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.7867,"vwap":9.6403,"ext_from_open_pct":1.0,"max_ext_allowed_pct":3.0,"volume_pace":0.124,"trend":"flat","recent_slope_pct":0.1455,"volatility":"unknown"},"price":9.7867,"volume":{"bars":73,"last_bar_volume":6985.0,"baseline_avg":2859.3,"bar_rvol":2.442906,"raw_accel":8.771622,"smooth_accel":7.362667,"accel_momentum":5.858754,"rvol_3bar":[2.015831,0.104989,2.442906],"trend_3bar":"MIXED","projected_rvol":0.188125},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":210.0,"sell_vol":200.0,"unclassified_vol":0.0,"imbalance":0.02439,"bid":9.55,"ask":9.86,"spread_pct":3.19423,"quote_size_imbalance":null,"quote_age_s":12.68806},"context":{"vwap":9.640162,"price_vs_vwap_pct":1.520076,"ema9":9.715769,"ema20":9.686478,"ema_stack":true,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-3.005946,"dist_to_hod_atr":1.940201,"atr":0.156324,"spread_atr":1.98306,"own_change_pct":-1.027273,"rel_strength_pct":{"SPY":-1.067573,"IWM":-1.097323}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.059583},"shadow":{"decision":"FAIL","failed":["imbalance","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9b7dd29235fb","ts":"2026-09-21T15:05:34.090091+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.72 below VWAP $8.73","plan":{"state":"PASS","setup":"","stop":8.636,"target":9.21,"target_label":"prev_day_high","reward_risk":5.58,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7232,"vwap":8.7277,"ext_from_open_pct":2.38,"max_ext_allowed_pct":4.0,"volume_pace":0.683,"trend":"flat","recent_slope_pct":0.0933,"volatility":"unknown"},"price":8.7232,"volume":{"bars":95,"last_bar_volume":139865.0,"baseline_avg":71884.65,"bar_rvol":1.945687,"raw_accel":0.078016,"smooth_accel":0.359584,"accel_momentum":0.042065,"rvol_3bar":[0.721144,1.905447,1.945687],"trend_3bar":"ACCELERATING","projected_rvol":1.979944},"flow":{"window_s":30,"trades":196,"trade_rate":6.533333,"buy_vol":45094.0,"sell_vol":34175.0,"unclassified_vol":0.0,"imbalance":0.137746,"bid":8.74,"ask":8.75,"spread_pct":0.114351,"quote_size_imbalance":null,"quote_age_s":0.246496},"context":{"vwap":8.72763,"price_vs_vwap_pct":-0.050759,"ema9":8.728126,"ema20":8.720933,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-2.370453,"dist_to_hod_atr":7.111982,"atr":0.029781,"spread_atr":0.335788,"own_change_pct":0.459868,"rel_strength_pct":{"SPY":0.419567,"IWM":0.389818}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.268011},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"033889524226","ts":"2026-09-21T15:05:39.291742+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6625,"target":9.21,"target_label":"prev_day_high","reward_risk":5.26,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.75,"vwap":8.7278,"ext_from_open_pct":2.7,"max_ext_allowed_pct":3.0,"volume_pace":0.683,"trend":"flat","recent_slope_pct":0.1546,"volatility":"unknown"},"price":8.75,"volume":{"bars":95,"last_bar_volume":139865.0,"baseline_avg":71884.65,"bar_rvol":1.945687,"raw_accel":0.078016,"smooth_accel":0.359584,"accel_momentum":0.042065,"rvol_3bar":[0.721144,1.905447,1.945687],"trend_3bar":"ACCELERATING","projected_rvol":1.952435},"flow":{"window_s":30,"trades":153,"trade_rate":5.1,"buy_vol":34550.0,"sell_vol":27030.0,"unclassified_vol":0.0,"imbalance":0.122118,"bid":8.74,"ask":8.75,"spread_pct":0.114351,"quote_size_imbalance":null,"quote_age_s":4.549411},"context":{"vwap":8.72763,"price_vs_vwap_pct":0.256312,"ema9":8.728126,"ema20":8.720933,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-2.070509,"dist_to_hod_atr":6.212071,"atr":0.029781,"spread_atr":0.335788,"own_change_pct":0.459868,"rel_strength_pct":{"SPY":0.419567,"IWM":0.389818}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.237603},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"59d385cb92c1","ts":"2026-09-21T15:05:44.449341+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":5.74,"target":6.07,"target_label":"range_20d_high","reward_risk":2.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.85,"vwap":5.755,"ext_from_open_pct":5.6,"max_ext_allowed_pct":4.0,"volume_pace":1.604,"trend":"flat","recent_slope_pct":0.3151,"volatility":"unknown"},"price":5.85,"volume":{"bars":95,"last_bar_volume":49556.0,"baseline_avg":45937.95,"bar_rvol":1.07876,"raw_accel":3.315038,"smooth_accel":-0.029253,"accel_momentum":-0.162767,"rvol_3bar":[1.424187,0.189319,1.07876],"trend_3bar":"MIXED","projected_rvol":1.78759},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":51261.0,"sell_vol":1760.0,"unclassified_vol":0.0,"imbalance":0.933611,"bid":5.77,"ask":5.78,"spread_pct":0.17316,"quote_size_imbalance":null,"quote_age_s":1.135554},"context":{"vwap":5.754641,"price_vs_vwap_pct":1.657077,"ema9":5.778323,"ema20":5.790931,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-0.340716,"dist_to_hod_atr":0.735608,"atr":0.027188,"spread_atr":0.367804,"own_change_pct":-0.389991,"rel_strength_pct":{"SPY":-0.430292,"IWM":-0.460041}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.007142},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c414edb21685","ts":"2026-09-21T15:05:54.751653+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.18 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.0954,"target":9.09,"target_label":"range_20d_high","reward_risk":11.16,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.1772,"vwap":8.208,"ext_from_open_pct":2.09,"max_ext_allowed_pct":4.0,"volume_pace":4.419,"trend":"flat","recent_slope_pct":0.0909,"volatility":"unknown"},"price":8.1772,"volume":{"bars":94,"last_bar_volume":707.0,"baseline_avg":1696.25,"bar_rvol":0.416802,"raw_accel":0.667207,"smooth_accel":0.571274,"accel_momentum":-0.370674,"rvol_3bar":[2.128261,0.062666,0.416802],"trend_3bar":"MIXED","projected_rvol":0.801098},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":281.0,"sell_vol":709.0,"unclassified_vol":0.0,"imbalance":-0.432323,"bid":8.2,"ask":8.24,"spread_pct":0.486618,"quote_size_imbalance":null,"quote_age_s":12.889079},"context":{"vwap":8.207971,"price_vs_vwap_pct":-0.37489,"ema9":8.191275,"ema20":8.200408,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.694639,"dist_to_hod_atr":7.138272,"atr":0.056428,"spread_atr":0.708865,"own_change_pct":0.3663,"rel_strength_pct":{"SPY":0.326,"IWM":0.29625}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.180193},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f8dfb069d7b6","ts":"2026-09-21T15:05:54.751653+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7118,"target":5.87,"target_label":"ceiling","reward_risk":1.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7695,"vwap":5.7549,"ext_from_open_pct":4.14,"max_ext_allowed_pct":4.0,"volume_pace":1.601,"trend":"flat","recent_slope_pct":0.0368,"volatility":"unknown"},"price":5.7695,"volume":{"bars":95,"last_bar_volume":49556.0,"baseline_avg":45937.95,"bar_rvol":1.07876,"raw_accel":3.315038,"smooth_accel":-0.029253,"accel_momentum":-0.162767,"rvol_3bar":[1.424187,0.189319,1.07876],"trend_3bar":"MIXED","projected_rvol":1.464206},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":50830.0,"sell_vol":1757.0,"unclassified_vol":0.0,"imbalance":0.933177,"bid":5.77,"ask":5.78,"spread_pct":0.17316,"quote_size_imbalance":null,"quote_age_s":0.087456},"context":{"vwap":5.754641,"price_vs_vwap_pct":0.258206,"ema9":5.778323,"ema20":5.790931,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.712095,"dist_to_hod_atr":3.696433,"atr":0.027188,"spread_atr":0.367804,"own_change_pct":-0.389991,"rel_strength_pct":{"SPY":-0.430292,"IWM":-0.460041}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.006674},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a14fd80ac2c2","ts":"2026-09-21T15:06:10.477801+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.63 below VWAP $9.64","plan":{"state":"PASS","setup":"","stop":9.15,"target":9.74,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.63,"vwap":9.6403,"ext_from_open_pct":-0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.123,"trend":"flat","recent_slope_pct":0.0481,"volatility":"unknown"},"price":9.63,"volume":{"bars":74,"last_bar_volume":260.0,"baseline_avg":3200.05,"bar_rvol":0.081249,"raw_accel":-0.962777,"smooth_accel":0.333274,"accel_momentum":-7.029392,"rvol_3bar":[0.104989,2.442906,0.081249],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":9.0,"sell_vol":91.0,"unclassified_vol":0.0,"imbalance":-0.82,"bid":9.62,"ask":9.86,"spread_pct":2.464066,"quote_size_imbalance":null,"quote_age_s":0.875246},"context":{"vwap":9.640274,"price_vs_vwap_pct":-0.106578,"ema9":9.729955,"ema20":9.696023,"ema_stack":false,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-4.558969,"dist_to_hod_atr":2.823927,"atr":0.162894,"spread_atr":1.473353,"own_change_pct":1.311594,"rel_strength_pct":{"SPY":1.283645,"IWM":1.227801}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.066624},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b4a86762d848","ts":"2026-09-21T15:06:47.031758+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 2.46% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":9.18,"target":9.74,"target_label":"premarket_high","reward_risk":0.17,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.66,"vwap":9.6403,"ext_from_open_pct":-0.31,"max_ext_allowed_pct":3.0,"volume_pace":0.122,"trend":"flat","recent_slope_pct":0.1098,"volatility":"unknown"},"price":9.66,"volume":{"bars":74,"last_bar_volume":260.0,"baseline_avg":3200.05,"bar_rvol":0.081249,"raw_accel":-0.962777,"smooth_accel":0.333274,"accel_momentum":-7.029392,"rvol_3bar":[0.104989,2.442906,0.081249],"trend_3bar":"MIXED","projected_rvol":0.159464},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":100.0,"sell_vol":200.0,"unclassified_vol":0.0,"imbalance":-0.333333,"bid":9.62,"ask":9.86,"spread_pct":2.464066,"quote_size_imbalance":null,"quote_age_s":2.912479},"context":{"vwap":9.640274,"price_vs_vwap_pct":0.204616,"ema9":9.729955,"ema20":9.696023,"ema_stack":false,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-4.261645,"dist_to_hod_atr":2.639757,"atr":0.162894,"spread_atr":1.473353,"own_change_pct":1.311594,"rel_strength_pct":{"SPY":1.283645,"IWM":1.227801}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.027083},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5b2aae8e3123","ts":"2026-09-21T15:07:08.039816+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.67 below VWAP $9.67","plan":{"state":"PASS","setup":"","stop":9.5723,"target":9.74,"target_label":"premarket_high","reward_risk":0.7,"pos_in_5d_range_pct":100.2,"room_to_5d_high_atr":-0.0},"price":9.6708,"vwap":9.6733,"ext_from_open_pct":-0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.836,"trend":"flat","recent_slope_pct":-0.0756,"volatility":"medium"},"price":9.6708,"volume":{"bars":97,"last_bar_volume":9854.0,"baseline_avg":8821.5,"bar_rvol":1.117044,"raw_accel":2.521801,"smooth_accel":-0.557883,"accel_momentum":-0.013349,"rvol_3bar":[0.770918,0.308335,1.117044],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":486.0,"sell_vol":847.0,"unclassified_vol":0.0,"imbalance":-0.270818,"bid":9.72,"ask":9.73,"spread_pct":0.102828,"quote_size_imbalance":null,"quote_age_s":2.351811},"context":{"vwap":9.673264,"price_vs_vwap_pct":-0.025469,"ema9":9.699213,"ema20":9.682328,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.619532,"dist_to_hod_atr":4.664706,"atr":0.034129,"spread_atr":0.293009,"own_change_pct":0.257732,"rel_strength_pct":{"SPY":0.240832,"IWM":0.212199}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.302515},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2bfa41553a97","ts":"2026-09-21T15:07:13.188559+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.615,"target":9.74,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":114.7,"room_to_5d_high_atr":-0.15},"price":9.7286,"vwap":9.6733,"ext_from_open_pct":0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.835,"trend":"flat","recent_slope_pct":0.0434,"volatility":"medium"},"price":9.7286,"volume":{"bars":97,"last_bar_volume":9854.0,"baseline_avg":8821.5,"bar_rvol":1.117044,"raw_accel":2.521801,"smooth_accel":-0.557883,"accel_momentum":-0.013349,"rvol_3bar":[0.770918,0.308335,1.117044],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":163.0,"sell_vol":762.0,"unclassified_vol":0.0,"imbalance":-0.647568,"bid":9.72,"ask":9.73,"spread_pct":0.102828,"quote_size_imbalance":null,"quote_age_s":0.704259},"context":{"vwap":9.673264,"price_vs_vwap_pct":0.572054,"ema9":9.699213,"ema20":9.682328,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.031536,"dist_to_hod_atr":2.971113,"atr":0.034129,"spread_atr":0.293009,"own_change_pct":0.257732,"rel_strength_pct":{"SPY":0.240832,"IWM":0.212199}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.723361},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7d54e1e43b22","ts":"2026-09-21T15:07:28.852935+00:00","symbol":"NWCL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.24% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":9.465,"target":9.74,"target_label":"premarket_high","reward_risk":0.15,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":9.705,"vwap":9.6412,"ext_from_open_pct":0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.122,"trend":"flat","recent_slope_pct":0.1554,"volatility":"unknown"},"price":9.705,"volume":{"bars":75,"last_bar_volume":520.0,"baseline_avg":3202.2,"bar_rvol":0.162388,"raw_accel":-0.350447,"smooth_accel":0.348324,"accel_momentum":0.01505,"rvol_3bar":[2.442906,0.081249,0.162388],"trend_3bar":"MIXED","projected_rvol":0.714341},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":600.0,"sell_vol":500.0,"unclassified_vol":0.0,"imbalance":0.090909,"bid":9.65,"ask":9.77,"spread_pct":1.235839,"quote_size_imbalance":null,"quote_age_s":1.712043},"context":{"vwap":9.640736,"price_vs_vwap_pct":0.666583,"ema9":9.755964,"ema20":9.71164,"ema_stack":false,"ema_warm":true,"hod":10.09,"dist_to_hod_pct":-3.815659,"dist_to_hod_atr":2.286205,"atr":0.168401,"spread_atr":0.712583,"own_change_pct":0.817996,"rel_strength_pct":{"SPY":0.801096,"IWM":0.772463}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.014763},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"11efbd91334b","ts":"2026-09-21T15:08:05.005374+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.33x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.4754,"target":11.77,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":116.8,"room_to_5d_high_atr":-0.75},"price":11.6799,"vwap":11.5445,"ext_from_open_pct":0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.328,"trend":"flat","recent_slope_pct":0.2061,"volatility":"high"},"price":11.6799,"volume":{"bars":98,"last_bar_volume":2926.0,"baseline_avg":11692.55,"bar_rvol":0.250245,"raw_accel":-0.833409,"smooth_accel":-0.053787,"accel_momentum":0.060467,"rvol_3bar":[0.045974,1.235844,0.250245],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":2988.0,"sell_vol":2358.0,"unclassified_vol":0.0,"imbalance":0.117845,"bid":11.66,"ask":11.68,"spread_pct":0.17138,"quote_size_imbalance":null,"quote_age_s":0.243069},"context":{"vwap":11.544222,"price_vs_vwap_pct":1.175287,"ema9":11.620163,"ema20":11.607006,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-2.505008,"dist_to_hod_atr":4.906517,"atr":0.061164,"spread_atr":0.326992,"own_change_pct":0.560103,"rel_strength_pct":{"SPY":0.521102,"IWM":0.498813}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.02949},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6761a070b1b6","ts":"2026-09-21T15:09:06.888188+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.949,"target":9.1299,"target_label":"ceiling","reward_risk":1.09,"pos_in_5d_range_pct":127.8,"room_to_5d_high_atr":-0.88},"price":9.0355,"vwap":9.0135,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":1.396,"trend":"flat","recent_slope_pct":0.1378,"volatility":"medium"},"price":9.0355,"volume":{"bars":99,"last_bar_volume":7784.0,"baseline_avg":16187.75,"bar_rvol":0.480857,"raw_accel":-0.629386,"smooth_accel":-0.252156,"accel_momentum":-0.976888,"rvol_3bar":[2.711257,1.330184,0.480857],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":1228.0,"sell_vol":400.0,"unclassified_vol":0.0,"imbalance":0.5086,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":4.125466},"context":{"vwap":9.013499,"price_vs_vwap_pct":0.244084,"ema9":9.00311,"ema20":8.999007,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.033965,"dist_to_hod_atr":2.943941,"atr":0.032066,"spread_atr":0.311858,"own_change_pct":0.556483,"rel_strength_pct":{"SPY":0.521177,"IWM":0.489952}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.244564},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"7b1b2fe29aca","ts":"2026-09-21T15:09:42.923781+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.01","plan":{"state":"PASS","setup":"","stop":8.9233,"target":9.1299,"target_label":"ceiling","reward_risk":1.39,"pos_in_5d_range_pct":125.4,"room_to_5d_high_atr":-0.81},"price":9.0098,"vwap":9.0135,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":3.0,"volume_pace":1.389,"trend":"flat","recent_slope_pct":0.0809,"volatility":"medium"},"price":9.0098,"volume":{"bars":99,"last_bar_volume":7784.0,"baseline_avg":16187.75,"bar_rvol":0.480857,"raw_accel":-0.629386,"smooth_accel":-0.252156,"accel_momentum":-0.976888,"rvol_3bar":[2.711257,1.330184,0.480857],"trend_3bar":"DECELERATING","projected_rvol":0.399546},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":514.0,"sell_vol":3641.0,"unclassified_vol":0.0,"imbalance":-0.752587,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":1.111186},"context":{"vwap":9.013499,"price_vs_vwap_pct":-0.041043,"ema9":9.00311,"ema20":8.999007,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.315458,"dist_to_hod_atr":3.745417,"atr":0.032066,"spread_atr":0.311858,"own_change_pct":0.556483,"rel_strength_pct":{"SPY":0.521177,"IWM":0.489952}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.361887},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ca8bd6d4456e","ts":"2026-09-21T15:09:48.061389+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.95,"target":9.1299,"target_label":"ceiling","reward_risk":1.0,"pos_in_5d_range_pct":128.2,"room_to_5d_high_atr":-0.9},"price":9.04,"vwap":9.0135,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":1.391,"trend":"flat","recent_slope_pct":0.1478,"volatility":"medium"},"price":9.04,"volume":{"bars":99,"last_bar_volume":7784.0,"baseline_avg":16187.75,"bar_rvol":0.480857,"raw_accel":-0.629386,"smooth_accel":-0.252156,"accel_momentum":-0.976888,"rvol_3bar":[2.711257,1.330184,0.480857],"trend_3bar":"DECELERATING","projected_rvol":0.925906},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1860.0,"sell_vol":9632.0,"unclassified_vol":0.0,"imbalance":-0.676297,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":0.005172},"context":{"vwap":9.013499,"price_vs_vwap_pct":0.29401,"ema9":9.00311,"ema20":8.999007,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.984677,"dist_to_hod_atr":2.803605,"atr":0.032066,"spread_atr":0.311858,"own_change_pct":0.556483,"rel_strength_pct":{"SPY":0.521177,"IWM":0.489952}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.325202},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"020a7e386802","ts":"2026-09-21T15:09:58.412349+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.01","plan":{"state":"PASS","setup":"","stop":8.9247,"target":9.1299,"target_label":"ceiling","reward_risk":1.37,"pos_in_5d_range_pct":125.6,"room_to_5d_high_atr":-0.81},"price":9.0112,"vwap":9.0135,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":3.0,"volume_pace":1.39,"trend":"flat","recent_slope_pct":0.084,"volatility":"medium"},"price":9.0112,"volume":{"bars":99,"last_bar_volume":7784.0,"baseline_avg":16187.75,"bar_rvol":0.480857,"raw_accel":-0.629386,"smooth_accel":-0.252156,"accel_momentum":-0.976888,"rvol_3bar":[2.711257,1.330184,0.480857],"trend_3bar":"DECELERATING","projected_rvol":1.063936},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":6275.0,"sell_vol":8770.0,"unclassified_vol":0.0,"imbalance":-0.165836,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":1.760706},"context":{"vwap":9.013499,"price_vs_vwap_pct":-0.025511,"ema9":9.00311,"ema20":8.999007,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.300124,"dist_to_hod_atr":3.701757,"atr":0.032066,"spread_atr":0.311858,"own_change_pct":0.556483,"rel_strength_pct":{"SPY":0.521177,"IWM":0.489952}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.079743},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"cd368c42b94f","ts":"2026-09-21T15:10:03.567831+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9485,"target":9.1299,"target_label":"ceiling","reward_risk":1.1,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.88},"price":9.035,"vwap":9.0135,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":1.389,"trend":"flat","recent_slope_pct":0.0904,"volatility":"medium"},"price":9.035,"volume":{"bars":100,"last_bar_volume":16768.0,"baseline_avg":16036.95,"bar_rvol":1.045585,"raw_accel":1.154162,"smooth_accel":-0.582639,"accel_momentum":-0.330482,"rvol_3bar":[1.330184,0.480857,1.045585],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":6182.0,"sell_vol":6286.0,"unclassified_vol":0.0,"imbalance":-0.008341,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":1.380213},"context":{"vwap":9.013537,"price_vs_vwap_pct":0.238124,"ema9":9.008488,"ema20":9.001959,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.039442,"dist_to_hod_atr":2.86796,"atr":0.03309,"spread_atr":0.302209,"own_change_pct":0.500835,"rel_strength_pct":{"SPY":0.498236,"IWM":0.472834}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.008722},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"266c866d6d50","ts":"2026-09-21T15:10:08.935923+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.01","plan":{"state":"PASS","setup":"","stop":8.9257,"target":9.1299,"target_label":"ceiling","reward_risk":1.36,"pos_in_5d_range_pct":125.7,"room_to_5d_high_atr":-0.82},"price":9.0122,"vwap":9.0135,"ext_from_open_pct":-0.09,"max_ext_allowed_pct":4.0,"volume_pace":1.388,"trend":"flat","recent_slope_pct":0.0399,"volatility":"medium"},"price":9.0122,"volume":{"bars":100,"last_bar_volume":16768.0,"baseline_avg":16036.95,"bar_rvol":1.045585,"raw_accel":1.154162,"smooth_accel":-0.582639,"accel_momentum":-0.330482,"rvol_3bar":[1.330184,0.480857,1.045585],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":6091.0,"sell_vol":6328.0,"unclassified_vol":0.0,"imbalance":-0.019084,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":1.70383},"context":{"vwap":9.013537,"price_vs_vwap_pct":-0.014829,"ema9":9.008488,"ema20":9.001959,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.289171,"dist_to_hod_atr":3.556996,"atr":0.03309,"spread_atr":0.302209,"own_change_pct":0.500835,"rel_strength_pct":{"SPY":0.498236,"IWM":0.472834}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.019954},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"75c5ca00aebd","ts":"2026-09-21T15:10:14.104286+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.95,"target":9.1299,"target_label":"ceiling","reward_risk":1.0,"pos_in_5d_range_pct":128.2,"room_to_5d_high_atr":-0.9},"price":9.04,"vwap":9.0135,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":1.387,"trend":"flat","recent_slope_pct":0.1015,"volatility":"medium"},"price":9.04,"volume":{"bars":100,"last_bar_volume":16768.0,"baseline_avg":16036.95,"bar_rvol":1.045585,"raw_accel":1.154162,"smooth_accel":-0.582639,"accel_momentum":-0.330482,"rvol_3bar":[1.330184,0.480857,1.045585],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":5385.0,"sell_vol":6272.0,"unclassified_vol":0.0,"imbalance":-0.076092,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":4.788942},"context":{"vwap":9.013537,"price_vs_vwap_pct":0.293596,"ema9":9.008488,"ema20":9.001959,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.984677,"dist_to_hod_atr":2.716856,"atr":0.03309,"spread_atr":0.302209,"own_change_pct":0.500835,"rel_strength_pct":{"SPY":0.498236,"IWM":0.472834}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.07956},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dfa063899ef1","ts":"2026-09-21T15:10:19.196169+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.01","plan":{"state":"PASS","setup":"","stop":8.9256,"target":9.1299,"target_label":"ceiling","reward_risk":1.36,"pos_in_5d_range_pct":125.6,"room_to_5d_high_atr":-0.82},"price":9.0121,"vwap":9.0135,"ext_from_open_pct":-0.09,"max_ext_allowed_pct":3.0,"volume_pace":1.386,"trend":"flat","recent_slope_pct":0.0397,"volatility":"medium"},"price":9.0121,"volume":{"bars":100,"last_bar_volume":16768.0,"baseline_avg":16036.95,"bar_rvol":1.045585,"raw_accel":1.154162,"smooth_accel":-0.582639,"accel_momentum":-0.330482,"rvol_3bar":[1.330184,0.480857,1.045585],"trend_3bar":"MIXED","projected_rvol":0.066461},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":54.0,"sell_vol":392.0,"unclassified_vol":0.0,"imbalance":-0.757848,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":0.739471},"context":{"vwap":9.013537,"price_vs_vwap_pct":-0.015938,"ema9":9.008488,"ema20":9.001959,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.290266,"dist_to_hod_atr":3.560018,"atr":0.03309,"spread_atr":0.302209,"own_change_pct":0.500835,"rel_strength_pct":{"SPY":0.498236,"IWM":0.472834}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.792394},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9638de022dda","ts":"2026-09-21T15:10:24.283954+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9435,"target":9.1299,"target_label":"ceiling","reward_risk":1.15,"pos_in_5d_range_pct":127.3,"room_to_5d_high_atr":-0.87},"price":9.03,"vwap":9.0135,"ext_from_open_pct":0.11,"max_ext_allowed_pct":3.0,"volume_pace":1.385,"trend":"flat","recent_slope_pct":0.0793,"volatility":"medium"},"price":9.03,"volume":{"bars":100,"last_bar_volume":16768.0,"baseline_avg":16036.95,"bar_rvol":1.045585,"raw_accel":1.154162,"smooth_accel":-0.582639,"accel_momentum":-0.330482,"rvol_3bar":[1.330184,0.480857,1.045585],"trend_3bar":"MIXED","projected_rvol":0.089975},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":231.0,"sell_vol":395.0,"unclassified_vol":0.0,"imbalance":-0.261981,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":0.240042},"context":{"vwap":9.013537,"price_vs_vwap_pct":0.182652,"ema9":9.008488,"ema20":9.001959,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.094207,"dist_to_hod_atr":3.019064,"atr":0.03309,"spread_atr":0.302209,"own_change_pct":0.500835,"rel_strength_pct":{"SPY":0.498236,"IWM":0.472834}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.273923},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0499d5b945e6","ts":"2026-09-21T15:10:55.131660+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":6.5867,"target":6.95,"target_label":"premarket_high","reward_risk":1.22,"pos_in_5d_range_pct":118.8,"room_to_5d_high_atr":-0.51},"price":6.75,"vwap":6.5188,"ext_from_open_pct":5.63,"max_ext_allowed_pct":4.0,"volume_pace":0.939,"trend":"flat","recent_slope_pct":0.0831,"volatility":"high"},"price":6.75,"volume":{"bars":100,"last_bar_volume":2810.0,"baseline_avg":8577.1,"bar_rvol":0.327617,"raw_accel":0.219089,"smooth_accel":0.876024,"accel_momentum":1.386353,"rvol_3bar":[0.201165,0.270202,0.327617],"trend_3bar":"ACCELERATING","projected_rvol":0.26151},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":1946.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.74,"ask":6.76,"spread_pct":0.296296,"quote_size_imbalance":null,"quote_age_s":0.05536},"context":{"vwap":6.518484,"price_vs_vwap_pct":3.551684,"ema9":6.726782,"ema20":6.72113,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.171303,"dist_to_hod_atr":2.538649,"atr":0.031513,"spread_atr":0.634662,"own_change_pct":0.245773,"rel_strength_pct":{"SPY":0.243174,"IWM":0.217773}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.327617},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0d92ce508b9c","ts":"2026-09-21T15:11:00.280270+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.66,"target":11.275,"target_label":"range_20d_high","reward_risk":0.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.005,"vwap":10.9469,"ext_from_open_pct":2.85,"max_ext_allowed_pct":3.0,"volume_pace":0.873,"trend":"flat","recent_slope_pct":0.2219,"volatility":"unknown"},"price":11.005,"volume":{"bars":101,"last_bar_volume":1675012.0,"baseline_avg":121466.05,"bar_rvol":13.78996,"raw_accel":12.002833,"smooth_accel":5.732685,"accel_momentum":5.879558,"rvol_3bar":[0.498902,1.087769,13.78996],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":4842,"trade_rate":161.4,"buy_vol":450383.0,"sell_vol":867675.0,"unclassified_vol":0.0,"imbalance":-0.316596,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":0.140015},"context":{"vwap":10.946898,"price_vs_vwap_pct":0.530766,"ema9":10.913086,"ema20":10.856057,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.221062,"dist_to_hod_atr":4.251595,"atr":0.114075,"spread_atr":0.087662,"own_change_pct":0.915246,"rel_strength_pct":{"SPY":0.921094,"IWM":0.867714}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-4.365847},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"37f5b0696a02","ts":"2026-09-21T15:11:00.280270+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":5.7271,"target":5.87,"target_label":"ceiling","reward_risk":1.47,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.785,"vwap":5.7554,"ext_from_open_pct":4.42,"max_ext_allowed_pct":4.0,"volume_pace":1.553,"trend":"flat","recent_slope_pct":0.0261,"volatility":"unknown"},"price":5.785,"volume":{"bars":101,"last_bar_volume":25807.0,"baseline_avg":48621.65,"bar_rvol":0.530772,"raw_accel":1.123087,"smooth_accel":-0.042146,"accel_momentum":0.124084,"rvol_3bar":[2.533173,0.160262,0.530772],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":16691.0,"sell_vol":5231.0,"unclassified_vol":0.0,"imbalance":0.522763,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":0.281801},"context":{"vwap":5.755389,"price_vs_vwap_pct":0.514493,"ema9":5.77806,"ema20":5.785068,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.448041,"dist_to_hod_atr":3.230541,"atr":0.026311,"spread_atr":0.380064,"own_change_pct":-0.065745,"rel_strength_pct":{"SPY":-0.059897,"IWM":-0.113277}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.277468},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f80dfd9e2e23","ts":"2026-09-21T15:11:31.313219+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.00 below VWAP $9.01","plan":{"state":"PASS","setup":"","stop":8.9137,"target":9.1299,"target_label":"ceiling","reward_risk":1.5,"pos_in_5d_range_pct":124.6,"room_to_5d_high_atr":-0.78},"price":9.0002,"vwap":9.0135,"ext_from_open_pct":-0.22,"max_ext_allowed_pct":3.0,"volume_pace":1.372,"trend":"flat","recent_slope_pct":-0.0826,"volatility":"medium"},"price":9.0002,"volume":{"bars":101,"last_bar_volume":4371.0,"baseline_avg":15878.05,"bar_rvol":0.275286,"raw_accel":-0.739325,"smooth_accel":-0.725017,"accel_momentum":-0.142378,"rvol_3bar":[0.480857,1.045585,0.275286],"trend_3bar":"MIXED","projected_rvol":0.431663},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":1288.0,"sell_vol":2258.0,"unclassified_vol":0.0,"imbalance":-0.273548,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":2.290979},"context":{"vwap":9.013548,"price_vs_vwap_pct":-0.148089,"ema9":9.01279,"ema20":9.004629,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.420607,"dist_to_hod_atr":3.845678,"atr":0.033726,"spread_atr":0.296506,"own_change_pct":0.389105,"rel_strength_pct":{"SPY":0.394953,"IWM":0.341573}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.075304},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cc58bfdfc35a","ts":"2026-09-21T15:11:36.355682+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9385,"target":9.1299,"target_label":"ceiling","reward_risk":1.21,"pos_in_5d_range_pct":126.8,"room_to_5d_high_atr":-0.85},"price":9.025,"vwap":9.0136,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.371,"trend":"flat","recent_slope_pct":-0.0277,"volatility":"medium"},"price":9.025,"volume":{"bars":101,"last_bar_volume":4371.0,"baseline_avg":15878.05,"bar_rvol":0.275286,"raw_accel":-0.739325,"smooth_accel":-0.725017,"accel_momentum":-0.142378,"rvol_3bar":[0.480857,1.045585,0.275286],"trend_3bar":"MIXED","projected_rvol":0.429895},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":962.0,"sell_vol":1647.0,"unclassified_vol":0.0,"imbalance":-0.262553,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":4.255935},"context":{"vwap":9.013548,"price_vs_vwap_pct":0.127053,"ema9":9.01279,"ema20":9.004629,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.148972,"dist_to_hod_atr":3.110344,"atr":0.033726,"spread_atr":0.296506,"own_change_pct":0.389105,"rel_strength_pct":{"SPY":0.394953,"IWM":0.341573}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.072277},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"27c620bc2c3b","ts":"2026-09-21T15:11:51.844699+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.5864,"target":6.79,"target_label":"ceiling","reward_risk":0.25,"pos_in_5d_range_pct":118.7,"room_to_5d_high_atr":-0.5},"price":6.7497,"vwap":6.5195,"ext_from_open_pct":5.63,"max_ext_allowed_pct":3.0,"volume_pace":0.932,"trend":"flat","recent_slope_pct":0.0829,"volatility":"high"},"price":6.7497,"volume":{"bars":101,"last_bar_volume":2623.0,"baseline_avg":8178.7,"bar_rvol":0.320711,"raw_accel":-0.066548,"smooth_accel":1.066774,"accel_momentum":0.190749,"rvol_3bar":[0.270202,0.327617,0.320711],"trend_3bar":"MIXED","projected_rvol":0.52002},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2250.0,"sell_vol":1420.0,"unclassified_vol":0.0,"imbalance":0.226158,"bid":6.76,"ask":6.78,"spread_pct":0.295421,"quote_size_imbalance":null,"quote_age_s":9.245245},"context":{"vwap":6.518882,"price_vs_vwap_pct":3.540758,"ema9":6.733426,"ema20":6.724832,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.175695,"dist_to_hod_atr":2.556937,"atr":0.031405,"spread_atr":0.636846,"own_change_pct":0.447258,"rel_strength_pct":{"SPY":0.453106,"IWM":0.399726}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.072531},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8683f8fba265","ts":"2026-09-21T15:11:57.079613+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.9% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.6067,"target":6.95,"target_label":"premarket_high","reward_risk":1.1,"pos_in_5d_range_pct":119.9,"room_to_5d_high_atr":-0.54},"price":6.77,"vwap":6.5195,"ext_from_open_pct":5.95,"max_ext_allowed_pct":3.0,"volume_pace":0.932,"trend":"flat","recent_slope_pct":0.143,"volatility":"high"},"price":6.77,"volume":{"bars":101,"last_bar_volume":2623.0,"baseline_avg":8178.7,"bar_rvol":0.320711,"raw_accel":-0.066548,"smooth_accel":1.066774,"accel_momentum":0.190749,"rvol_3bar":[0.270202,0.327617,0.320711],"trend_3bar":"MIXED","projected_rvol":0.48518},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":100.0,"sell_vol":1220.0,"unclassified_vol":0.0,"imbalance":-0.848485,"bid":6.76,"ask":6.78,"spread_pct":0.295421,"quote_size_imbalance":null,"quote_age_s":1.565682},"context":{"vwap":6.518882,"price_vs_vwap_pct":3.852161,"ema9":6.733426,"ema20":6.724832,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-0.878477,"dist_to_hod_atr":1.910538,"atr":0.031405,"spread_atr":0.636846,"own_change_pct":0.447258,"rel_strength_pct":{"SPY":0.453106,"IWM":0.399726}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.272119},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"67294b8cbf86","ts":"2026-09-21T15:12:07.426730+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.021,"target":8.28,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":124.2,"room_to_5d_high_atr":-0.76},"price":8.175,"vwap":8.0943,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.79,"trend":"flat","recent_slope_pct":-0.0705,"volatility":"high"},"price":8.175,"volume":{"bars":102,"last_bar_volume":3180.0,"baseline_avg":7818.75,"bar_rvol":0.406715,"raw_accel":-0.656216,"smooth_accel":-0.170474,"accel_momentum":-0.745864,"rvol_3bar":[0.720294,1.214317,0.406715],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":618.0,"sell_vol":690.0,"unclassified_vol":0.0,"imbalance":-0.055046,"bid":8.17,"ask":8.18,"spread_pct":0.122324,"quote_size_imbalance":null,"quote_age_s":0.000458},"context":{"vwap":8.094242,"price_vs_vwap_pct":0.997717,"ema9":8.191081,"ema20":8.179688,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.432329,"dist_to_hod_atr":4.618104,"atr":0.044131,"spread_atr":0.2266,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.014505,"IWM":-0.087523}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.022388},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"88612bcf1ea8","ts":"2026-09-21T15:12:17.801574+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.6582,"target":13.65,"target_label":"premarket_high","reward_risk":1.53,"pos_in_5d_range_pct":153.3,"room_to_5d_high_atr":-1.59},"price":13.05,"vwap":12.8012,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":0.888,"trend":"flat","recent_slope_pct":-0.2926,"volatility":"high"},"price":13.05,"volume":{"bars":102,"last_bar_volume":37528.0,"baseline_avg":19591.65,"bar_rvol":1.91551,"raw_accel":0.294114,"smooth_accel":0.50025,"accel_momentum":-0.173837,"rvol_3bar":[2.182569,1.545941,1.91551],"trend_3bar":"MIXED","projected_rvol":1.939889},"flow":{"window_s":30,"trades":184,"trade_rate":6.133333,"buy_vol":4791.0,"sell_vol":7605.0,"unclassified_vol":0.0,"imbalance":-0.227009,"bid":13.03,"ask":13.06,"spread_pct":0.229973,"quote_size_imbalance":null,"quote_age_s":0.340317},"context":{"vwap":12.800433,"price_vs_vwap_pct":1.949673,"ema9":13.054779,"ema20":12.938624,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.434783,"dist_to_hod_atr":6.762131,"atr":0.110912,"spread_atr":0.270485,"own_change_pct":1.240526,"rel_strength_pct":{"SPY":1.226021,"IWM":1.153003}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.434837},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c455cf0f43c5","ts":"2026-09-21T15:12:28.141540+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 1546.0s, plan says PASS; stop 8.70, target 9.30 (premarket_high), R:R 4.50; target 0.49 away > ~0.31 reachable in 283 min","plan":{"state":"PASS","setup":"","stop":8.7013,"target":9.3,"target_label":"premarket_high","reward_risk":4.5,"pos_in_5d_range_pct":85.6,"room_to_5d_high_atr":0.24},"price":8.8102,"vwap":8.6276,"ext_from_open_pct":1.03,"max_ext_allowed_pct":4.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":0.101,"volatility":"medium"},"price":8.8102,"volume":{"bars":102,"last_bar_volume":27700.0,"baseline_avg":18420.8,"bar_rvol":1.503735,"raw_accel":-0.276347,"smooth_accel":4.372379,"accel_momentum":1.253842,"rvol_3bar":[11.458745,2.27911,1.503735],"trend_3bar":"DECELERATING","projected_rvol":4.493145},"flow":{"window_s":30,"trades":221,"trade_rate":7.366667,"buy_vol":33562.0,"sell_vol":5794.0,"unclassified_vol":0.0,"imbalance":0.70556,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":2.075945},"context":{"vwap":8.625221,"price_vs_vwap_pct":2.144625,"ema9":8.759668,"ema20":8.747905,"ema_stack":true,"ema_warm":true,"hod":8.79,"dist_to_hod_pct":0.229807,"dist_to_hod_atr":-0.576515,"atr":0.035038,"spread_atr":0.285404,"own_change_pct":0.077553,"rel_strength_pct":{"SPY":0.063048,"IWM":-0.00997}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.060974},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f3167eed8773","ts":"2026-09-21T15:12:33.247575+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 1551.1s, plan says WATCH; stop 8.64, target 8.82 (prev_day_high), R:R 0.62; R:R 0.62 < 2.0 at 8.75; breakout: 1-min close > 8.80 on >= 33635 sh","plan":{"state":"WATCH","setup":"","stop":8.6437,"target":8.82,"target_label":"prev_day_high","reward_risk":0.62,"pos_in_5d_range_pct":77.8,"room_to_5d_high_atr":0.37},"price":8.7526,"vwap":8.6275,"ext_from_open_pct":0.37,"max_ext_allowed_pct":4.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":-0.0304,"volatility":"medium"},"price":8.7526,"volume":{"bars":102,"last_bar_volume":27700.0,"baseline_avg":18420.8,"bar_rvol":1.503735,"raw_accel":-0.276347,"smooth_accel":4.372379,"accel_momentum":1.253842,"rvol_3bar":[11.458745,2.27911,1.503735],"trend_3bar":"DECELERATING","projected_rvol":3.922136},"flow":{"window_s":30,"trades":232,"trade_rate":7.733333,"buy_vol":33966.0,"sell_vol":6069.0,"unclassified_vol":0.0,"imbalance":0.696815,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.094524},"context":{"vwap":8.625221,"price_vs_vwap_pct":1.476816,"ema9":8.759668,"ema20":8.747905,"ema_stack":false,"ema_warm":true,"hod":8.79,"dist_to_hod_pct":-0.425484,"dist_to_hod_atr":1.06741,"atr":0.035038,"spread_atr":0.285404,"own_change_pct":0.077553,"rel_strength_pct":{"SPY":0.063048,"IWM":-0.00997}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.047825},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"66fa432a16d5","ts":"2026-09-21T15:12:38.408075+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 1556.2s, plan says PASS; stop 8.71, target 9.30 (premarket_high), R:R 4.41; target 0.48 away > ~0.31 reachable in 282 min","plan":{"state":"PASS","setup":"","stop":8.7111,"target":9.3,"target_label":"premarket_high","reward_risk":4.41,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.22},"price":8.82,"vwap":8.6278,"ext_from_open_pct":1.15,"max_ext_allowed_pct":4.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":0.1234,"volatility":"medium"},"price":8.82,"volume":{"bars":102,"last_bar_volume":27700.0,"baseline_avg":18420.8,"bar_rvol":1.503735,"raw_accel":-0.276347,"smooth_accel":4.372379,"accel_momentum":1.253842,"rvol_3bar":[11.458745,2.27911,1.503735],"trend_3bar":"DECELERATING","projected_rvol":3.409575},"flow":{"window_s":30,"trades":230,"trade_rate":7.666667,"buy_vol":33491.0,"sell_vol":6007.0,"unclassified_vol":0.0,"imbalance":0.695833,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.900008},"context":{"vwap":8.625221,"price_vs_vwap_pct":2.258245,"ema9":8.759668,"ema20":8.747905,"ema_stack":true,"ema_warm":true,"hod":8.79,"dist_to_hod_pct":0.341297,"dist_to_hod_atr":-0.856211,"atr":0.035038,"spread_atr":0.285404,"own_change_pct":0.077553,"rel_strength_pct":{"SPY":0.063048,"IWM":-0.00997}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.046348},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"3d5585e9c9d4","ts":"2026-09-21T15:13:04.411765+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 1582.2s, plan says WATCH; stop 8.65, target 8.82 (prev_day_high), R:R 0.57; broke ceiling 8.79 but R:R 0.57 < 2.0; R:R 0.57 < 2.0 at 8.76; breakout: 1-min close > 8.80 on >= 34743 sh","plan":{"state":"WATCH","setup":"","stop":8.6493,"target":8.82,"target_label":"prev_day_high","reward_risk":0.57,"pos_in_5d_range_pct":78.5,"room_to_5d_high_atr":0.36},"price":8.7582,"vwap":8.6284,"ext_from_open_pct":0.44,"max_ext_allowed_pct":3.0,"volume_pace":0.925,"trend":"flat","recent_slope_pct":0.1496,"volatility":"medium"},"price":8.7582,"volume":{"bars":103,"last_bar_volume":47767.0,"baseline_avg":19451.3,"bar_rvol":2.455723,"raw_accel":0.72444,"smooth_accel":-0.20189,"accel_momentum":-4.574269,"rvol_3bar":[2.27911,1.503735,2.455723],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":3209.0,"sell_vol":4557.0,"unclassified_vol":0.0,"imbalance":-0.173577,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.434748},"context":{"vwap":8.62843,"price_vs_vwap_pct":1.503979,"ema9":8.774735,"ema20":8.756199,"ema_stack":false,"ema_warm":true,"hod":8.84,"dist_to_hod_pct":-0.925339,"dist_to_hod_atr":2.077667,"atr":0.039371,"spread_atr":0.253993,"own_change_pct":0.626424,"rel_strength_pct":{"SPY":0.591336,"IWM":0.514418}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.426257},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a2dd2ade61d2","ts":"2026-09-21T15:13:09.551642+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.3% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.5667,"target":6.79,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":117.6,"room_to_5d_high_atr":-0.47},"price":6.73,"vwap":6.5202,"ext_from_open_pct":5.32,"max_ext_allowed_pct":3.0,"volume_pace":0.923,"trend":"flat","recent_slope_pct":0.0148,"volatility":"high"},"price":6.73,"volume":{"bars":103,"last_bar_volume":1648.0,"baseline_avg":3774.65,"bar_rvol":0.436597,"raw_accel":-0.563444,"smooth_accel":0.171179,"accel_momentum":-0.427432,"rvol_3bar":[0.320711,0.459285,0.436597],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":655.0,"sell_vol":2772.0,"unclassified_vol":0.0,"imbalance":-0.617741,"bid":6.73,"ask":6.76,"spread_pct":0.444774,"quote_size_imbalance":null,"quote_age_s":0.231838},"context":{"vwap":6.519767,"price_vs_vwap_pct":3.224541,"ema9":6.746592,"ema20":6.733026,"ema_stack":false,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.464129,"dist_to_hod_atr":3.342596,"atr":0.029917,"spread_atr":1.002779,"own_change_pct":0.594354,"rel_strength_pct":{"SPY":0.559266,"IWM":0.482348}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.269704},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f78252976dbc","ts":"2026-09-21T15:13:09.551642+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.045,"target":8.28,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":125.4,"room_to_5d_high_atr":-0.8},"price":8.199,"vwap":8.0945,"ext_from_open_pct":0.11,"max_ext_allowed_pct":4.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":-0.0046,"volatility":"high"},"price":8.199,"volume":{"bars":103,"last_bar_volume":3547.0,"baseline_avg":6718.45,"bar_rvol":0.527949,"raw_accel":0.115409,"smooth_accel":-0.245585,"accel_momentum":-0.075111,"rvol_3bar":[1.214317,0.406715,0.527949],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":402.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.995037,"bid":8.17,"ask":8.18,"spread_pct":0.122324,"quote_size_imbalance":null,"quote_age_s":5.395893},"context":{"vwap":8.094485,"price_vs_vwap_pct":1.291189,"ema9":8.192625,"ema20":8.181508,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.145892,"dist_to_hod_atr":4.110394,"atr":0.043743,"spread_atr":0.228609,"own_change_pct":0.04637,"rel_strength_pct":{"SPY":0.011282,"IWM":-0.065636}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.525329},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dba7696cd4e3","ts":"2026-09-21T15:13:09.551642+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 1587.4s, plan says PASS; stop 8.72, target 9.30 (premarket_high), R:R 3.84; target 0.46 away > ~0.31 reachable in 282 min","plan":{"state":"PASS","setup":"","stop":8.72,"target":9.3,"target_label":"premarket_high","reward_risk":3.84,"pos_in_5d_range_pct":89.7,"room_to_5d_high_atr":0.17},"price":8.8398,"vwap":8.6288,"ext_from_open_pct":1.37,"max_ext_allowed_pct":3.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":0.3351,"volatility":"medium"},"price":8.8398,"volume":{"bars":103,"last_bar_volume":47767.0,"baseline_avg":19451.3,"bar_rvol":2.455723,"raw_accel":0.72444,"smooth_accel":-0.20189,"accel_momentum":-4.574269,"rvol_3bar":[2.27911,1.503735,2.455723],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":6161.0,"sell_vol":7092.0,"unclassified_vol":0.0,"imbalance":-0.070248,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.565003},"context":{"vwap":8.62843,"price_vs_vwap_pct":2.44969,"ema9":8.774735,"ema20":8.756199,"ema_stack":true,"ema_warm":true,"hod":8.84,"dist_to_hod_pct":-0.002262,"dist_to_hod_atr":0.00508,"atr":0.039371,"spread_atr":0.253993,"own_change_pct":0.626424,"rel_strength_pct":{"SPY":0.591336,"IWM":0.514418}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.17251},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ad0a5e5caffc","ts":"2026-09-21T15:13:14.707584+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.0167,"target":8.28,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":123.9,"room_to_5d_high_atr":-0.76},"price":8.1707,"vwap":8.0945,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":4.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.0737,"volatility":"high"},"price":8.1707,"volume":{"bars":103,"last_bar_volume":3547.0,"baseline_avg":6718.45,"bar_rvol":0.527949,"raw_accel":0.115409,"smooth_accel":-0.245585,"accel_momentum":-0.075111,"rvol_3bar":[1.214317,0.406715,0.527949],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":502.0,"sell_vol":44.0,"unclassified_vol":0.0,"imbalance":0.838828,"bid":8.17,"ask":8.18,"spread_pct":0.122324,"quote_size_imbalance":null,"quote_age_s":3.291255},"context":{"vwap":8.094485,"price_vs_vwap_pct":0.941568,"ema9":8.192625,"ema20":8.181508,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.483649,"dist_to_hod_atr":4.757358,"atr":0.043743,"spread_atr":0.228609,"own_change_pct":0.04637,"rel_strength_pct":{"SPY":0.011282,"IWM":-0.065636}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.442858},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"674ab3807bc3","ts":"2026-09-21T15:13:19.825716+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.7% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.5934,"target":6.95,"target_label":"premarket_high","reward_risk":1.18,"pos_in_5d_range_pct":119.1,"room_to_5d_high_atr":-0.52},"price":6.7567,"vwap":6.5203,"ext_from_open_pct":5.74,"max_ext_allowed_pct":3.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":0.0938,"volatility":"high"},"price":6.7567,"volume":{"bars":103,"last_bar_volume":1648.0,"baseline_avg":3774.65,"bar_rvol":0.436597,"raw_accel":-0.563444,"smooth_accel":0.171179,"accel_momentum":-0.427432,"rvol_3bar":[0.320711,0.459285,0.436597],"trend_3bar":"MIXED","projected_rvol":2.54319},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":925.0,"sell_vol":2572.0,"unclassified_vol":0.0,"imbalance":-0.470975,"bid":6.73,"ask":6.76,"spread_pct":0.444774,"quote_size_imbalance":null,"quote_age_s":4.872601},"context":{"vwap":6.519767,"price_vs_vwap_pct":3.634064,"ema9":6.746592,"ema20":6.733026,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.073206,"dist_to_hod_atr":2.450123,"atr":0.029917,"spread_atr":1.002779,"own_change_pct":0.594354,"rel_strength_pct":{"SPY":0.559266,"IWM":0.482348}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.205626},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"852edbb8ddf4","ts":"2026-09-21T15:13:40.532550+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.95 below VWAP $10.95","plan":{"state":"PASS","setup":"","stop":10.66,"target":11.0,"target_label":"premarket_high","reward_risk":0.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.945,"vwap":10.9474,"ext_from_open_pct":2.29,"max_ext_allowed_pct":3.0,"volume_pace":0.866,"trend":"flat","recent_slope_pct":-0.0273,"volatility":"unknown"},"price":10.945,"volume":{"bars":103,"last_bar_volume":71530.0,"baseline_avg":202848.85,"bar_rvol":0.352627,"raw_accel":-0.664342,"smooth_accel":7.358232,"accel_momentum":-2.689955,"rvol_3bar":[13.78996,1.092618,0.352627],"trend_3bar":"DECELERATING","projected_rvol":0.302759},"flow":{"window_s":30,"trades":175,"trade_rate":5.833333,"buy_vol":16933.0,"sell_vol":22700.0,"unclassified_vol":0.0,"imbalance":-0.14551,"bid":10.94,"ask":10.95,"spread_pct":0.091366,"quote_size_imbalance":null,"quote_age_s":0.711298},"context":{"vwap":10.947417,"price_vs_vwap_pct":-0.022078,"ema9":10.936575,"ema20":10.878405,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.743255,"dist_to_hod_atr":5.130977,"atr":0.106218,"spread_atr":0.094146,"own_change_pct":0.366133,"rel_strength_pct":{"SPY":0.331045,"IWM":0.254127}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.051311},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"f66bbdf68bd3","ts":"2026-09-21T15:13:40.532550+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":4.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7799,"vwap":8.7291,"ext_from_open_pct":3.05,"max_ext_allowed_pct":3.0,"volume_pace":0.664,"trend":"flat","recent_slope_pct":0.0881,"volatility":"unknown"},"price":8.7799,"volume":{"bars":103,"last_bar_volume":83354.0,"baseline_avg":77271.9,"bar_rvol":1.07871,"raw_accel":0.810823,"smooth_accel":0.390087,"accel_momentum":0.656165,"rvol_3bar":[0.563573,0.588382,1.07871],"trend_3bar":"ACCELERATING","projected_rvol":1.608894},"flow":{"window_s":30,"trades":255,"trade_rate":8.5,"buy_vol":46016.0,"sell_vol":37774.0,"unclassified_vol":0.0,"imbalance":0.098365,"bid":8.77,"ask":8.78,"spread_pct":0.11396,"quote_size_imbalance":null,"quote_age_s":0.96464},"context":{"vwap":8.728812,"price_vs_vwap_pct":0.585285,"ema9":8.753497,"ema20":8.740218,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.73587,"dist_to_hod_atr":5.034448,"atr":0.030808,"spread_atr":0.324594,"own_change_pct":0.515464,"rel_strength_pct":{"SPY":0.480377,"IWM":0.403458}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.106107},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"da9367576859","ts":"2026-09-21T15:13:45.607628+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 1623.4s, plan says WATCH; stop 8.66, target 8.82 (prev_day_high), R:R 0.47; broke ceiling 8.79 but R:R 0.47 < 2.0; R:R 0.47 < 2.0 at 8.77; breakout: 1-min close > 8.80 on >= 34743 sh","plan":{"state":"WATCH","setup":"","stop":8.6598,"target":8.82,"target_label":"prev_day_high","reward_risk":0.47,"pos_in_5d_range_pct":80.0,"room_to_5d_high_atr":0.34},"price":8.7687,"vwap":8.6309,"ext_from_open_pct":0.56,"max_ext_allowed_pct":4.0,"volume_pace":0.933,"trend":"flat","recent_slope_pct":0.1735,"volatility":"medium"},"price":8.7687,"volume":{"bars":103,"last_bar_volume":47767.0,"baseline_avg":19451.3,"bar_rvol":2.455723,"raw_accel":0.72444,"smooth_accel":-0.20189,"accel_momentum":-4.574269,"rvol_3bar":[2.27911,1.503735,2.455723],"trend_3bar":"MIXED","projected_rvol":2.849827},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":32842.0,"sell_vol":2146.0,"unclassified_vol":0.0,"imbalance":0.877329,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.941469},"context":{"vwap":8.62843,"price_vs_vwap_pct":1.62567,"ema9":8.774735,"ema20":8.756199,"ema_stack":false,"ema_warm":true,"hod":8.84,"dist_to_hod_pct":-0.806561,"dist_to_hod_atr":1.810974,"atr":0.039371,"spread_atr":0.253993,"own_change_pct":0.626424,"rel_strength_pct":{"SPY":0.591336,"IWM":0.514418}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.154478},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a5e829fd4bd9","ts":"2026-09-21T15:13:45.607628+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6873,"target":9.21,"target_label":"prev_day_high","reward_risk":4.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.775,"vwap":8.7291,"ext_from_open_pct":2.99,"max_ext_allowed_pct":3.0,"volume_pace":0.663,"trend":"flat","recent_slope_pct":0.0769,"volatility":"unknown"},"price":8.775,"volume":{"bars":103,"last_bar_volume":83354.0,"baseline_avg":77271.9,"bar_rvol":1.07871,"raw_accel":0.810823,"smooth_accel":0.390087,"accel_momentum":0.656165,"rvol_3bar":[0.563573,0.588382,1.07871],"trend_3bar":"ACCELERATING","projected_rvol":1.440349},"flow":{"window_s":30,"trades":200,"trade_rate":6.666667,"buy_vol":40322.0,"sell_vol":32173.0,"unclassified_vol":0.0,"imbalance":0.112408,"bid":8.77,"ask":8.78,"spread_pct":0.11396,"quote_size_imbalance":null,"quote_age_s":3.454198},"context":{"vwap":8.728812,"price_vs_vwap_pct":0.529149,"ema9":8.753497,"ema20":8.740218,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.790711,"dist_to_hod_atr":5.193498,"atr":0.030808,"spread_atr":0.324594,"own_change_pct":0.515464,"rel_strength_pct":{"SPY":0.480377,"IWM":0.403458}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.121255},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7f6707939bab","ts":"2026-09-21T15:13:50.667710+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 1628.5s, plan says PASS; stop 8.72, target 9.30 (premarket_high), R:R 3.64; target 0.46 away > ~0.31 reachable in 281 min","plan":{"state":"PASS","setup":"","stop":8.72,"target":9.3,"target_label":"premarket_high","reward_risk":3.64,"pos_in_5d_range_pct":90.4,"room_to_5d_high_atr":0.16},"price":8.845,"vwap":8.6318,"ext_from_open_pct":1.43,"max_ext_allowed_pct":3.0,"volume_pace":0.935,"trend":"flat","recent_slope_pct":0.3469,"volatility":"medium"},"price":8.845,"volume":{"bars":103,"last_bar_volume":47767.0,"baseline_avg":19451.3,"bar_rvol":2.455723,"raw_accel":0.72444,"smooth_accel":-0.20189,"accel_momentum":-4.574269,"rvol_3bar":[2.27911,1.503735,2.455723],"trend_3bar":"MIXED","projected_rvol":2.995699},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":17040.0,"sell_vol":6963.0,"unclassified_vol":0.0,"imbalance":0.419823,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":3.375264},"context":{"vwap":8.62843,"price_vs_vwap_pct":2.509956,"ema9":8.774735,"ema20":8.756199,"ema_stack":true,"ema_warm":true,"hod":8.84,"dist_to_hod_pct":0.056561,"dist_to_hod_atr":-0.126997,"atr":0.039371,"spread_atr":0.253993,"own_change_pct":0.626424,"rel_strength_pct":{"SPY":0.591336,"IWM":0.514418}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.030968},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"83e3cf765001","ts":"2026-09-21T15:13:55.715901+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 1633.5s, plan says WATCH; stop 8.66, target 8.82 (prev_day_high), R:R 0.46; broke ceiling 8.79 but R:R 0.46 < 2.0; R:R 0.46 < 2.0 at 8.77; breakout: 1-min close > 8.80 on >= 34743 sh","plan":{"state":"WATCH","setup":"","stop":8.6606,"target":8.82,"target_label":"prev_day_high","reward_risk":0.46,"pos_in_5d_range_pct":80.1,"room_to_5d_high_atr":0.33},"price":8.7695,"vwap":8.6314,"ext_from_open_pct":0.57,"max_ext_allowed_pct":3.0,"volume_pace":0.934,"trend":"flat","recent_slope_pct":0.1753,"volatility":"medium"},"price":8.7695,"volume":{"bars":103,"last_bar_volume":47767.0,"baseline_avg":19451.3,"bar_rvol":2.455723,"raw_accel":0.72444,"smooth_accel":-0.20189,"accel_momentum":-4.574269,"rvol_3bar":[2.27911,1.503735,2.455723],"trend_3bar":"MIXED","projected_rvol":2.736507},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":17200.0,"sell_vol":6929.0,"unclassified_vol":0.0,"imbalance":0.42567,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.358401},"context":{"vwap":8.62843,"price_vs_vwap_pct":1.634942,"ema9":8.774735,"ema20":8.756199,"ema_stack":false,"ema_warm":true,"hod":8.84,"dist_to_hod_pct":-0.797511,"dist_to_hod_atr":1.790654,"atr":0.039371,"spread_atr":0.253993,"own_change_pct":0.626424,"rel_strength_pct":{"SPY":0.591336,"IWM":0.514418}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.045328},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c083f3a62622","ts":"2026-09-21T15:14:00.825138+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7632,"target":13.65,"target_label":"premarket_high","reward_risk":1.26,"pos_in_5d_range_pct":155.5,"room_to_5d_high_atr":-1.66},"price":13.155,"vwap":12.8027,"ext_from_open_pct":1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.878,"trend":"flat","recent_slope_pct":0.0126,"volatility":"high"},"price":13.155,"volume":{"bars":104,"last_bar_volume":10397.0,"baseline_avg":21069.2,"bar_rvol":0.493469,"raw_accel":-0.403329,"smooth_accel":-0.355402,"accel_momentum":-0.232149,"rvol_3bar":[1.91551,0.830472,0.493469],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":3039.0,"sell_vol":2565.0,"unclassified_vol":0.0,"imbalance":0.084582,"bid":13.15,"ask":13.16,"spread_pct":0.076017,"quote_size_imbalance":null,"quote_age_s":0.484045},"context":{"vwap":12.802739,"price_vs_vwap_pct":2.751454,"ema9":13.079299,"ema20":12.971623,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.673913,"dist_to_hod_atr":5.901192,"atr":0.1093,"spread_atr":0.091491,"own_change_pct":-0.172989,"rel_strength_pct":{"SPY":-0.20137,"IWM":-0.263972}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.041739},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"91523f40800e","ts":"2026-09-21T15:14:00.825138+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 1638.7s, plan says PASS; stop 8.72, target 9.30 (premarket_high), R:R 3.46; target 0.45 away > ~0.31 reachable in 281 min","plan":{"state":"PASS","setup":"","stop":8.72,"target":9.3,"target_label":"premarket_high","reward_risk":3.46,"pos_in_5d_range_pct":91.1,"room_to_5d_high_atr":0.15},"price":8.85,"vwap":8.6319,"ext_from_open_pct":1.49,"max_ext_allowed_pct":3.0,"volume_pace":0.934,"trend":"flat","recent_slope_pct":0.3582,"volatility":"medium"},"price":8.85,"volume":{"bars":103,"last_bar_volume":47767.0,"baseline_avg":19451.3,"bar_rvol":2.455723,"raw_accel":0.72444,"smooth_accel":-0.20189,"accel_momentum":-4.574269,"rvol_3bar":[2.27911,1.503735,2.455723],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":15317.0,"sell_vol":5172.0,"unclassified_vol":0.0,"imbalance":0.495144,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.008512},"context":{"vwap":8.62843,"price_vs_vwap_pct":2.567904,"ema9":8.774735,"ema20":8.756199,"ema_stack":true,"ema_warm":true,"hod":8.84,"dist_to_hod_pct":0.113122,"dist_to_hod_atr":-0.253993,"atr":0.039371,"spread_atr":0.253993,"own_change_pct":0.626424,"rel_strength_pct":{"SPY":0.598044,"IWM":0.535441}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.215936},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5ea9a8b26b7c","ts":"2026-09-21T15:14:05.954792+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.036,"target":8.28,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":124.9,"room_to_5d_high_atr":-0.79},"price":8.19,"vwap":8.096,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.79,"trend":"flat","recent_slope_pct":-0.0339,"volatility":"high"},"price":8.19,"volume":{"bars":104,"last_bar_volume":6000.0,"baseline_avg":6728.1,"bar_rvol":0.891782,"raw_accel":0.69157,"smooth_accel":-0.543786,"accel_momentum":-0.298201,"rvol_3bar":[0.406715,0.527949,0.891782],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":11700.0,"sell_vol":6118.0,"unclassified_vol":0.0,"imbalance":0.313279,"bid":8.19,"ask":8.2,"spread_pct":0.122026,"quote_size_imbalance":null,"quote_age_s":1.403855},"context":{"vwap":8.094868,"price_vs_vwap_pct":1.175212,"ema9":8.18954,"ema20":8.181098,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.253306,"dist_to_hod_atr":4.420393,"atr":0.042711,"spread_atr":0.234131,"own_change_pct":-0.278049,"rel_strength_pct":{"SPY":-0.306429,"IWM":-0.369031}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.279376},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ce0da6973f9d","ts":"2026-09-21T15:15:03.300285+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 62.5s, plan says WATCH; stop 12.73, target 13.65 (premarket_high), R:R 1.35; selling not fading: red-bar volume 1.77x the advance (max 0.7); imbalance -97% still heavy selling; no reclaim yet (ne","plan":{"state":"WATCH","setup":"","stop":12.7282,"target":13.65,"target_label":"premarket_high","reward_risk":1.35,"pos_in_5d_range_pct":154.7,"room_to_5d_high_atr":-1.64},"price":13.12,"vwap":12.8049,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":0.874,"trend":"flat","recent_slope_pct":0.1011,"volatility":"high"},"price":13.12,"volume":{"bars":105,"last_bar_volume":17877.0,"baseline_avg":21036.25,"bar_rvol":0.849819,"raw_accel":0.719438,"smooth_accel":-0.565458,"accel_momentum":-0.210057,"rvol_3bar":[0.830472,0.493469,0.849819],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":350.0,"sell_vol":10265.0,"unclassified_vol":0.0,"imbalance":-0.934056,"bid":13.1,"ask":13.15,"spread_pct":0.380952,"quote_size_imbalance":null,"quote_age_s":0.977847},"context":{"vwap":12.804539,"price_vs_vwap_pct":2.463664,"ema9":13.094119,"ema20":12.988935,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.927536,"dist_to_hod_atr":6.385407,"atr":0.106493,"spread_atr":0.469515,"own_change_pct":-0.466137,"rel_strength_pct":{"SPY":-0.498623,"IWM":-0.539617}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.793778},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2be5cebf01dd","ts":"2026-09-21T15:15:13.749531+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.15,"target":9.09,"target_label":"range_20d_high","reward_risk":8.4,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.25,"vwap":8.2079,"ext_from_open_pct":3.0,"max_ext_allowed_pct":5.0,"volume_pace":4.082,"trend":"flat","recent_slope_pct":0.1476,"volatility":"unknown"},"price":8.25,"volume":{"bars":104,"last_bar_volume":430.0,"baseline_avg":1179.55,"bar_rvol":0.364546,"raw_accel":-0.148515,"smooth_accel":-0.458276,"accel_momentum":0.080889,"rvol_3bar":[0.168504,0.407801,0.364546],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":902.0,"sell_vol":830.0,"unclassified_vol":0.0,"imbalance":0.04157,"bid":8.21,"ask":8.25,"spread_pct":0.486027,"quote_size_imbalance":null,"quote_age_s":2.936759},"context":{"vwap":8.20779,"price_vs_vwap_pct":0.514268,"ema9":8.195409,"ema20":8.195955,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.846154,"dist_to_hod_atr":6.715434,"atr":0.049141,"spread_atr":0.813992,"own_change_pct":0.073314,"rel_strength_pct":{"SPY":0.040827,"IWM":-0.000167}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.015154},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"49a2851fee2a","ts":"2026-09-21T15:15:13.749531+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":4.47,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.785,"vwap":8.7293,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.0254,"volatility":"unknown"},"price":8.785,"volume":{"bars":105,"last_bar_volume":24969.0,"baseline_avg":77509.2,"bar_rvol":0.322142,"raw_accel":-0.747305,"smooth_accel":0.399223,"accel_momentum":-0.035088,"rvol_3bar":[1.07871,1.312963,0.322142],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":15058.0,"sell_vol":13380.0,"unclassified_vol":0.0,"imbalance":0.059006,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":0.334042},"context":{"vwap":8.729221,"price_vs_vwap_pct":0.638995,"ema9":8.756018,"ema20":8.743937,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.678791,"dist_to_hod_atr":4.794435,"atr":0.031286,"spread_atr":0.319629,"own_change_pct":0.068561,"rel_strength_pct":{"SPY":0.036075,"IWM":-0.004919}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.019008},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"90e25199e8e0","ts":"2026-09-21T15:15:18.914390+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":6.5767,"target":6.79,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":118.2,"room_to_5d_high_atr":-0.49},"price":6.74,"vwap":6.521,"ext_from_open_pct":5.48,"max_ext_allowed_pct":3.0,"volume_pace":0.908,"trend":"flat","recent_slope_pct":-0.1034,"volatility":"high"},"price":6.74,"volume":{"bars":105,"last_bar_volume":1263.0,"baseline_avg":3564.05,"bar_rvol":0.354372,"raw_accel":-0.780767,"smooth_accel":-0.05821,"accel_momentum":-0.503545,"rvol_3bar":[0.436597,1.67432,0.354372],"trend_3bar":"MIXED","projected_rvol":0.802826},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":244.0,"sell_vol":1302.0,"unclassified_vol":0.0,"imbalance":-0.684347,"bid":6.74,"ask":6.76,"spread_pct":0.296296,"quote_size_imbalance":null,"quote_age_s":0.472296},"context":{"vwap":6.520848,"price_vs_vwap_pct":3.360786,"ema9":6.750639,"ema20":6.737498,"ema_stack":false,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.317716,"dist_to_hod_atr":2.983888,"atr":0.030162,"spread_atr":0.663086,"own_change_pct":0.447251,"rel_strength_pct":{"SPY":0.414765,"IWM":0.373771}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.242513},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ee47a8bf92a6","ts":"2026-09-21T15:15:18.914390+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6812,"target":9.21,"target_label":"prev_day_high","reward_risk":5.03,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7689,"vwap":8.7294,"ext_from_open_pct":2.92,"max_ext_allowed_pct":3.0,"volume_pace":0.658,"trend":"flat","recent_slope_pct":-0.0113,"volatility":"unknown"},"price":8.7689,"volume":{"bars":105,"last_bar_volume":24969.0,"baseline_avg":77509.2,"bar_rvol":0.322142,"raw_accel":-0.747305,"smooth_accel":0.399223,"accel_momentum":-0.035088,"rvol_3bar":[1.07871,1.312963,0.322142],"trend_3bar":"MIXED","projected_rvol":1.505076},"flow":{"window_s":30,"trades":172,"trade_rate":5.733333,"buy_vol":28628.0,"sell_vol":10928.0,"unclassified_vol":0.0,"imbalance":0.447467,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.166328},"context":{"vwap":8.729221,"price_vs_vwap_pct":0.454557,"ema9":8.756018,"ema20":8.743937,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.858982,"dist_to_hod_atr":5.309037,"atr":0.031286,"spread_atr":0.319629,"own_change_pct":0.068561,"rel_strength_pct":{"SPY":0.036075,"IWM":-0.004919}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.144148},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"daaecd09d78b","ts":"2026-09-21T15:15:24.023719+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":6.5867,"target":6.95,"target_label":"premarket_high","reward_risk":1.22,"pos_in_5d_range_pct":118.8,"room_to_5d_high_atr":-0.51},"price":6.75,"vwap":6.521,"ext_from_open_pct":5.63,"max_ext_allowed_pct":3.0,"volume_pace":0.907,"trend":"flat","recent_slope_pct":-0.0738,"volatility":"high"},"price":6.75,"volume":{"bars":105,"last_bar_volume":1263.0,"baseline_avg":3564.05,"bar_rvol":0.354372,"raw_accel":-0.780767,"smooth_accel":-0.05821,"accel_momentum":-0.503545,"rvol_3bar":[0.436597,1.67432,0.354372],"trend_3bar":"MIXED","projected_rvol":0.702158},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":344.0,"sell_vol":1102.0,"unclassified_vol":0.0,"imbalance":-0.524205,"bid":6.74,"ask":6.76,"spread_pct":0.296296,"quote_size_imbalance":null,"quote_age_s":2.781859},"context":{"vwap":6.520848,"price_vs_vwap_pct":3.51414,"ema9":6.750639,"ema20":6.737498,"ema_stack":false,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.171303,"dist_to_hod_atr":2.652345,"atr":0.030162,"spread_atr":0.663086,"own_change_pct":0.447251,"rel_strength_pct":{"SPY":0.414765,"IWM":0.373771}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.185764},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2f1ef2e1b52d","ts":"2026-09-21T15:15:29.147269+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":13.3716,"target":13.88,"target_label":"ceiling","reward_risk":1.44,"pos_in_5d_range_pct":110.2,"room_to_5d_high_atr":-0.31},"price":13.58,"vwap":13.5762,"ext_from_open_pct":-2.37,"max_ext_allowed_pct":3.0,"volume_pace":0.906,"trend":"flat","recent_slope_pct":0.1991,"volatility":"high"},"price":13.58,"volume":{"bars":105,"last_bar_volume":99345.0,"baseline_avg":117799.0,"bar_rvol":0.843343,"raw_accel":-0.599163,"smooth_accel":0.654083,"accel_momentum":-0.095656,"rvol_3bar":[0.86512,2.218411,0.843343],"trend_3bar":"MIXED","projected_rvol":1.850492},"flow":{"window_s":30,"trades":307,"trade_rate":10.233333,"buy_vol":57527.0,"sell_vol":50209.0,"unclassified_vol":0.0,"imbalance":0.067925,"bid":13.57,"ask":13.58,"spread_pct":0.073665,"quote_size_imbalance":null,"quote_age_s":0.022237},"context":{"vwap":13.576279,"price_vs_vwap_pct":0.027408,"ema9":13.510407,"ema20":13.48674,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-2.86123,"dist_to_hod_atr":6.959577,"atr":0.057475,"spread_atr":0.173989,"own_change_pct":0.440163,"rel_strength_pct":{"SPY":0.407677,"IWM":0.366682}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.057284},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"56e9f36d40f4","ts":"2026-09-21T15:15:29.147269+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.8529,"target":9.0399,"target_label":"ceiling","reward_risk":0.33,"pos_in_5d_range_pct":143.7,"room_to_5d_high_atr":-0.58},"price":8.9933,"vwap":8.889,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.01,"trend":"flat","recent_slope_pct":0.0168,"volatility":"high"},"price":8.9933,"volume":{"bars":105,"last_bar_volume":6896.0,"baseline_avg":4344.55,"bar_rvol":1.587276,"raw_accel":2.920409,"smooth_accel":0.621264,"accel_momentum":0.929154,"rvol_3bar":[0.059727,0.361685,1.587276],"trend_3bar":"ACCELERATING","projected_rvol":23.116948},"flow":{"window_s":30,"trades":250,"trade_rate":8.333333,"buy_vol":32316.0,"sell_vol":16473.0,"unclassified_vol":0.0,"imbalance":0.324725,"bid":8.97,"ask":8.98,"spread_pct":0.111421,"quote_size_imbalance":null,"quote_age_s":0.832034},"context":{"vwap":8.885026,"price_vs_vwap_pct":1.218615,"ema9":8.968684,"ema20":8.950827,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.845645,"dist_to_hod_atr":2.582368,"atr":0.029701,"spread_atr":0.336684,"own_change_pct":-0.045687,"rel_strength_pct":{"SPY":-0.078174,"IWM":-0.119168}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.515428},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"db734024a6d0","ts":"2026-09-21T15:15:34.267839+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.57 below VWAP $13.58","plan":{"state":"PASS","setup":"","stop":13.3666,"target":13.88,"target_label":"ceiling","reward_risk":1.46,"pos_in_5d_range_pct":110.0,"room_to_5d_high_atr":-0.31},"price":13.575,"vwap":13.5762,"ext_from_open_pct":-2.41,"max_ext_allowed_pct":3.0,"volume_pace":0.906,"trend":"flat","recent_slope_pct":0.1918,"volatility":"high"},"price":13.575,"volume":{"bars":105,"last_bar_volume":99345.0,"baseline_avg":117799.0,"bar_rvol":0.843343,"raw_accel":-0.599163,"smooth_accel":0.654083,"accel_momentum":-0.095656,"rvol_3bar":[0.86512,2.218411,0.843343],"trend_3bar":"MIXED","projected_rvol":1.873314},"flow":{"window_s":30,"trades":249,"trade_rate":8.3,"buy_vol":53465.0,"sell_vol":51889.0,"unclassified_vol":0.0,"imbalance":0.014959,"bid":13.57,"ask":13.58,"spread_pct":0.073665,"quote_size_imbalance":null,"quote_age_s":0.164417},"context":{"vwap":13.576279,"price_vs_vwap_pct":-0.009421,"ema9":13.510407,"ema20":13.48674,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-2.896996,"dist_to_hod_atr":7.046571,"atr":0.057475,"spread_atr":0.173989,"own_change_pct":0.440163,"rel_strength_pct":{"SPY":0.407677,"IWM":0.366682}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.012616},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a9fd0d6f5412","ts":"2026-09-21T15:15:34.267839+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.8396,"target":9.0399,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":141.9,"room_to_5d_high_atr":-0.55},"price":8.98,"vwap":8.8889,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.009,"trend":"flat","recent_slope_pct":-0.0128,"volatility":"high"},"price":8.98,"volume":{"bars":105,"last_bar_volume":6896.0,"baseline_avg":4344.55,"bar_rvol":1.587276,"raw_accel":2.920409,"smooth_accel":0.621264,"accel_momentum":0.929154,"rvol_3bar":[0.059727,0.361685,1.587276],"trend_3bar":"ACCELERATING","projected_rvol":19.702933},"flow":{"window_s":30,"trades":246,"trade_rate":8.2,"buy_vol":32284.0,"sell_vol":16564.0,"unclassified_vol":0.0,"imbalance":0.321815,"bid":8.97,"ask":8.99,"spread_pct":0.222717,"quote_size_imbalance":null,"quote_age_s":3.786548},"context":{"vwap":8.885026,"price_vs_vwap_pct":1.068925,"ema9":8.968684,"ema20":8.950827,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.992282,"dist_to_hod_atr":3.030158,"atr":0.029701,"spread_atr":0.673369,"own_change_pct":-0.045687,"rel_strength_pct":{"SPY":-0.078174,"IWM":-0.119168}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.510809},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"32fbeeb00270","ts":"2026-09-21T15:15:39.480837+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":6.5667,"target":6.79,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":117.6,"room_to_5d_high_atr":-0.47},"price":6.73,"vwap":6.521,"ext_from_open_pct":5.32,"max_ext_allowed_pct":3.0,"volume_pace":0.905,"trend":"flat","recent_slope_pct":-0.133,"volatility":"high"},"price":6.73,"volume":{"bars":105,"last_bar_volume":1263.0,"baseline_avg":3564.05,"bar_rvol":0.354372,"raw_accel":-0.780767,"smooth_accel":-0.05821,"accel_momentum":-0.503545,"rvol_3bar":[0.436597,1.67432,0.354372],"trend_3bar":"MIXED","projected_rvol":0.428109},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":100.0,"sell_vol":552.0,"unclassified_vol":0.0,"imbalance":-0.693252,"bid":6.73,"ask":6.76,"spread_pct":0.444774,"quote_size_imbalance":null,"quote_age_s":1.208883},"context":{"vwap":6.520848,"price_vs_vwap_pct":3.207432,"ema9":6.750639,"ema20":6.737498,"ema_stack":false,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.464129,"dist_to_hod_atr":3.315431,"atr":0.030162,"spread_atr":0.994629,"own_change_pct":0.447251,"rel_strength_pct":{"SPY":0.414765,"IWM":0.373771}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.245669},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5c7cbbd9c46a","ts":"2026-09-21T15:15:49.840719+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.21 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.085,"target":9.09,"target_label":"range_20d_high","reward_risk":7.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.205,"vwap":8.2078,"ext_from_open_pct":2.43,"max_ext_allowed_pct":5.0,"volume_pace":4.062,"trend":"flat","recent_slope_pct":0.038,"volatility":"unknown"},"price":8.205,"volume":{"bars":104,"last_bar_volume":430.0,"baseline_avg":1179.55,"bar_rvol":0.364546,"raw_accel":-0.148515,"smooth_accel":-0.458276,"accel_momentum":0.080889,"rvol_3bar":[0.168504,0.407801,0.364546],"trend_3bar":"MIXED","projected_rvol":2.261624},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":2.0,"sell_vol":502.0,"unclassified_vol":0.0,"imbalance":-0.992063,"bid":8.17,"ask":8.23,"spread_pct":0.731707,"quote_size_imbalance":null,"quote_age_s":27.759882},"context":{"vwap":8.20779,"price_vs_vwap_pct":-0.033992,"ema9":8.195409,"ema20":8.195955,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.370629,"dist_to_hod_atr":7.631175,"atr":0.049141,"spread_atr":1.220988,"own_change_pct":0.073314,"rel_strength_pct":{"SPY":0.040827,"IWM":-0.000167}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.361653},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3e71f90699a8","ts":"2026-09-21T15:15:55.042031+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":4.2,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.79,"vwap":8.7296,"ext_from_open_pct":3.17,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.0368,"volatility":"unknown"},"price":8.79,"volume":{"bars":105,"last_bar_volume":24969.0,"baseline_avg":77509.2,"bar_rvol":0.322142,"raw_accel":-0.747305,"smooth_accel":0.399223,"accel_momentum":-0.035088,"rvol_3bar":[1.07871,1.312963,0.322142],"trend_3bar":"MIXED","projected_rvol":1.160941},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":3432.0,"sell_vol":13134.0,"unclassified_vol":0.0,"imbalance":-0.585657,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":0.136639},"context":{"vwap":8.729221,"price_vs_vwap_pct":0.696274,"ema9":8.756018,"ema20":8.743937,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.622832,"dist_to_hod_atr":4.63462,"atr":0.031286,"spread_atr":0.319629,"own_change_pct":0.068561,"rel_strength_pct":{"SPY":0.036075,"IWM":-0.004919}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.188665},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c63f850029bf","ts":"2026-09-21T15:16:00.219539+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6876,"target":9.21,"target_label":"prev_day_high","reward_risk":4.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7754,"vwap":8.7296,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":0.656,"trend":"flat","recent_slope_pct":0.0035,"volatility":"unknown"},"price":8.7754,"volume":{"bars":105,"last_bar_volume":24969.0,"baseline_avg":77509.2,"bar_rvol":0.322142,"raw_accel":-0.747305,"smooth_accel":0.399223,"accel_momentum":-0.035088,"rvol_3bar":[1.07871,1.312963,0.322142],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":3128.0,"sell_vol":12738.0,"unclassified_vol":0.0,"imbalance":-0.605698,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":0.221814},"context":{"vwap":8.729221,"price_vs_vwap_pct":0.52902,"ema9":8.756018,"ema20":8.743937,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.786234,"dist_to_hod_atr":5.101279,"atr":0.031286,"spread_atr":0.319629,"own_change_pct":0.068561,"rel_strength_pct":{"SPY":0.000979,"IWM":0.023081}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.195121},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0c5a88b08fe5","ts":"2026-09-21T15:16:05.561661+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"held 31.3s, plan says WATCH; stop 8.86, target 9.05 (ceiling), R:R 0.36; R:R 0.36 < 2.0 at 9.00; pullback: buy 8.95-8.97 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.8586,"target":9.05,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":144.5,"room_to_5d_high_atr":-0.59},"price":8.999,"vwap":8.8923,"ext_from_open_pct":3.08,"max_ext_allowed_pct":4.0,"volume_pace":1.021,"trend":"flat","recent_slope_pct":0.1056,"volatility":"high"},"price":8.999,"volume":{"bars":106,"last_bar_volume":69733.0,"baseline_avg":4636.8,"bar_rvol":15.039036,"raw_accel":9.112094,"smooth_accel":14.991024,"accel_momentum":14.36976,"rvol_3bar":[0.361685,1.587276,15.039036],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":17685.0,"sell_vol":3269.0,"unclassified_vol":0.0,"imbalance":0.687983,"bid":9.03,"ask":9.05,"spread_pct":0.221239,"quote_size_imbalance":null,"quote_age_s":3.095588},"context":{"vwap":8.892273,"price_vs_vwap_pct":1.200219,"ema9":8.982947,"ema20":8.959319,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.7828,"dist_to_hod_atr":2.087716,"atr":0.034008,"spread_atr":0.588089,"own_change_pct":0.736581,"rel_strength_pct":{"SPY":0.668998,"IWM":0.691101}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":10.346604},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"68381b7c25d6","ts":"2026-09-21T15:16:05.561661+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.66,"target":11.0,"target_label":"premarket_high","reward_risk":0.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9739,"vwap":10.9475,"ext_from_open_pct":2.56,"max_ext_allowed_pct":3.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":-0.0171,"volatility":"unknown"},"price":10.9739,"volume":{"bars":106,"last_bar_volume":120082.0,"baseline_avg":196884.15,"bar_rvol":0.609912,"raw_accel":1.439648,"smooth_accel":-0.889521,"accel_momentum":0.02721,"rvol_3bar":[0.332746,0.146767,0.609912],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":253,"trade_rate":8.433333,"buy_vol":46558.0,"sell_vol":32865.0,"unclassified_vol":0.0,"imbalance":0.172406,"bid":10.95,"ask":10.96,"spread_pct":0.091283,"quote_size_imbalance":null,"quote_age_s":0.601442},"context":{"vwap":10.947459,"price_vs_vwap_pct":0.241525,"ema9":10.940591,"ema20":10.895955,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.491732,"dist_to_hod_atr":5.164713,"atr":0.099928,"spread_atr":0.100072,"own_change_pct":-0.634589,"rel_strength_pct":{"SPY":-0.702172,"IWM":-0.680069}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.105152},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3d11cd6f9f19","ts":"2026-09-21T15:16:05.561661+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":4.47,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.785,"vwap":8.7296,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":0.656,"trend":"flat","recent_slope_pct":0.0352,"volatility":"unknown"},"price":8.785,"volume":{"bars":106,"last_bar_volume":83253.0,"baseline_avg":75459.7,"bar_rvol":1.103278,"raw_accel":2.334254,"smooth_accel":0.194148,"accel_momentum":-0.205075,"rvol_3bar":[1.312963,0.322142,1.103278],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":3427.0,"sell_vol":13266.0,"unclassified_vol":0.0,"imbalance":-0.589409,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":1.350103},"context":{"vwap":8.72958,"price_vs_vwap_pct":0.63485,"ema9":8.759895,"ema20":8.746933,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.678791,"dist_to_hod_atr":4.672673,"atr":0.032102,"spread_atr":0.311512,"own_change_pct":0.23301,"rel_strength_pct":{"SPY":0.165427,"IWM":0.18753}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.650281},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d84bb59e4bea","ts":"2026-09-21T15:16:10.784063+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"held 36.5s, plan says PASS; stop 8.91, target 12.50 (range_20d_high), R:R 24.57; target 3.45 away > ~0.12 reachable in 279 min","plan":{"state":"PASS","setup":"","stop":8.9096,"target":12.5,"target_label":"range_20d_high","reward_risk":24.57,"pos_in_5d_range_pct":151.4,"room_to_5d_high_atr":-0.68},"price":9.05,"vwap":8.8923,"ext_from_open_pct":3.67,"max_ext_allowed_pct":4.0,"volume_pace":1.02,"trend":"flat","recent_slope_pct":0.2188,"volatility":"high"},"price":9.05,"volume":{"bars":106,"last_bar_volume":69733.0,"baseline_avg":4636.8,"bar_rvol":15.039036,"raw_accel":9.112094,"smooth_accel":14.991024,"accel_momentum":14.36976,"rvol_3bar":[0.361685,1.587276,15.039036],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":17704.0,"sell_vol":3166.0,"unclassified_vol":0.0,"imbalance":0.696598,"bid":9.03,"ask":9.05,"spread_pct":0.221239,"quote_size_imbalance":null,"quote_age_s":2.55833},"context":{"vwap":8.892273,"price_vs_vwap_pct":1.77375,"ema9":8.982947,"ema20":8.959319,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.220507,"dist_to_hod_atr":0.588089,"atr":0.034008,"spread_atr":0.588089,"own_change_pct":0.736581,"rel_strength_pct":{"SPY":0.668998,"IWM":0.691101}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":10.476162},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"655f86cdf809","ts":"2026-09-21T15:16:15.954474+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.7% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":6.5917,"target":6.95,"target_label":"premarket_high","reward_risk":1.19,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.51},"price":6.755,"vwap":6.5212,"ext_from_open_pct":5.71,"max_ext_allowed_pct":4.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":-0.0583,"volatility":"high"},"price":6.755,"volume":{"bars":106,"last_bar_volume":1015.0,"baseline_avg":3532.75,"bar_rvol":0.287312,"raw_accel":-0.196358,"smooth_accel":-0.00087,"accel_momentum":0.05734,"rvol_3bar":[1.67432,0.354372,0.287312],"trend_3bar":"DECELERATING","projected_rvol":1.174171},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":984.0,"sell_vol":130.0,"unclassified_vol":0.0,"imbalance":0.766607,"bid":6.75,"ask":6.76,"spread_pct":0.148038,"quote_size_imbalance":null,"quote_age_s":1.006816},"context":{"vwap":6.520996,"price_vs_vwap_pct":3.588467,"ema9":6.749631,"ema20":6.73827,"ema_stack":true,"ema_warm":true,"hod":6.83,"dist_to_hod_pct":-1.098097,"dist_to_hod_atr":2.486938,"atr":0.030158,"spread_atr":0.331592,"own_change_pct":-0.213018,"rel_strength_pct":{"SPY":-0.2806,"IWM":-0.258498}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.220255},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"185768be4c36","ts":"2026-09-21T15:16:15.954474+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.8996,"target":12.5,"target_label":"range_20d_high","reward_risk":24.65,"pos_in_5d_range_pct":150.0,"room_to_5d_high_atr":-0.66},"price":9.04,"vwap":8.8931,"ext_from_open_pct":3.55,"max_ext_allowed_pct":3.0,"volume_pace":1.025,"trend":"flat","recent_slope_pct":0.1966,"volatility":"high"},"price":9.04,"volume":{"bars":106,"last_bar_volume":69733.0,"baseline_avg":4636.8,"bar_rvol":15.039036,"raw_accel":9.112094,"smooth_accel":14.991024,"accel_momentum":14.36976,"rvol_3bar":[0.361685,1.587276,15.039036],"trend_3bar":"ACCELERATING","projected_rvol":6.318931},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":17731.0,"sell_vol":10701.0,"unclassified_vol":0.0,"imbalance":0.247257,"bid":9.03,"ask":9.05,"spread_pct":0.221239,"quote_size_imbalance":null,"quote_age_s":2.80963},"context":{"vwap":8.892273,"price_vs_vwap_pct":1.661293,"ema9":8.982947,"ema20":8.959319,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.330761,"dist_to_hod_atr":0.882133,"atr":0.034008,"spread_atr":0.588089,"own_change_pct":0.736581,"rel_strength_pct":{"SPY":0.668998,"IWM":0.691101}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":3.718501},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bf4f8d96a79f","ts":"2026-09-21T15:16:21.040782+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.94 below VWAP $10.95","plan":{"state":"PASS","setup":"","stop":10.66,"target":11.0,"target_label":"premarket_high","reward_risk":0.22,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9389,"vwap":10.9475,"ext_from_open_pct":2.23,"max_ext_allowed_pct":3.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":-0.081,"volatility":"unknown"},"price":10.9389,"volume":{"bars":106,"last_bar_volume":120082.0,"baseline_avg":196884.15,"bar_rvol":0.609912,"raw_accel":1.439648,"smooth_accel":-0.889521,"accel_momentum":0.02721,"rvol_3bar":[0.332746,0.146767,0.609912],"trend_3bar":"MIXED","projected_rvol":0.871555},"flow":{"window_s":30,"trades":260,"trade_rate":8.666667,"buy_vol":53223.0,"sell_vol":20623.0,"unclassified_vol":0.0,"imbalance":0.441459,"bid":10.96,"ask":10.97,"spread_pct":0.091199,"quote_size_imbalance":null,"quote_age_s":0.2321},"context":{"vwap":10.947459,"price_vs_vwap_pct":-0.078184,"ema9":10.940591,"ema20":10.895955,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.796345,"dist_to_hod_atr":5.514964,"atr":0.099928,"spread_atr":0.100072,"own_change_pct":-0.634589,"rel_strength_pct":{"SPY":-0.702172,"IWM":-0.680069}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.269251},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"640c13acf9d9","ts":"2026-09-21T15:16:31.181807+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.12,"target":9.09,"target_label":"range_20d_high","reward_risk":8.7,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.22,"vwap":8.2078,"ext_from_open_pct":2.62,"max_ext_allowed_pct":4.0,"volume_pace":4.037,"trend":"flat","recent_slope_pct":-0.0145,"volatility":"unknown"},"price":8.22,"volume":{"bars":105,"last_bar_volume":2242.0,"baseline_avg":1140.2,"bar_rvol":1.966322,"raw_accel":4.213953,"smooth_accel":2.764218,"accel_momentum":3.222494,"rvol_3bar":[0.407801,0.364546,1.966322],"trend_3bar":"MIXED","projected_rvol":0.281829},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":22.0,"sell_vol":145.0,"unclassified_vol":0.0,"imbalance":-0.736527,"bid":8.2,"ask":8.25,"spread_pct":0.607903,"quote_size_imbalance":null,"quote_age_s":2.655259},"context":{"vwap":8.207826,"price_vs_vwap_pct":0.148322,"ema9":8.197327,"ema20":8.196816,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.195804,"dist_to_hod_atr":7.212086,"atr":0.049916,"spread_atr":1.001679,"own_change_pct":0.272526,"rel_strength_pct":{"SPY":0.204944,"IWM":0.227046}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.448249},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2e982887046c","ts":"2026-09-21T15:16:31.181807+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.8996,"target":12.5,"target_label":"range_20d_high","reward_risk":24.65,"pos_in_5d_range_pct":150.0,"room_to_5d_high_atr":-0.66},"price":9.04,"vwap":8.8932,"ext_from_open_pct":3.55,"max_ext_allowed_pct":4.0,"volume_pace":1.023,"trend":"flat","recent_slope_pct":0.1966,"volatility":"high"},"price":9.04,"volume":{"bars":106,"last_bar_volume":69733.0,"baseline_avg":4636.8,"bar_rvol":15.039036,"raw_accel":9.112094,"smooth_accel":14.991024,"accel_momentum":14.36976,"rvol_3bar":[0.361685,1.587276,15.039036],"trend_3bar":"ACCELERATING","projected_rvol":3.403701},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":146.0,"sell_vol":8056.0,"unclassified_vol":0.0,"imbalance":-0.964399,"bid":9.03,"ask":9.05,"spread_pct":0.221239,"quote_size_imbalance":null,"quote_age_s":8.038185},"context":{"vwap":8.892273,"price_vs_vwap_pct":1.661293,"ema9":8.982947,"ema20":8.959319,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.330761,"dist_to_hod_atr":0.882133,"atr":0.034008,"spread_atr":0.588089,"own_change_pct":0.736581,"rel_strength_pct":{"SPY":0.668998,"IWM":0.691101}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-14.50363},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f707b16e01f3","ts":"2026-09-21T15:16:31.181807+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.66,"target":11.0,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.97,"vwap":10.9475,"ext_from_open_pct":2.52,"max_ext_allowed_pct":3.0,"volume_pace":0.854,"trend":"flat","recent_slope_pct":-0.0242,"volatility":"unknown"},"price":10.97,"volume":{"bars":106,"last_bar_volume":120082.0,"baseline_avg":196884.15,"bar_rvol":0.609912,"raw_accel":1.439648,"smooth_accel":-0.889521,"accel_momentum":0.02721,"rvol_3bar":[0.332746,0.146767,0.609912],"trend_3bar":"MIXED","projected_rvol":0.616976},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":16278.0,"sell_vol":8207.0,"unclassified_vol":0.0,"imbalance":0.32963,"bid":10.96,"ask":10.97,"spread_pct":0.091199,"quote_size_imbalance":null,"quote_age_s":5.609056},"context":{"vwap":10.947459,"price_vs_vwap_pct":0.2059,"ema9":10.940591,"ema20":10.895955,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.525674,"dist_to_hod_atr":5.203741,"atr":0.099928,"spread_atr":0.100072,"own_change_pct":-0.634589,"rel_strength_pct":{"SPY":-0.702172,"IWM":-0.680069}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.201046},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2d3e08d72a45","ts":"2026-09-21T15:16:41.347671+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.8996,"target":12.5,"target_label":"range_20d_high","reward_risk":24.65,"pos_in_5d_range_pct":150.0,"room_to_5d_high_atr":-0.66},"price":9.04,"vwap":8.8934,"ext_from_open_pct":3.55,"max_ext_allowed_pct":3.0,"volume_pace":1.023,"trend":"flat","recent_slope_pct":0.1966,"volatility":"high"},"price":9.04,"volume":{"bars":106,"last_bar_volume":69733.0,"baseline_avg":4636.8,"bar_rvol":15.039036,"raw_accel":9.112094,"smooth_accel":14.991024,"accel_momentum":14.36976,"rvol_3bar":[0.361685,1.587276,15.039036],"trend_3bar":"ACCELERATING","projected_rvol":3.275074},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":485.0,"sell_vol":9851.0,"unclassified_vol":0.0,"imbalance":-0.906153,"bid":9.03,"ask":9.05,"spread_pct":0.221239,"quote_size_imbalance":null,"quote_age_s":1.220036},"context":{"vwap":8.892273,"price_vs_vwap_pct":1.661293,"ema9":8.982947,"ema20":8.959319,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.330761,"dist_to_hod_atr":0.882133,"atr":0.034008,"spread_atr":0.588089,"own_change_pct":0.736581,"rel_strength_pct":{"SPY":0.668998,"IWM":0.691101}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-13.627671},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2475c43be7ed","ts":"2026-09-21T15:16:46.428405+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.94 below VWAP $10.95","plan":{"state":"PASS","setup":"","stop":10.66,"target":11.0,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9402,"vwap":10.9475,"ext_from_open_pct":2.24,"max_ext_allowed_pct":3.0,"volume_pace":0.853,"trend":"flat","recent_slope_pct":-0.0786,"volatility":"unknown"},"price":10.9402,"volume":{"bars":106,"last_bar_volume":120082.0,"baseline_avg":196884.15,"bar_rvol":0.609912,"raw_accel":1.439648,"smooth_accel":-0.889521,"accel_momentum":0.02721,"rvol_3bar":[0.332746,0.146767,0.609912],"trend_3bar":"MIXED","projected_rvol":0.527442},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":9536.0,"sell_vol":10801.0,"unclassified_vol":0.0,"imbalance":-0.062202,"bid":10.98,"ask":10.99,"spread_pct":0.091033,"quote_size_imbalance":null,"quote_age_s":1.673606},"context":{"vwap":10.947459,"price_vs_vwap_pct":-0.066309,"ema9":10.940591,"ema20":10.895955,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.78503,"dist_to_hod_atr":5.501955,"atr":0.099928,"spread_atr":0.100072,"own_change_pct":-0.634589,"rel_strength_pct":{"SPY":-0.702172,"IWM":-0.680069}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.037938},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"09b39e854ed7","ts":"2026-09-21T15:16:56.637309+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.66,"target":11.275,"target_label":"range_20d_high","reward_risk":0.84,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.995,"vwap":10.9476,"ext_from_open_pct":2.76,"max_ext_allowed_pct":3.0,"volume_pace":0.852,"trend":"flat","recent_slope_pct":0.0214,"volatility":"unknown"},"price":10.995,"volume":{"bars":106,"last_bar_volume":120082.0,"baseline_avg":196884.15,"bar_rvol":0.609912,"raw_accel":1.439648,"smooth_accel":-0.889521,"accel_momentum":0.02721,"rvol_3bar":[0.332746,0.146767,0.609912],"trend_3bar":"MIXED","projected_rvol":0.482416},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":14388.0,"sell_vol":13856.0,"unclassified_vol":0.0,"imbalance":0.018836,"bid":10.99,"ask":11.0,"spread_pct":0.09095,"quote_size_imbalance":null,"quote_age_s":1.469437},"context":{"vwap":10.947459,"price_vs_vwap_pct":0.434263,"ema9":10.940591,"ema20":10.895955,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.308094,"dist_to_hod_atr":4.953561,"atr":0.099928,"spread_atr":0.100072,"own_change_pct":-0.634589,"rel_strength_pct":{"SPY":-0.702172,"IWM":-0.680069}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.011488},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"22ff76a9d1aa","ts":"2026-09-21T15:17:01.797365+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.5% above open $8.69 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.1372,"target":9.4249,"target_label":"clear air (typical 60-min move)","reward_risk":1.46,"pos_in_5d_range_pct":314.7,"room_to_5d_high_atr":-4.66},"price":9.2541,"vwap":9.174,"ext_from_open_pct":6.49,"max_ext_allowed_pct":5.0,"volume_pace":11.084,"trend":"flat","recent_slope_pct":0.063,"volatility":"medium"},"price":9.2541,"volume":{"bars":107,"last_bar_volume":46254.0,"baseline_avg":128095.0,"bar_rvol":0.361091,"raw_accel":-0.376387,"smooth_accel":0.076565,"accel_momentum":0.03908,"rvol_3bar":[1.062522,0.56345,0.361091],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":290,"trade_rate":9.666667,"buy_vol":56301.0,"sell_vol":11156.0,"unclassified_vol":0.0,"imbalance":0.669241,"bid":9.25,"ask":9.26,"spread_pct":0.10805,"quote_size_imbalance":null,"quote_age_s":0.008578},"context":{"vwap":9.173856,"price_vs_vwap_pct":0.8747,"ema9":9.26677,"ema20":9.286387,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.003112,"dist_to_hod_atr":2.893198,"atr":0.133382,"spread_atr":0.074973,"own_change_pct":-0.591398,"rel_strength_pct":{"SPY":-0.658768,"IWM":-0.671848}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.241657},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f00280001773","ts":"2026-09-21T15:17:01.797365+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.8796,"target":9.07,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":147.3,"room_to_5d_high_atr":-0.62},"price":9.02,"vwap":8.8939,"ext_from_open_pct":3.32,"max_ext_allowed_pct":3.0,"volume_pace":1.024,"trend":"flat","recent_slope_pct":0.1443,"volatility":"high"},"price":9.02,"volume":{"bars":107,"last_bar_volume":15841.0,"baseline_avg":8066.7,"bar_rvol":1.963752,"raw_accel":-0.772834,"smooth_accel":21.865974,"accel_momentum":6.87495,"rvol_3bar":[1.587276,15.039036,1.963752],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":3559.0,"sell_vol":4098.0,"unclassified_vol":0.0,"imbalance":-0.070393,"bid":9.01,"ask":9.03,"spread_pct":0.221729,"quote_size_imbalance":null,"quote_age_s":2.192411},"context":{"vwap":8.893888,"price_vs_vwap_pct":1.417962,"ema9":8.990358,"ema20":8.965098,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.551268,"dist_to_hod_atr":1.419562,"atr":0.035222,"spread_atr":0.567825,"own_change_pct":0.445434,"rel_strength_pct":{"SPY":0.378064,"IWM":0.364984}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.138235},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f906cee38426","ts":"2026-09-21T15:17:01.797365+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":2.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.025,"vwap":10.9478,"ext_from_open_pct":3.04,"max_ext_allowed_pct":3.0,"volume_pace":0.852,"trend":"flat","recent_slope_pct":0.1838,"volatility":"unknown"},"price":11.025,"volume":{"bars":107,"last_bar_volume":106564.0,"baseline_avg":198265.25,"bar_rvol":0.537482,"raw_accel":-0.112573,"smooth_accel":-0.271626,"accel_momentum":0.617895,"rvol_3bar":[0.146767,0.609912,0.537482],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":173,"trade_rate":5.766667,"buy_vol":31235.0,"sell_vol":22929.0,"unclassified_vol":0.0,"imbalance":0.153349,"bid":11.02,"ask":11.03,"spread_pct":0.090703,"quote_size_imbalance":null,"quote_age_s":1.609579},"context":{"vwap":10.947734,"price_vs_vwap_pct":0.705774,"ema9":10.958473,"ema20":10.908721,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.046997,"dist_to_hod_atr":4.636536,"atr":0.10029,"spread_atr":0.09971,"own_change_pct":0.318327,"rel_strength_pct":{"SPY":0.250956,"IWM":0.237876}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.082422},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0369a48a5b76","ts":"2026-09-21T15:17:07.003310+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.8896,"target":12.5,"target_label":"range_20d_high","reward_risk":24.72,"pos_in_5d_range_pct":148.6,"room_to_5d_high_atr":-0.64},"price":9.03,"vwap":8.894,"ext_from_open_pct":3.44,"max_ext_allowed_pct":3.0,"volume_pace":1.024,"trend":"flat","recent_slope_pct":0.1665,"volatility":"high"},"price":9.03,"volume":{"bars":107,"last_bar_volume":15841.0,"baseline_avg":8066.7,"bar_rvol":1.963752,"raw_accel":-0.772834,"smooth_accel":21.865974,"accel_momentum":6.87495,"rvol_3bar":[1.587276,15.039036,1.963752],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":4118.0,"sell_vol":2702.0,"unclassified_vol":0.0,"imbalance":0.207625,"bid":9.02,"ask":9.04,"spread_pct":0.221484,"quote_size_imbalance":null,"quote_age_s":2.419131},"context":{"vwap":8.893888,"price_vs_vwap_pct":1.530399,"ema9":8.990358,"ema20":8.965098,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.441014,"dist_to_hod_atr":1.135649,"atr":0.035222,"spread_atr":0.567825,"own_change_pct":0.445434,"rel_strength_pct":{"SPY":0.378064,"IWM":0.364984}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.407723},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5afaa715316a","ts":"2026-09-21T15:17:12.127620+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.8796,"target":9.07,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":147.3,"room_to_5d_high_atr":-0.62},"price":9.02,"vwap":8.8948,"ext_from_open_pct":3.32,"max_ext_allowed_pct":3.0,"volume_pace":1.03,"trend":"flat","recent_slope_pct":0.1443,"volatility":"high"},"price":9.02,"volume":{"bars":107,"last_bar_volume":15841.0,"baseline_avg":8066.7,"bar_rvol":1.963752,"raw_accel":-0.772834,"smooth_accel":21.865974,"accel_momentum":6.87495,"rvol_3bar":[1.587276,15.039036,1.963752],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":4104.0,"sell_vol":9922.0,"unclassified_vol":0.0,"imbalance":-0.414801,"bid":9.02,"ask":9.04,"spread_pct":0.221484,"quote_size_imbalance":null,"quote_age_s":0.430152},"context":{"vwap":8.893888,"price_vs_vwap_pct":1.417962,"ema9":8.990358,"ema20":8.965098,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.551268,"dist_to_hod_atr":1.419562,"atr":0.035222,"spread_atr":0.567825,"own_change_pct":0.445434,"rel_strength_pct":{"SPY":0.378064,"IWM":0.364984}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.814567},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"548fadc81b50","ts":"2026-09-21T15:17:17.241575+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.8996,"target":12.5,"target_label":"range_20d_high","reward_risk":24.65,"pos_in_5d_range_pct":150.0,"room_to_5d_high_atr":-0.66},"price":9.04,"vwap":8.895,"ext_from_open_pct":3.55,"max_ext_allowed_pct":3.0,"volume_pace":1.03,"trend":"flat","recent_slope_pct":0.1887,"volatility":"high"},"price":9.04,"volume":{"bars":107,"last_bar_volume":15841.0,"baseline_avg":8066.7,"bar_rvol":1.963752,"raw_accel":-0.772834,"smooth_accel":21.865974,"accel_momentum":6.87495,"rvol_3bar":[1.587276,15.039036,1.963752],"trend_3bar":"MIXED","projected_rvol":4.249273},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":5304.0,"sell_vol":9822.0,"unclassified_vol":0.0,"imbalance":-0.298691,"bid":9.02,"ask":9.04,"spread_pct":0.221484,"quote_size_imbalance":null,"quote_age_s":4.146594},"context":{"vwap":8.893888,"price_vs_vwap_pct":1.642836,"ema9":8.990358,"ema20":8.965098,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.330761,"dist_to_hod_atr":0.851737,"atr":0.035222,"spread_atr":0.567825,"own_change_pct":0.445434,"rel_strength_pct":{"SPY":0.378064,"IWM":0.364984}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.586555},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"416176e6b132","ts":"2026-09-21T15:17:32.662981+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":13.3716,"target":13.88,"target_label":"ceiling","reward_risk":1.44,"pos_in_5d_range_pct":110.2,"room_to_5d_high_atr":-0.31},"price":13.58,"vwap":13.5758,"ext_from_open_pct":-2.37,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":0.0779,"volatility":"high"},"price":13.58,"volume":{"bars":107,"last_bar_volume":121649.0,"baseline_avg":119605.1,"bar_rvol":1.017089,"raw_accel":-0.303992,"smooth_accel":-0.119784,"accel_momentum":-1.00418,"rvol_3bar":[0.843343,1.48798,1.017089],"trend_3bar":"MIXED","projected_rvol":1.195436},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":28118.0,"sell_vol":31004.0,"unclassified_vol":0.0,"imbalance":-0.048814,"bid":13.57,"ask":13.58,"spread_pct":0.073665,"quote_size_imbalance":null,"quote_age_s":0.572313},"context":{"vwap":13.575892,"price_vs_vwap_pct":0.030261,"ema9":13.527861,"ema20":13.49969,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-2.86123,"dist_to_hod_atr":6.959156,"atr":0.057478,"spread_atr":0.173979,"own_change_pct":0.74239,"rel_strength_pct":{"SPY":0.67502,"IWM":0.66194}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.049648},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6fe528e211e4","ts":"2026-09-21T15:17:32.662981+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.8471,"target":11.0,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9567,"vwap":10.9478,"ext_from_open_pct":2.4,"max_ext_allowed_pct":3.0,"volume_pace":0.85,"trend":"flat","recent_slope_pct":0.0595,"volatility":"unknown"},"price":10.9567,"volume":{"bars":107,"last_bar_volume":106564.0,"baseline_avg":198265.25,"bar_rvol":0.537482,"raw_accel":-0.112573,"smooth_accel":-0.271626,"accel_momentum":0.617895,"rvol_3bar":[0.146767,0.609912,0.537482],"trend_3bar":"MIXED","projected_rvol":0.483313},"flow":{"window_s":30,"trades":178,"trade_rate":5.933333,"buy_vol":22018.0,"sell_vol":17818.0,"unclassified_vol":0.0,"imbalance":0.105432,"bid":11.02,"ask":11.03,"spread_pct":0.090703,"quote_size_imbalance":null,"quote_age_s":1.592698},"context":{"vwap":10.947734,"price_vs_vwap_pct":0.081901,"ema9":10.958473,"ema20":10.908721,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.641427,"dist_to_hod_atr":5.317558,"atr":0.10029,"spread_atr":0.09971,"own_change_pct":0.318327,"rel_strength_pct":{"SPY":0.250956,"IWM":0.237876}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.056668},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2e75cae66960","ts":"2026-09-21T15:17:37.766795+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.57 below VWAP $13.58","plan":{"state":"PASS","setup":"","stop":13.3638,"target":13.88,"target_label":"ceiling","reward_risk":1.48,"pos_in_5d_range_pct":109.9,"room_to_5d_high_atr":-0.3},"price":13.5722,"vwap":13.5758,"ext_from_open_pct":-2.43,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":0.0664,"volatility":"high"},"price":13.5722,"volume":{"bars":107,"last_bar_volume":121649.0,"baseline_avg":119605.1,"bar_rvol":1.017089,"raw_accel":-0.303992,"smooth_accel":-0.119784,"accel_momentum":-1.00418,"rvol_3bar":[0.843343,1.48798,1.017089],"trend_3bar":"MIXED","projected_rvol":1.276376},"flow":{"window_s":30,"trades":168,"trade_rate":5.6,"buy_vol":30908.0,"sell_vol":30315.0,"unclassified_vol":0.0,"imbalance":0.009686,"bid":13.57,"ask":13.58,"spread_pct":0.073665,"quote_size_imbalance":null,"quote_age_s":0.065452},"context":{"vwap":13.575892,"price_vs_vwap_pct":-0.027193,"ema9":13.527861,"ema20":13.49969,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-2.917024,"dist_to_hod_atr":7.094859,"atr":0.057478,"spread_atr":0.173979,"own_change_pct":0.74239,"rel_strength_pct":{"SPY":0.67502,"IWM":0.66194}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.009851},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"016bd5092bac","ts":"2026-09-21T15:17:37.766795+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9196,"target":12.5,"target_label":"range_20d_high","reward_risk":24.5,"pos_in_5d_range_pct":152.7,"room_to_5d_high_atr":-0.69},"price":9.06,"vwap":8.8956,"ext_from_open_pct":3.78,"max_ext_allowed_pct":4.0,"volume_pace":1.03,"trend":"flat","recent_slope_pct":0.233,"volatility":"high"},"price":9.06,"volume":{"bars":107,"last_bar_volume":15841.0,"baseline_avg":8066.7,"bar_rvol":1.963752,"raw_accel":-0.772834,"smooth_accel":21.865974,"accel_momentum":6.87495,"rvol_3bar":[1.587276,15.039036,1.963752],"trend_3bar":"MIXED","projected_rvol":2.778896},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":4817.0,"sell_vol":8472.0,"unclassified_vol":0.0,"imbalance":-0.27504,"bid":9.05,"ask":9.07,"spread_pct":0.220751,"quote_size_imbalance":null,"quote_age_s":3.142617},"context":{"vwap":8.893888,"price_vs_vwap_pct":1.867709,"ema9":8.990358,"ema20":8.965098,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":-0.110254,"dist_to_hod_atr":0.283912,"atr":0.035222,"spread_atr":0.567825,"own_change_pct":0.445434,"rel_strength_pct":{"SPY":0.378064,"IWM":0.364984}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.540109},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"58d6ab1c1578","ts":"2026-09-21T15:17:37.766795+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.04,"vwap":10.9479,"ext_from_open_pct":3.18,"max_ext_allowed_pct":3.0,"volume_pace":0.85,"trend":"flat","recent_slope_pct":0.2111,"volatility":"unknown"},"price":11.04,"volume":{"bars":107,"last_bar_volume":106564.0,"baseline_avg":198265.25,"bar_rvol":0.537482,"raw_accel":-0.112573,"smooth_accel":-0.271626,"accel_momentum":0.617895,"rvol_3bar":[0.146767,0.609912,0.537482],"trend_3bar":"MIXED","projected_rvol":0.486388},"flow":{"window_s":30,"trades":164,"trade_rate":5.466667,"buy_vol":26216.0,"sell_vol":13354.0,"unclassified_vol":0.0,"imbalance":0.325044,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":1.115861},"context":{"vwap":10.947734,"price_vs_vwap_pct":0.842789,"ema9":10.958473,"ema20":10.908721,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.916449,"dist_to_hod_atr":4.48697,"atr":0.10029,"spread_atr":0.09971,"own_change_pct":0.318327,"rel_strength_pct":{"SPY":0.250956,"IWM":0.237876}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.174705},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"342b96573d98","ts":"2026-09-21T15:17:42.871180+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.20 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.1,"target":9.09,"target_label":"range_20d_high","reward_risk":8.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2,"vwap":8.2078,"ext_from_open_pct":2.37,"max_ext_allowed_pct":4.0,"volume_pace":3.996,"trend":"flat","recent_slope_pct":0.0017,"volatility":"unknown"},"price":8.2,"volume":{"bars":106,"last_bar_volume":391.0,"baseline_avg":1228.15,"bar_rvol":0.318365,"raw_accel":-0.825602,"smooth_accel":1.642796,"accel_momentum":-1.121422,"rvol_3bar":[0.364546,1.966322,0.318365],"trend_3bar":"MIXED","projected_rvol":0.466077},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":115.0,"sell_vol":251.0,"unclassified_vol":0.0,"imbalance":-0.371585,"bid":8.16,"ask":8.21,"spread_pct":0.610874,"quote_size_imbalance":null,"quote_age_s":3.457512},"context":{"vwap":8.207833,"price_vs_vwap_pct":-0.095438,"ema9":8.203862,"ema20":8.199977,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.428904,"dist_to_hod_atr":7.84417,"atr":0.048444,"spread_atr":1.032128,"own_change_pct":0.672783,"rel_strength_pct":{"SPY":0.605413,"IWM":0.592332}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.1183},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5099a979799a","ts":"2026-09-21T15:17:42.871180+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":13.3716,"target":13.88,"target_label":"ceiling","reward_risk":1.44,"pos_in_5d_range_pct":110.2,"room_to_5d_high_atr":-0.31},"price":13.58,"vwap":13.5758,"ext_from_open_pct":-2.37,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":0.0779,"volatility":"high"},"price":13.58,"volume":{"bars":107,"last_bar_volume":121649.0,"baseline_avg":119605.1,"bar_rvol":1.017089,"raw_accel":-0.303992,"smooth_accel":-0.119784,"accel_momentum":-1.00418,"rvol_3bar":[0.843343,1.48798,1.017089],"trend_3bar":"MIXED","projected_rvol":1.22512},"flow":{"window_s":30,"trades":188,"trade_rate":6.266667,"buy_vol":28372.0,"sell_vol":36777.0,"unclassified_vol":0.0,"imbalance":-0.129012,"bid":13.57,"ask":13.58,"spread_pct":0.073665,"quote_size_imbalance":null,"quote_age_s":0.086926},"context":{"vwap":13.575892,"price_vs_vwap_pct":0.030261,"ema9":13.527861,"ema20":13.49969,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-2.86123,"dist_to_hod_atr":6.959156,"atr":0.057478,"spread_atr":0.173979,"own_change_pct":0.74239,"rel_strength_pct":{"SPY":0.67502,"IWM":0.66194}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.131217},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b81110dd20e8","ts":"2026-09-21T15:17:42.871180+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.849,"target":11.0,"target_label":"premarket_high","reward_risk":0.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9586,"vwap":10.9479,"ext_from_open_pct":2.42,"max_ext_allowed_pct":4.0,"volume_pace":0.849,"trend":"flat","recent_slope_pct":0.0629,"volatility":"unknown"},"price":10.9586,"volume":{"bars":107,"last_bar_volume":106564.0,"baseline_avg":198265.25,"bar_rvol":0.537482,"raw_accel":-0.112573,"smooth_accel":-0.271626,"accel_momentum":0.617895,"rvol_3bar":[0.146767,0.609912,0.537482],"trend_3bar":"MIXED","projected_rvol":0.432226},"flow":{"window_s":30,"trades":158,"trade_rate":5.266667,"buy_vol":19096.0,"sell_vol":13552.0,"unclassified_vol":0.0,"imbalance":0.169811,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":2.110704},"context":{"vwap":10.947734,"price_vs_vwap_pct":0.099256,"ema9":10.958473,"ema20":10.908721,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.624891,"dist_to_hod_atr":5.298613,"atr":0.10029,"spread_atr":0.09971,"own_change_pct":0.318327,"rel_strength_pct":{"SPY":0.250956,"IWM":0.237876}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.091271},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"77e2b3aca959","ts":"2026-09-21T15:17:48.004147+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.11,"target":9.09,"target_label":"range_20d_high","reward_risk":8.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.21,"vwap":8.2078,"ext_from_open_pct":2.5,"max_ext_allowed_pct":4.0,"volume_pace":3.996,"trend":"flat","recent_slope_pct":0.0261,"volatility":"unknown"},"price":8.21,"volume":{"bars":106,"last_bar_volume":391.0,"baseline_avg":1228.15,"bar_rvol":0.318365,"raw_accel":-0.825602,"smooth_accel":1.642796,"accel_momentum":-1.121422,"rvol_3bar":[0.364546,1.966322,0.318365],"trend_3bar":"MIXED","projected_rvol":0.829428},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":387.0,"sell_vol":305.0,"unclassified_vol":0.0,"imbalance":0.118497,"bid":8.16,"ask":8.21,"spread_pct":0.610874,"quote_size_imbalance":null,"quote_age_s":2.469897},"context":{"vwap":8.207833,"price_vs_vwap_pct":0.026397,"ema9":8.203862,"ema20":8.199977,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.312354,"dist_to_hod_atr":7.637744,"atr":0.048444,"spread_atr":1.032128,"own_change_pct":0.672783,"rel_strength_pct":{"SPY":0.605413,"IWM":0.592332}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.037725},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c3c071c932d5","ts":"2026-09-21T15:17:48.004147+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.56 below VWAP $13.58","plan":{"state":"PASS","setup":"","stop":13.3478,"target":13.88,"target_label":"ceiling","reward_risk":1.55,"pos_in_5d_range_pct":109.3,"room_to_5d_high_atr":-0.28},"price":13.5562,"vwap":13.5758,"ext_from_open_pct":-2.54,"max_ext_allowed_pct":3.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":0.0428,"volatility":"high"},"price":13.5562,"volume":{"bars":107,"last_bar_volume":121649.0,"baseline_avg":119605.1,"bar_rvol":1.017089,"raw_accel":-0.303992,"smooth_accel":-0.119784,"accel_momentum":-1.00418,"rvol_3bar":[0.843343,1.48798,1.017089],"trend_3bar":"MIXED","projected_rvol":1.136455},"flow":{"window_s":30,"trades":187,"trade_rate":6.233333,"buy_vol":25452.0,"sell_vol":34776.0,"unclassified_vol":0.0,"imbalance":-0.154812,"bid":13.57,"ask":13.58,"spread_pct":0.073665,"quote_size_imbalance":null,"quote_age_s":0.057484},"context":{"vwap":13.575892,"price_vs_vwap_pct":-0.145049,"ema9":13.527861,"ema20":13.49969,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-3.031474,"dist_to_hod_atr":7.373226,"atr":0.057478,"spread_atr":0.173979,"own_change_pct":0.74239,"rel_strength_pct":{"SPY":0.67502,"IWM":0.66194}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.157457},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"18f6479bd96c","ts":"2026-09-21T15:17:48.004147+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":3.57,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8037,"vwap":8.7318,"ext_from_open_pct":3.33,"max_ext_allowed_pct":4.0,"volume_pace":0.663,"trend":"flat","recent_slope_pct":0.155,"volatility":"unknown"},"price":8.8037,"volume":{"bars":107,"last_bar_volume":125836.0,"baseline_avg":71099.9,"bar_rvol":1.769848,"raw_accel":0.511489,"smooth_accel":0.025688,"accel_momentum":-0.168459,"rvol_3bar":[0.322142,1.103278,1.769848],"trend_3bar":"ACCELERATING","projected_rvol":3.498296},"flow":{"window_s":30,"trades":172,"trade_rate":5.733333,"buy_vol":73244.0,"sell_vol":28245.0,"unclassified_vol":0.0,"imbalance":0.443388,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.77605},"context":{"vwap":8.730327,"price_vs_vwap_pct":0.840433,"ema9":8.770916,"ema20":8.753416,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.469502,"dist_to_hod_atr":3.935177,"atr":0.033366,"spread_atr":0.299709,"own_change_pct":0.570451,"rel_strength_pct":{"SPY":0.503081,"IWM":0.49}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.784729},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d2fa43c752d0","ts":"2026-09-21T15:17:53.261138+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.087,"target":9.4,"target_label":"premarket_high","reward_risk":1.05,"pos_in_5d_range_pct":137.6,"room_to_5d_high_atr":-1.0},"price":9.24,"vwap":9.1828,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":4.0,"volume_pace":0.84,"trend":"flat","recent_slope_pct":0.1305,"volatility":"high"},"price":9.24,"volume":{"bars":107,"last_bar_volume":6597.0,"baseline_avg":2580.85,"bar_rvol":2.556135,"raw_accel":1.256156,"smooth_accel":0.607166,"accel_momentum":0.626128,"rvol_3bar":[1.050647,1.124529,2.556135],"trend_3bar":"ACCELERATING","projected_rvol":17.475901},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":26898.0,"sell_vol":5596.0,"unclassified_vol":0.0,"imbalance":0.655567,"bid":9.22,"ask":9.25,"spread_pct":0.324851,"quote_size_imbalance":null,"quote_age_s":0.360852},"context":{"vwap":9.18122,"price_vs_vwap_pct":0.640218,"ema9":9.159135,"ema20":9.148109,"ema_stack":true,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-2.531646,"dist_to_hod_atr":5.244886,"atr":0.045759,"spread_atr":0.655611,"own_change_pct":0.10917,"rel_strength_pct":{"SPY":0.0418,"IWM":0.02872}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.675718},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0c0842000fad","ts":"2026-09-21T15:17:53.261138+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":13.3716,"target":13.88,"target_label":"ceiling","reward_risk":1.44,"pos_in_5d_range_pct":110.2,"room_to_5d_high_atr":-0.31},"price":13.58,"vwap":13.5758,"ext_from_open_pct":-2.37,"max_ext_allowed_pct":3.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":0.0779,"volatility":"high"},"price":13.58,"volume":{"bars":107,"last_bar_volume":121649.0,"baseline_avg":119605.1,"bar_rvol":1.017089,"raw_accel":-0.303992,"smooth_accel":-0.119784,"accel_momentum":-1.00418,"rvol_3bar":[0.843343,1.48798,1.017089],"trend_3bar":"MIXED","projected_rvol":1.12902},"flow":{"window_s":30,"trades":195,"trade_rate":6.5,"buy_vol":34647.0,"sell_vol":33985.0,"unclassified_vol":0.0,"imbalance":0.009646,"bid":13.57,"ask":13.58,"spread_pct":0.073665,"quote_size_imbalance":null,"quote_age_s":0.348177},"context":{"vwap":13.575892,"price_vs_vwap_pct":0.030261,"ema9":13.527861,"ema20":13.49969,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-2.86123,"dist_to_hod_atr":6.959156,"atr":0.057478,"spread_atr":0.173979,"own_change_pct":0.74239,"rel_strength_pct":{"SPY":0.67502,"IWM":0.66194}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.00981},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4ae284a57b4d","ts":"2026-09-21T15:17:53.261138+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.73 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.9394,"target":12.5,"target_label":"range_20d_high","reward_risk":24.31,"pos_in_5d_range_pct":155.4,"room_to_5d_high_atr":-0.73},"price":9.0801,"vwap":8.8982,"ext_from_open_pct":4.01,"max_ext_allowed_pct":4.0,"volume_pace":1.042,"trend":"flat","recent_slope_pct":0.2774,"volatility":"high"},"price":9.0801,"volume":{"bars":107,"last_bar_volume":15841.0,"baseline_avg":8066.7,"bar_rvol":1.963752,"raw_accel":-0.772834,"smooth_accel":21.865974,"accel_momentum":6.87495,"rvol_3bar":[1.587276,15.039036,1.963752],"trend_3bar":"MIXED","projected_rvol":4.623993},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":21841.0,"sell_vol":1411.0,"unclassified_vol":0.0,"imbalance":0.878634,"bid":9.08,"ask":9.09,"spread_pct":0.110072,"quote_size_imbalance":null,"quote_age_s":0.312882},"context":{"vwap":8.893888,"price_vs_vwap_pct":2.093707,"ema9":8.990358,"ema20":8.965098,"ema_stack":true,"ema_warm":true,"hod":9.07,"dist_to_hod_pct":0.111356,"dist_to_hod_atr":-0.286751,"atr":0.035222,"spread_atr":0.283912,"own_change_pct":0.445434,"rel_strength_pct":{"SPY":0.378064,"IWM":0.364984}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.72542},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"34ddad45d169","ts":"2026-09-21T15:17:53.261138+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":1.81,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.875,"vwap":8.7331,"ext_from_open_pct":4.17,"max_ext_allowed_pct":4.0,"volume_pace":0.668,"trend":"flat","recent_slope_pct":0.3168,"volatility":"unknown"},"price":8.875,"volume":{"bars":107,"last_bar_volume":125836.0,"baseline_avg":71099.9,"bar_rvol":1.769848,"raw_accel":0.511489,"smooth_accel":0.025688,"accel_momentum":-0.168459,"rvol_3bar":[0.322142,1.103278,1.769848],"trend_3bar":"ACCELERATING","projected_rvol":4.53152},"flow":{"window_s":30,"trades":255,"trade_rate":8.5,"buy_vol":135645.0,"sell_vol":38133.0,"unclassified_vol":0.0,"imbalance":0.56113,"bid":8.87,"ask":8.88,"spread_pct":0.112676,"quote_size_imbalance":null,"quote_age_s":0.014578},"context":{"vwap":8.730327,"price_vs_vwap_pct":1.657127,"ema9":8.770916,"ema20":8.753416,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.671517,"dist_to_hod_atr":1.798253,"atr":0.033366,"spread_atr":0.299709,"own_change_pct":0.570451,"rel_strength_pct":{"SPY":0.503081,"IWM":0.49}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.993114},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b447d2fc9a63","ts":"2026-09-21T15:17:58.575059+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.53 below VWAP $13.58","plan":{"state":"PASS","setup":"","stop":13.3215,"target":13.88,"target_label":"ceiling","reward_risk":1.68,"pos_in_5d_range_pct":108.3,"room_to_5d_high_atr":-0.25},"price":13.5299,"vwap":13.5757,"ext_from_open_pct":-2.73,"max_ext_allowed_pct":3.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":0.004,"volatility":"high"},"price":13.5299,"volume":{"bars":107,"last_bar_volume":121649.0,"baseline_avg":119605.1,"bar_rvol":1.017089,"raw_accel":-0.303992,"smooth_accel":-0.119784,"accel_momentum":-1.00418,"rvol_3bar":[0.843343,1.48798,1.017089],"trend_3bar":"MIXED","projected_rvol":1.147814},"flow":{"window_s":30,"trades":219,"trade_rate":7.3,"buy_vol":46057.0,"sell_vol":34212.0,"unclassified_vol":0.0,"imbalance":0.147566,"bid":13.57,"ask":13.58,"spread_pct":0.073665,"quote_size_imbalance":null,"quote_age_s":0.080864},"context":{"vwap":13.575892,"price_vs_vwap_pct":-0.338775,"ema9":13.527861,"ema20":13.49969,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-3.219599,"dist_to_hod_atr":7.83079,"atr":0.057478,"spread_atr":0.173979,"own_change_pct":0.74239,"rel_strength_pct":{"SPY":0.67502,"IWM":0.66194}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.150088},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9dab99306fdc","ts":"2026-09-21T15:17:58.575059+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.035,"vwap":10.948,"ext_from_open_pct":3.13,"max_ext_allowed_pct":3.0,"volume_pace":0.848,"trend":"flat","recent_slope_pct":0.202,"volatility":"unknown"},"price":11.035,"volume":{"bars":107,"last_bar_volume":106564.0,"baseline_avg":198265.25,"bar_rvol":0.537482,"raw_accel":-0.112573,"smooth_accel":-0.271626,"accel_momentum":0.617895,"rvol_3bar":[0.146767,0.609912,0.537482],"trend_3bar":"MIXED","projected_rvol":0.391389},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":14496.0,"sell_vol":10054.0,"unclassified_vol":0.0,"imbalance":0.180937,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":0.983279},"context":{"vwap":10.947734,"price_vs_vwap_pct":0.797117,"ema9":10.958473,"ema20":10.908721,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.959965,"dist_to_hod_atr":4.536825,"atr":0.10029,"spread_atr":0.09971,"own_change_pct":0.318327,"rel_strength_pct":{"SPY":0.250956,"IWM":0.237876}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.09725},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3cb5b664b93d","ts":"2026-09-21T15:18:03.874309+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 243.0s, plan says PASS; stop 12.65, target 13.65 (premarket_high), R:R 1.56; R:R 1.56 < 2.0 at 13.04; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.6482,"target":13.65,"target_label":"premarket_high","reward_risk":1.56,"pos_in_5d_range_pct":153.0,"room_to_5d_high_atr":-1.59},"price":13.04,"vwap":12.8101,"ext_from_open_pct":0.23,"max_ext_allowed_pct":3.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":-0.1914,"volatility":"high"},"price":13.04,"volume":{"bars":108,"last_bar_volume":10551.0,"baseline_avg":23021.05,"bar_rvol":0.45832,"raw_accel":-0.686197,"smooth_accel":0.628351,"accel_momentum":0.377547,"rvol_3bar":[1.432653,1.517948,0.45832],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":847.0,"sell_vol":1455.0,"unclassified_vol":0.0,"imbalance":-0.264118,"bid":13.02,"ask":13.06,"spread_pct":0.306748,"quote_size_imbalance":null,"quote_age_s":1.763854},"context":{"vwap":12.810083,"price_vs_vwap_pct":1.794809,"ema9":13.080314,"ema20":13.009181,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.507246,"dist_to_hod_atr":6.944089,"atr":0.109446,"spread_atr":0.365478,"own_change_pct":-0.30581,"rel_strength_pct":{"SPY":-0.331142,"IWM":-0.309307}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.121051},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fbd5e48dfa06","ts":"2026-09-21T15:18:03.874309+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":13.3716,"target":13.88,"target_label":"ceiling","reward_risk":1.44,"pos_in_5d_range_pct":110.2,"room_to_5d_high_atr":-0.31},"price":13.58,"vwap":13.5758,"ext_from_open_pct":-2.37,"max_ext_allowed_pct":3.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":0.0672,"volatility":"high"},"price":13.58,"volume":{"bars":108,"last_bar_volume":139253.0,"baseline_avg":120579.8,"bar_rvol":1.154862,"raw_accel":0.144711,"smooth_accel":-0.016663,"accel_momentum":0.103121,"rvol_3bar":[1.48798,1.017089,1.154862],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":249,"trade_rate":8.3,"buy_vol":48737.0,"sell_vol":13420.0,"unclassified_vol":0.0,"imbalance":0.56819,"bid":13.57,"ask":13.58,"spread_pct":0.073665,"quote_size_imbalance":null,"quote_age_s":0.078995},"context":{"vwap":13.57583,"price_vs_vwap_pct":0.030716,"ema9":13.539289,"ema20":13.507814,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-2.86123,"dist_to_hod_atr":6.893011,"atr":0.05803,"spread_atr":0.172325,"own_change_pct":0.592373,"rel_strength_pct":{"SPY":0.567041,"IWM":0.588877}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.656181},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3dda9dc0e233","ts":"2026-09-21T15:18:03.874309+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.1183,"target":5.2,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.17,"vwap":5.1673,"ext_from_open_pct":-0.58,"max_ext_allowed_pct":4.0,"volume_pace":0.943,"trend":"flat","recent_slope_pct":0.1713,"volatility":"unknown"},"price":5.17,"volume":{"bars":108,"last_bar_volume":80314.0,"baseline_avg":13148.25,"bar_rvol":6.108341,"raw_accel":2.335992,"smooth_accel":2.107166,"accel_momentum":-0.975872,"rvol_3bar":[1.894597,1.741001,6.108341],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":18809.0,"sell_vol":1198.0,"unclassified_vol":0.0,"imbalance":0.880242,"bid":5.16,"ask":5.17,"spread_pct":0.193611,"quote_size_imbalance":null,"quote_age_s":5.270872},"context":{"vwap":5.167324,"price_vs_vwap_pct":0.051793,"ema9":5.141851,"ema20":5.133534,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.45283,"dist_to_hod_atr":8.044601,"atr":0.01616,"spread_atr":0.618815,"own_change_pct":0.617536,"rel_strength_pct":{"SPY":0.592205,"IWM":0.61404}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":5.376818},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a2800711be54","ts":"2026-09-21T15:18:03.874309+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"held 1297.8s, plan says WATCH; stop 6.27, target 6.41 (prev_day_high), R:R 0.21; R:R 0.21 < 2.0 at 6.38; breakout: 1-min close > 6.40 on >= 88274 sh","plan":{"state":"WATCH","setup":"","stop":6.27,"target":6.4087,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.385,"vwap":6.2832,"ext_from_open_pct":1.51,"max_ext_allowed_pct":4.0,"volume_pace":1.306,"trend":"flat","recent_slope_pct":0.2394,"volatility":"unknown"},"price":6.385,"volume":{"bars":108,"last_bar_volume":139967.0,"baseline_avg":54465.9,"bar_rvol":2.56981,"raw_accel":0.00819,"smooth_accel":0.401347,"accel_momentum":0.506914,"rvol_3bar":[0.928006,2.820404,2.56981],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":136,"trade_rate":4.533333,"buy_vol":70063.0,"sell_vol":20268.0,"unclassified_vol":0.0,"imbalance":0.55125,"bid":6.38,"ask":6.39,"spread_pct":0.156617,"quote_size_imbalance":null,"quote_age_s":1.568494},"context":{"vwap":6.283153,"price_vs_vwap_pct":1.620951,"ema9":6.34274,"ema20":6.319468,"ema_stack":true,"ema_warm":true,"hod":6.42,"dist_to_hod_pct":-0.545171,"dist_to_hod_atr":1.211888,"atr":0.028881,"spread_atr":0.346254,"own_change_pct":0.948617,"rel_strength_pct":{"SPY":0.923285,"IWM":0.94512}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.416609},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"85d366b46c7b","ts":"2026-09-21T15:18:03.874309+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":3.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8021,"vwap":8.7334,"ext_from_open_pct":3.31,"max_ext_allowed_pct":4.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":0.2092,"volatility":"unknown"},"price":8.8021,"volume":{"bars":108,"last_bar_volume":303677.0,"baseline_avg":76027.9,"bar_rvol":3.994284,"raw_accel":1.413276,"smooth_accel":1.475528,"accel_momentum":1.449839,"rvol_3bar":[1.103278,1.769848,3.994284],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":242,"trade_rate":8.066667,"buy_vol":154042.0,"sell_vol":20484.0,"unclassified_vol":0.0,"imbalance":0.765261,"bid":8.87,"ask":8.88,"spread_pct":0.112676,"quote_size_imbalance":null,"quote_age_s":0.192399},"context":{"vwap":8.733255,"price_vs_vwap_pct":0.788306,"ema9":8.790733,"ema20":8.764519,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.487409,"dist_to_hod_atr":3.518837,"atr":0.037768,"spread_atr":0.264773,"own_change_pct":1.082621,"rel_strength_pct":{"SPY":1.057289,"IWM":1.079125}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.056671},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fc0c7c55e484","ts":"2026-09-21T15:18:09.124958+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.56 below VWAP $13.58","plan":{"state":"PASS","setup":"","stop":13.355,"target":13.88,"target_label":"ceiling","reward_risk":1.52,"pos_in_5d_range_pct":109.6,"room_to_5d_high_atr":-0.29},"price":13.5634,"vwap":13.5758,"ext_from_open_pct":-2.49,"max_ext_allowed_pct":3.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":0.0428,"volatility":"high"},"price":13.5634,"volume":{"bars":108,"last_bar_volume":139253.0,"baseline_avg":120579.8,"bar_rvol":1.154862,"raw_accel":0.144711,"smooth_accel":-0.016663,"accel_momentum":0.103121,"rvol_3bar":[1.48798,1.017089,1.154862],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":204,"trade_rate":6.8,"buy_vol":34166.0,"sell_vol":17291.0,"unclassified_vol":0.0,"imbalance":0.327944,"bid":13.56,"ask":13.57,"spread_pct":0.073719,"quote_size_imbalance":null,"quote_age_s":0.153564},"context":{"vwap":13.57583,"price_vs_vwap_pct":-0.09156,"ema9":13.539289,"ema20":13.507814,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-2.979971,"dist_to_hod_atr":7.179071,"atr":0.05803,"spread_atr":0.172325,"own_change_pct":0.592373,"rel_strength_pct":{"SPY":0.567041,"IWM":0.588877}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.37873},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5d4476bec714","ts":"2026-09-21T15:18:09.124958+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.17","plan":{"state":"PASS","setup":"","stop":5.1133,"target":5.2,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.165,"vwap":5.1673,"ext_from_open_pct":-0.67,"max_ext_allowed_pct":4.0,"volume_pace":0.942,"trend":"flat","recent_slope_pct":0.1519,"volatility":"unknown"},"price":5.165,"volume":{"bars":108,"last_bar_volume":80314.0,"baseline_avg":13148.25,"bar_rvol":6.108341,"raw_accel":2.335992,"smooth_accel":2.107166,"accel_momentum":-0.975872,"rvol_3bar":[1.894597,1.741001,6.108341],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":15724.0,"sell_vol":1208.0,"unclassified_vol":0.0,"imbalance":0.857312,"bid":5.16,"ask":5.17,"spread_pct":0.193611,"quote_size_imbalance":null,"quote_age_s":10.521521},"context":{"vwap":5.167324,"price_vs_vwap_pct":-0.044969,"ema9":5.141851,"ema20":5.133534,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.54717,"dist_to_hod_atr":8.354009,"atr":0.01616,"spread_atr":0.618815,"own_change_pct":0.617536,"rel_strength_pct":{"SPY":0.592205,"IWM":0.61404}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":5.236752},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"47e83e633eb8","ts":"2026-09-21T15:18:09.124958+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":1.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.87,"vwap":8.7335,"ext_from_open_pct":4.11,"max_ext_allowed_pct":4.0,"volume_pace":0.668,"trend":"flat","recent_slope_pct":0.3629,"volatility":"unknown"},"price":8.87,"volume":{"bars":108,"last_bar_volume":303677.0,"baseline_avg":76027.9,"bar_rvol":3.994284,"raw_accel":1.413276,"smooth_accel":1.475528,"accel_momentum":1.449839,"rvol_3bar":[1.103278,1.769848,3.994284],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":229,"trade_rate":7.633333,"buy_vol":135849.0,"sell_vol":19722.0,"unclassified_vol":0.0,"imbalance":0.746457,"bid":8.87,"ask":8.88,"spread_pct":0.112676,"quote_size_imbalance":null,"quote_age_s":0.065397},"context":{"vwap":8.733255,"price_vs_vwap_pct":1.565794,"ema9":8.790733,"ema20":8.764519,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.727476,"dist_to_hod_atr":1.721026,"atr":0.037768,"spread_atr":0.264773,"own_change_pct":1.082621,"rel_strength_pct":{"SPY":1.057289,"IWM":1.079125}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.981559},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"79866aea60b4","ts":"2026-09-21T15:18:24.634750+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.19 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.1081,"target":9.09,"target_label":"range_20d_high","reward_risk":10.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.19,"vwap":8.2078,"ext_from_open_pct":2.25,"max_ext_allowed_pct":5.0,"volume_pace":3.975,"trend":"flat","recent_slope_pct":0.0061,"volatility":"unknown"},"price":8.19,"volume":{"bars":107,"last_bar_volume":815.0,"baseline_avg":1039.95,"bar_rvol":0.783692,"raw_accel":1.084399,"smooth_accel":1.934468,"accel_momentum":0.291673,"rvol_3bar":[1.966322,0.318365,0.783692],"trend_3bar":"MIXED","projected_rvol":0.784577},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":10.0,"sell_vol":325.0,"unclassified_vol":0.0,"imbalance":-0.940299,"bid":8.17,"ask":8.21,"spread_pct":0.4884,"quote_size_imbalance":null,"quote_age_s":0.414077},"context":{"vwap":8.207834,"price_vs_vwap_pct":-0.21728,"ema9":8.205089,"ema20":8.200931,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.545455,"dist_to_hod_atr":8.091681,"atr":0.048198,"spread_atr":0.829916,"own_change_pct":-0.107072,"rel_strength_pct":{"SPY":-0.132404,"IWM":-0.110568}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.736904},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f1f4114a201e","ts":"2026-09-21T15:18:24.634750+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.8553,"target":11.0,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9649,"vwap":10.948,"ext_from_open_pct":2.48,"max_ext_allowed_pct":3.0,"volume_pace":0.845,"trend":"flat","recent_slope_pct":0.1728,"volatility":"unknown"},"price":10.9649,"volume":{"bars":108,"last_bar_volume":75756.0,"baseline_avg":197078.05,"bar_rvol":0.384396,"raw_accel":-0.289103,"smooth_accel":0.800569,"accel_momentum":1.072195,"rvol_3bar":[0.609912,0.537482,0.384396],"trend_3bar":"DECELERATING","projected_rvol":0.292315},"flow":{"window_s":30,"trades":154,"trade_rate":5.133333,"buy_vol":16019.0,"sell_vol":12937.0,"unclassified_vol":0.0,"imbalance":0.106437,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":0.031031},"context":{"vwap":10.947995,"price_vs_vwap_pct":0.154407,"ema9":10.973778,"ema20":10.920748,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.570061,"dist_to_hod_atr":5.237998,"atr":0.100248,"spread_atr":0.099752,"own_change_pct":0.638395,"rel_strength_pct":{"SPY":0.613063,"IWM":0.634899}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.040914},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b47c34d848a0","ts":"2026-09-21T15:18:29.861039+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.76,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.036,"vwap":10.9481,"ext_from_open_pct":3.14,"max_ext_allowed_pct":3.0,"volume_pace":0.845,"trend":"flat","recent_slope_pct":0.3019,"volatility":"unknown"},"price":11.036,"volume":{"bars":108,"last_bar_volume":75756.0,"baseline_avg":197078.05,"bar_rvol":0.384396,"raw_accel":-0.289103,"smooth_accel":0.800569,"accel_momentum":1.072195,"rvol_3bar":[0.609912,0.537482,0.384396],"trend_3bar":"DECELERATING","projected_rvol":0.324777},"flow":{"window_s":30,"trades":136,"trade_rate":4.533333,"buy_vol":19034.0,"sell_vol":12821.0,"unclassified_vol":0.0,"imbalance":0.19504,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":0.695473},"context":{"vwap":10.947995,"price_vs_vwap_pct":0.803841,"ema9":10.973778,"ema20":10.920748,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.951262,"dist_to_hod_atr":4.528759,"atr":0.100248,"spread_atr":0.099752,"own_change_pct":0.638395,"rel_strength_pct":{"SPY":0.613063,"IWM":0.634899}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.074973},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"36ca5f0f7248","ts":"2026-09-21T15:18:29.861039+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":3.47,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8064,"vwap":8.7337,"ext_from_open_pct":3.36,"max_ext_allowed_pct":4.0,"volume_pace":0.668,"trend":"flat","recent_slope_pct":0.219,"volatility":"unknown"},"price":8.8064,"volume":{"bars":108,"last_bar_volume":303677.0,"baseline_avg":76027.9,"bar_rvol":3.994284,"raw_accel":1.413276,"smooth_accel":1.475528,"accel_momentum":1.449839,"rvol_3bar":[1.103278,1.769848,3.994284],"trend_3bar":"ACCELERATING","projected_rvol":1.403911},"flow":{"window_s":30,"trades":125,"trade_rate":4.166667,"buy_vol":44654.0,"sell_vol":9101.0,"unclassified_vol":0.0,"imbalance":0.66139,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.112164},"context":{"vwap":8.733255,"price_vs_vwap_pct":0.837543,"ema9":8.790733,"ema20":8.764519,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.439284,"dist_to_hod_atr":3.404984,"atr":0.037768,"spread_atr":0.264773,"own_change_pct":1.082621,"rel_strength_pct":{"SPY":1.057289,"IWM":1.079125}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.641778},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b3ae05164987","ts":"2026-09-21T15:18:35.102791+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8657,"vwap":8.7339,"ext_from_open_pct":4.06,"max_ext_allowed_pct":4.0,"volume_pace":0.668,"trend":"flat","recent_slope_pct":0.3532,"volatility":"unknown"},"price":8.8657,"volume":{"bars":108,"last_bar_volume":303677.0,"baseline_avg":76027.9,"bar_rvol":3.994284,"raw_accel":1.413276,"smooth_accel":1.475528,"accel_momentum":1.449839,"rvol_3bar":[1.103278,1.769848,3.994284],"trend_3bar":"ACCELERATING","projected_rvol":1.511898},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":38414.0,"sell_vol":7550.0,"unclassified_vol":0.0,"imbalance":0.671482,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.071166},"context":{"vwap":8.733255,"price_vs_vwap_pct":1.516556,"ema9":8.790733,"ema20":8.764519,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.775602,"dist_to_hod_atr":1.834879,"atr":0.037768,"spread_atr":0.264773,"own_change_pct":1.082621,"rel_strength_pct":{"SPY":1.057289,"IWM":1.079125}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.68209},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ee31fd576b15","ts":"2026-09-21T15:18:40.299186+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.88,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.03,"vwap":10.9481,"ext_from_open_pct":3.08,"max_ext_allowed_pct":4.0,"volume_pace":0.844,"trend":"flat","recent_slope_pct":0.2911,"volatility":"unknown"},"price":11.03,"volume":{"bars":108,"last_bar_volume":75756.0,"baseline_avg":197078.05,"bar_rvol":0.384396,"raw_accel":-0.289103,"smooth_accel":0.800569,"accel_momentum":1.072195,"rvol_3bar":[0.609912,0.537482,0.384396],"trend_3bar":"DECELERATING","projected_rvol":0.260395},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":17667.0,"sell_vol":8466.0,"unclassified_vol":0.0,"imbalance":0.352084,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":0.000137},"context":{"vwap":10.947995,"price_vs_vwap_pct":0.749037,"ema9":10.973778,"ema20":10.920748,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.003481,"dist_to_hod_atr":4.58861,"atr":0.100248,"spread_atr":0.099752,"own_change_pct":0.638395,"rel_strength_pct":{"SPY":0.613063,"IWM":0.634899}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.135339},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0896c7fc4dd7","ts":"2026-09-21T15:18:45.463703+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.88,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.03,"vwap":10.9481,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.844,"trend":"flat","recent_slope_pct":0.2911,"volatility":"unknown"},"price":11.03,"volume":{"bars":108,"last_bar_volume":75756.0,"baseline_avg":197078.05,"bar_rvol":0.384396,"raw_accel":-0.289103,"smooth_accel":0.800569,"accel_momentum":1.072195,"rvol_3bar":[0.609912,0.537482,0.384396],"trend_3bar":"DECELERATING","projected_rvol":0.296682},"flow":{"window_s":30,"trades":190,"trade_rate":6.333333,"buy_vol":24348.0,"sell_vol":9887.0,"unclassified_vol":0.0,"imbalance":0.422404,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":4.452939},"context":{"vwap":10.947995,"price_vs_vwap_pct":0.749037,"ema9":10.973778,"ema20":10.920748,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.003481,"dist_to_hod_atr":4.58861,"atr":0.100248,"spread_atr":0.099752,"own_change_pct":0.638395,"rel_strength_pct":{"SPY":0.613063,"IWM":0.634899}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.16237},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"af828f68d1c1","ts":"2026-09-21T15:18:50.569858+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1279,"target":9.09,"target_label":"range_20d_high","reward_risk":10.72,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.21,"vwap":8.2078,"ext_from_open_pct":2.5,"max_ext_allowed_pct":4.0,"volume_pace":3.959,"trend":"flat","recent_slope_pct":0.0548,"volatility":"unknown"},"price":8.21,"volume":{"bars":107,"last_bar_volume":815.0,"baseline_avg":1039.95,"bar_rvol":0.783692,"raw_accel":1.084399,"smooth_accel":1.934468,"accel_momentum":0.291673,"rvol_3bar":[1.966322,0.318365,0.783692],"trend_3bar":"MIXED","projected_rvol":0.402737},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":1.0,"sell_vol":332.0,"unclassified_vol":0.0,"imbalance":-0.993994,"bid":8.17,"ask":8.21,"spread_pct":0.4884,"quote_size_imbalance":null,"quote_age_s":26.349185},"context":{"vwap":8.207834,"price_vs_vwap_pct":0.026389,"ema9":8.205089,"ema20":8.200931,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.312354,"dist_to_hod_atr":7.676723,"atr":0.048198,"spread_atr":0.829916,"own_change_pct":-0.107072,"rel_strength_pct":{"SPY":-0.132404,"IWM":-0.110568}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.778985},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b5d81daae380","ts":"2026-09-21T15:18:55.637140+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.20 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.1225,"target":9.09,"target_label":"range_20d_high","reward_risk":10.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2045,"vwap":8.2078,"ext_from_open_pct":2.43,"max_ext_allowed_pct":5.0,"volume_pace":3.956,"trend":"flat","recent_slope_pct":0.0414,"volatility":"unknown"},"price":8.2045,"volume":{"bars":107,"last_bar_volume":815.0,"baseline_avg":1039.95,"bar_rvol":0.783692,"raw_accel":1.084399,"smooth_accel":1.934468,"accel_momentum":0.291673,"rvol_3bar":[1.966322,0.318365,0.783692],"trend_3bar":"MIXED","projected_rvol":0.381612},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":16.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.882353,"bid":8.17,"ask":8.21,"spread_pct":0.4884,"quote_size_imbalance":null,"quote_age_s":1.333602},"context":{"vwap":8.207834,"price_vs_vwap_pct":-0.04062,"ema9":8.205089,"ema20":8.200931,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.376457,"dist_to_hod_atr":7.790836,"atr":0.048198,"spread_atr":0.829916,"own_change_pct":-0.107072,"rel_strength_pct":{"SPY":-0.132404,"IWM":-0.110568}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.691493},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ca5c6e48f534","ts":"2026-09-21T15:18:55.637140+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.866,"target":11.0,"target_label":"premarket_high","reward_risk":0.22,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9758,"vwap":10.9482,"ext_from_open_pct":2.58,"max_ext_allowed_pct":3.0,"volume_pace":0.844,"trend":"flat","recent_slope_pct":0.1926,"volatility":"unknown"},"price":10.9758,"volume":{"bars":108,"last_bar_volume":75756.0,"baseline_avg":197078.05,"bar_rvol":0.384396,"raw_accel":-0.289103,"smooth_accel":0.800569,"accel_momentum":1.072195,"rvol_3bar":[0.609912,0.537482,0.384396],"trend_3bar":"DECELERATING","projected_rvol":0.394571},"flow":{"window_s":30,"trades":200,"trade_rate":6.666667,"buy_vol":22268.0,"sell_vol":19118.0,"unclassified_vol":0.0,"imbalance":0.076113,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":3.270267},"context":{"vwap":10.947995,"price_vs_vwap_pct":0.253969,"ema9":10.973778,"ema20":10.920748,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.475196,"dist_to_hod_atr":5.129268,"atr":0.100248,"spread_atr":0.099752,"own_change_pct":0.638395,"rel_strength_pct":{"SPY":0.613063,"IWM":0.634899}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.029257},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"136727f8c01a","ts":"2026-09-21T15:18:55.637140+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":2.06,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8601,"vwap":8.7342,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.668,"trend":"flat","recent_slope_pct":0.3405,"volatility":"unknown"},"price":8.8601,"volume":{"bars":108,"last_bar_volume":303677.0,"baseline_avg":76027.9,"bar_rvol":3.994284,"raw_accel":1.413276,"smooth_accel":1.475528,"accel_momentum":1.449839,"rvol_3bar":[1.103278,1.769848,3.994284],"trend_3bar":"ACCELERATING","projected_rvol":1.435626},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":45101.0,"sell_vol":8349.0,"unclassified_vol":0.0,"imbalance":0.687596,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":1.114504},"context":{"vwap":8.733255,"price_vs_vwap_pct":1.452434,"ema9":8.790733,"ema20":8.764519,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.838276,"dist_to_hod_atr":1.983152,"atr":0.037768,"spread_atr":0.264773,"own_change_pct":1.082621,"rel_strength_pct":{"SPY":1.057289,"IWM":1.079125}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.746453},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7e087439b42a","ts":"2026-09-21T15:19:00.712088+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.035,"vwap":10.9482,"ext_from_open_pct":3.13,"max_ext_allowed_pct":3.0,"volume_pace":0.843,"trend":"flat","recent_slope_pct":0.1145,"volatility":"unknown"},"price":11.035,"volume":{"bars":109,"last_bar_volume":72487.0,"baseline_avg":199535.65,"bar_rvol":0.363278,"raw_accel":-0.043152,"smooth_accel":0.176938,"accel_momentum":-0.623632,"rvol_3bar":[0.537482,0.384396,0.363278],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":198,"trade_rate":6.6,"buy_vol":21905.0,"sell_vol":18918.0,"unclassified_vol":0.0,"imbalance":0.07317,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":2.645211},"context":{"vwap":10.948176,"price_vs_vwap_pct":0.793044,"ema9":10.974263,"ema20":10.926029,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.959965,"dist_to_hod_atr":4.594876,"atr":0.099023,"spread_atr":0.100986,"own_change_pct":-0.049173,"rel_strength_pct":{"SPY":-0.089445,"IWM":-0.052669}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.026581},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"28d0fd1dd701","ts":"2026-09-21T15:19:00.712088+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.69,"target":9.21,"target_label":"prev_day_high","reward_risk":2.06,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.86,"vwap":8.7344,"ext_from_open_pct":3.99,"max_ext_allowed_pct":3.0,"volume_pace":0.668,"trend":"flat","recent_slope_pct":0.248,"volatility":"unknown"},"price":8.86,"volume":{"bars":109,"last_bar_volume":119160.0,"baseline_avg":89618.05,"bar_rvol":1.329643,"raw_accel":-0.607609,"smooth_accel":1.650172,"accel_momentum":0.174644,"rvol_3bar":[1.769848,3.994284,1.329643],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":98,"trade_rate":3.266667,"buy_vol":47387.0,"sell_vol":17414.0,"unclassified_vol":0.0,"imbalance":0.462539,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.052297},"context":{"vwap":8.734404,"price_vs_vwap_pct":1.43795,"ema9":8.805586,"ema20":8.774089,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.839396,"dist_to_hod_atr":1.845712,"atr":0.040635,"spread_atr":0.246095,"own_change_pct":1.146671,"rel_strength_pct":{"SPY":1.106399,"IWM":1.143175}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.615012},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0fc107bd1c90","ts":"2026-09-21T15:19:11.007131+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.77,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.0355,"vwap":10.9482,"ext_from_open_pct":3.14,"max_ext_allowed_pct":4.0,"volume_pace":0.842,"trend":"flat","recent_slope_pct":0.1154,"volatility":"unknown"},"price":11.0355,"volume":{"bars":109,"last_bar_volume":72487.0,"baseline_avg":199535.65,"bar_rvol":0.363278,"raw_accel":-0.043152,"smooth_accel":0.176938,"accel_momentum":-0.623632,"rvol_3bar":[0.537482,0.384396,0.363278],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":14364.0,"sell_vol":15970.0,"unclassified_vol":0.0,"imbalance":-0.052944,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":0.040258},"context":{"vwap":10.948176,"price_vs_vwap_pct":0.797611,"ema9":10.974263,"ema20":10.926029,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.955614,"dist_to_hod_atr":4.589827,"atr":0.099023,"spread_atr":0.100986,"own_change_pct":-0.049173,"rel_strength_pct":{"SPY":-0.089445,"IWM":-0.052669}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.019233},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a5eaf07af0b4","ts":"2026-09-21T15:19:16.107485+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.6082,"target":13.65,"target_label":"premarket_high","reward_risk":1.66,"pos_in_5d_range_pct":152.2,"room_to_5d_high_atr":-1.56},"price":13.0,"vwap":12.8111,"ext_from_open_pct":-0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.861,"trend":"flat","recent_slope_pct":-0.1434,"volatility":"high"},"price":13.0,"volume":{"bars":109,"last_bar_volume":10432.0,"baseline_avg":23057.85,"bar_rvol":0.452427,"raw_accel":-0.011279,"smooth_accel":-0.066787,"accel_momentum":-0.695138,"rvol_3bar":[1.517948,0.45832,0.452427],"trend_3bar":"DECELERATING","projected_rvol":0.898698},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":966.0,"sell_vol":7114.0,"unclassified_vol":0.0,"imbalance":-0.760891,"bid":12.99,"ask":13.01,"spread_pct":0.153846,"quote_size_imbalance":null,"quote_age_s":1.02931},"context":{"vwap":12.810744,"price_vs_vwap_pct":1.477319,"ema9":13.072251,"ema20":13.012116,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.797101,"dist_to_hod_atr":7.606666,"atr":0.105171,"spread_atr":0.190167,"own_change_pct":-0.890767,"rel_strength_pct":{"SPY":-0.931039,"IWM":-0.894263}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.344248},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"5a704a169688","ts":"2026-09-21T15:19:16.107485+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":13.3766,"target":13.88,"target_label":"ceiling","reward_risk":1.42,"pos_in_5d_range_pct":110.4,"room_to_5d_high_atr":-0.32},"price":13.585,"vwap":13.5758,"ext_from_open_pct":-2.34,"max_ext_allowed_pct":3.0,"volume_pace":0.893,"trend":"flat","recent_slope_pct":0.0516,"volatility":"high"},"price":13.585,"volume":{"bars":109,"last_bar_volume":68971.0,"baseline_avg":117407.35,"bar_rvol":0.58745,"raw_accel":-0.504707,"smooth_accel":-0.368023,"accel_momentum":-0.35136,"rvol_3bar":[1.017089,1.154862,0.58745],"trend_3bar":"MIXED","projected_rvol":1.240301},"flow":{"window_s":30,"trades":221,"trade_rate":7.366667,"buy_vol":25986.0,"sell_vol":26299.0,"unclassified_vol":0.0,"imbalance":-0.005986,"bid":13.58,"ask":13.59,"spread_pct":0.073611,"quote_size_imbalance":null,"quote_age_s":0.157675},"context":{"vwap":13.575779,"price_vs_vwap_pct":0.067926,"ema9":13.543431,"ema20":13.512785,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-2.825465,"dist_to_hod_atr":6.793718,"atr":0.058142,"spread_atr":0.171993,"own_change_pct":0.184706,"rel_strength_pct":{"SPY":0.144435,"IWM":0.18121}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.003517},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8cd3f97bb656","ts":"2026-09-21T15:19:21.215784+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.88,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.03,"vwap":10.9482,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.841,"trend":"flat","recent_slope_pct":0.1054,"volatility":"unknown"},"price":11.03,"volume":{"bars":109,"last_bar_volume":72487.0,"baseline_avg":199535.65,"bar_rvol":0.363278,"raw_accel":-0.043152,"smooth_accel":0.176938,"accel_momentum":-0.623632,"rvol_3bar":[0.537482,0.384396,0.363278],"trend_3bar":"DECELERATING","projected_rvol":0.076295},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":11123.0,"sell_vol":3076.0,"unclassified_vol":0.0,"imbalance":0.56673,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":0.052866},"context":{"vwap":10.948176,"price_vs_vwap_pct":0.747374,"ema9":10.974263,"ema20":10.926029,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.003481,"dist_to_hod_atr":4.645369,"atr":0.099023,"spread_atr":0.100986,"own_change_pct":-0.049173,"rel_strength_pct":{"SPY":-0.089445,"IWM":-0.052669}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.205881},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"059f57a9b707","ts":"2026-09-21T15:19:26.297276+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.57 below VWAP $13.58","plan":{"state":"PASS","setup":"","stop":13.3616,"target":13.88,"target_label":"ceiling","reward_risk":1.49,"pos_in_5d_range_pct":109.8,"room_to_5d_high_atr":-0.3},"price":13.57,"vwap":13.5757,"ext_from_open_pct":-2.44,"max_ext_allowed_pct":3.0,"volume_pace":0.892,"trend":"flat","recent_slope_pct":0.0295,"volatility":"high"},"price":13.57,"volume":{"bars":109,"last_bar_volume":68971.0,"baseline_avg":117407.35,"bar_rvol":0.58745,"raw_accel":-0.504707,"smooth_accel":-0.368023,"accel_momentum":-0.35136,"rvol_3bar":[1.017089,1.154862,0.58745],"trend_3bar":"MIXED","projected_rvol":1.079283},"flow":{"window_s":30,"trades":247,"trade_rate":8.233333,"buy_vol":28094.0,"sell_vol":28345.0,"unclassified_vol":0.0,"imbalance":-0.004447,"bid":13.56,"ask":13.57,"spread_pct":0.073719,"quote_size_imbalance":null,"quote_age_s":0.187304},"context":{"vwap":13.575779,"price_vs_vwap_pct":-0.042565,"ema9":13.543431,"ema20":13.512785,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-2.932761,"dist_to_hod_atr":7.051707,"atr":0.058142,"spread_atr":0.171993,"own_change_pct":0.184706,"rel_strength_pct":{"SPY":0.144435,"IWM":0.18121}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.002613},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"241804751441","ts":"2026-09-21T15:19:26.297276+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.8718,"target":11.0,"target_label":"premarket_high","reward_risk":0.17,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9816,"vwap":10.9482,"ext_from_open_pct":2.63,"max_ext_allowed_pct":3.0,"volume_pace":0.84,"trend":"flat","recent_slope_pct":0.0175,"volatility":"unknown"},"price":10.9816,"volume":{"bars":109,"last_bar_volume":72487.0,"baseline_avg":199535.65,"bar_rvol":0.363278,"raw_accel":-0.043152,"smooth_accel":0.176938,"accel_momentum":-0.623632,"rvol_3bar":[0.537482,0.384396,0.363278],"trend_3bar":"DECELERATING","projected_rvol":0.066503},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":4068.0,"sell_vol":2027.0,"unclassified_vol":0.0,"imbalance":0.334865,"bid":11.03,"ask":11.04,"spread_pct":0.090621,"quote_size_imbalance":null,"quote_age_s":2.642412},"context":{"vwap":10.948176,"price_vs_vwap_pct":0.305291,"ema9":10.974263,"ema20":10.926029,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.424717,"dist_to_hod_atr":5.134143,"atr":0.099023,"spread_atr":0.100986,"own_change_pct":-0.049173,"rel_strength_pct":{"SPY":-0.089445,"IWM":-0.052669}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.121649},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"5b70f870a87d","ts":"2026-09-21T15:19:31.389696+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9196,"target":12.5,"target_label":"range_20d_high","reward_risk":24.5,"pos_in_5d_range_pct":152.7,"room_to_5d_high_atr":-0.69},"price":9.06,"vwap":8.9003,"ext_from_open_pct":3.78,"max_ext_allowed_pct":4.0,"volume_pace":1.038,"trend":"flat","recent_slope_pct":0.0994,"volatility":"high"},"price":9.06,"volume":{"bars":109,"last_bar_volume":5628.0,"baseline_avg":10405.15,"bar_rvol":0.540886,"raw_accel":-0.847376,"smooth_accel":-0.255702,"accel_momentum":-12.935626,"rvol_3bar":[1.963752,4.272167,0.540886],"trend_3bar":"MIXED","projected_rvol":0.913003},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2863.0,"sell_vol":2106.0,"unclassified_vol":0.0,"imbalance":0.152345,"bid":9.05,"ask":9.08,"spread_pct":0.330943,"quote_size_imbalance":null,"quote_age_s":0.034335},"context":{"vwap":8.899659,"price_vs_vwap_pct":1.801654,"ema9":9.023829,"ema20":8.986713,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.43956,"dist_to_hod_atr":1.054892,"atr":0.037919,"spread_atr":0.791169,"own_change_pct":1.002227,"rel_strength_pct":{"SPY":0.961955,"IWM":0.998731}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.082401},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"03132ff4fca5","ts":"2026-09-21T15:20:02.560116+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.04,"vwap":10.9483,"ext_from_open_pct":3.18,"max_ext_allowed_pct":3.0,"volume_pace":0.837,"trend":"flat","recent_slope_pct":0.0317,"volatility":"unknown"},"price":11.04,"volume":{"bars":110,"last_bar_volume":37490.0,"baseline_avg":199458.2,"bar_rvol":0.187959,"raw_accel":-0.482804,"smooth_accel":-0.274755,"accel_momentum":-0.451693,"rvol_3bar":[0.384396,0.363278,0.187959],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":18824.0,"sell_vol":12876.0,"unclassified_vol":0.0,"imbalance":0.187634,"bid":11.04,"ask":11.05,"spread_pct":0.090539,"quote_size_imbalance":null,"quote_age_s":0.593421},"context":{"vwap":10.948335,"price_vs_vwap_pct":0.83725,"ema9":10.98941,"ema20":10.937836,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.916449,"dist_to_hod_atr":4.611656,"atr":0.097579,"spread_atr":0.102481,"own_change_pct":1.23683,"rel_strength_pct":{"SPY":1.191364,"IWM":1.229837}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.035268},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"6d12b0abea18","ts":"2026-09-21T15:20:02.560116+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"held 1416.5s, plan says PASS; stop 6.27, target 7.78 (range_20d_high), R:R 11.04; target 1.38 away > ~0.14 reachable in 275 min","plan":{"state":"PASS","setup":"","stop":6.27,"target":7.775,"target_label":"range_20d_high","reward_risk":11.04,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.395,"vwap":6.2851,"ext_from_open_pct":1.67,"max_ext_allowed_pct":4.0,"volume_pace":1.309,"trend":"flat","recent_slope_pct":0.0761,"volatility":"unknown"},"price":6.395,"volume":{"bars":110,"last_bar_volume":123985.0,"baseline_avg":55541.05,"bar_rvol":2.232313,"raw_accel":1.373146,"smooth_accel":0.389205,"accel_momentum":-1.087153,"rvol_3bar":[2.56981,0.934387,2.232313],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":209,"trade_rate":6.966667,"buy_vol":67652.0,"sell_vol":22652.0,"unclassified_vol":0.0,"imbalance":0.498317,"bid":6.39,"ask":6.4,"spread_pct":0.156372,"quote_size_imbalance":null,"quote_age_s":9.528799},"context":{"vwap":6.285081,"price_vs_vwap_pct":1.74888,"ema9":6.361154,"ema20":6.332929,"ema_stack":true,"ema_warm":true,"hod":6.42,"dist_to_hod_pct":-0.389408,"dist_to_hod_atr":0.773369,"atr":0.032326,"spread_atr":0.309348,"own_change_pct":0.97869,"rel_strength_pct":{"SPY":0.933223,"IWM":0.971697}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.112399},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0ba390f029d0","ts":"2026-09-21T15:20:08.063301+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.9296,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-0.71},"price":9.07,"vwap":8.9006,"ext_from_open_pct":3.89,"max_ext_allowed_pct":3.0,"volume_pace":1.034,"trend":"flat","recent_slope_pct":0.0772,"volatility":"high"},"price":9.07,"volume":{"bars":110,"last_bar_volume":7084.0,"baseline_avg":10645.55,"bar_rvol":0.665442,"raw_accel":0.258706,"smooth_accel":-0.46375,"accel_momentum":-0.208048,"rvol_3bar":[4.272167,0.540886,0.665442],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":2005.0,"sell_vol":132.0,"unclassified_vol":0.0,"imbalance":0.876462,"bid":9.06,"ask":9.08,"spread_pct":0.220507,"quote_size_imbalance":null,"quote_age_s":1.929042},"context":{"vwap":8.900547,"price_vs_vwap_pct":1.903848,"ema9":9.033063,"ema20":8.994645,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.32967,"dist_to_hod_atr":0.803149,"atr":0.037353,"spread_atr":0.535433,"own_change_pct":1.114827,"rel_strength_pct":{"SPY":1.069361,"IWM":1.107834}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.583235},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b607cf13ba15","ts":"2026-09-21T15:20:13.279884+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.34,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.06,"vwap":10.9486,"ext_from_open_pct":3.36,"max_ext_allowed_pct":4.0,"volume_pace":0.838,"trend":"flat","recent_slope_pct":0.068,"volatility":"unknown"},"price":11.06,"volume":{"bars":110,"last_bar_volume":37490.0,"baseline_avg":199458.2,"bar_rvol":0.187959,"raw_accel":-0.482804,"smooth_accel":-0.274755,"accel_momentum":-0.451693,"rvol_3bar":[0.384396,0.363278,0.187959],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":182,"trade_rate":6.066667,"buy_vol":35568.0,"sell_vol":24840.0,"unclassified_vol":0.0,"imbalance":0.177592,"bid":11.04,"ask":11.05,"spread_pct":0.090539,"quote_size_imbalance":null,"quote_age_s":0.274618},"context":{"vwap":10.948335,"price_vs_vwap_pct":1.019926,"ema9":10.98941,"ema20":10.937836,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.742385,"dist_to_hod_atr":4.406694,"atr":0.097579,"spread_atr":0.102481,"own_change_pct":1.23683,"rel_strength_pct":{"SPY":1.191364,"IWM":1.229837}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.03338},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"cdaa77229a9f","ts":"2026-09-21T15:20:18.455024+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.16 below VWAP $9.18","plan":{"state":"PASS","setup":"","stop":9.007,"target":9.4,"target_label":"premarket_high","reward_risk":1.57,"pos_in_5d_range_pct":132.7,"room_to_5d_high_atr":-0.87},"price":9.16,"vwap":9.1828,"ext_from_open_pct":-0.97,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":-0.0707,"volatility":"high"},"price":9.16,"volume":{"bars":110,"last_bar_volume":1523.0,"baseline_avg":4711.2,"bar_rvol":0.323272,"raw_accel":-0.62944,"smooth_accel":2.716579,"accel_momentum":-3.26327,"rvol_3bar":[15.252816,0.90886,0.323272],"trend_3bar":"DECELERATING","projected_rvol":0.370578},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":914.0,"sell_vol":1103.0,"unclassified_vol":0.0,"imbalance":-0.093704,"bid":9.15,"ask":9.18,"spread_pct":0.327332,"quote_size_imbalance":null,"quote_age_s":0.017957},"context":{"vwap":9.182774,"price_vs_vwap_pct":-0.248013,"ema9":9.182429,"ema20":9.163831,"ema_stack":false,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-3.375527,"dist_to_hod_atr":6.659426,"atr":0.048052,"spread_atr":0.624321,"own_change_pct":0.272926,"rel_strength_pct":{"SPY":0.227459,"IWM":0.265933}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.030292},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"d62628ca0404","ts":"2026-09-21T15:20:18.455024+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.016,"target":8.28,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":123.9,"room_to_5d_high_atr":-0.75},"price":8.17,"vwap":8.0978,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":3.0,"volume_pace":0.758,"trend":"flat","recent_slope_pct":-0.055,"volatility":"high"},"price":8.17,"volume":{"bars":110,"last_bar_volume":3238.0,"baseline_avg":6514.7,"bar_rvol":0.49703,"raw_accel":0.988119,"smooth_accel":-0.653399,"accel_momentum":0.057679,"rvol_3bar":[0.816038,0.225375,0.49703],"trend_3bar":"MIXED","projected_rvol":0.483577},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":675.0,"sell_vol":830.0,"unclassified_vol":0.0,"imbalance":-0.10299,"bid":8.16,"ask":8.17,"spread_pct":0.122474,"quote_size_imbalance":null,"quote_age_s":0.97738},"context":{"vwap":8.097735,"price_vs_vwap_pct":0.892409,"ema9":8.190706,"ema20":8.186108,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.492004,"dist_to_hod_atr":6.133087,"atr":0.034045,"spread_atr":0.29373,"own_change_pct":-0.304692,"rel_strength_pct":{"SPY":-0.350159,"IWM":-0.311685}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.051189},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9c109ab98f84","ts":"2026-09-21T15:20:23.567955+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.0317,"target":9.4,"target_label":"premarket_high","reward_risk":1.41,"pos_in_5d_range_pct":134.2,"room_to_5d_high_atr":-0.91},"price":9.1847,"vwap":9.1828,"ext_from_open_pct":-0.71,"max_ext_allowed_pct":3.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":-0.017,"volatility":"high"},"price":9.1847,"volume":{"bars":110,"last_bar_volume":1523.0,"baseline_avg":4711.2,"bar_rvol":0.323272,"raw_accel":-0.62944,"smooth_accel":2.716579,"accel_momentum":-3.26327,"rvol_3bar":[15.252816,0.90886,0.323272],"trend_3bar":"DECELERATING","projected_rvol":0.304233},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":940.0,"sell_vol":1103.0,"unclassified_vol":0.0,"imbalance":-0.079785,"bid":9.15,"ask":9.18,"spread_pct":0.327332,"quote_size_imbalance":null,"quote_age_s":4.415756},"context":{"vwap":9.182774,"price_vs_vwap_pct":0.020969,"ema9":9.182429,"ema20":9.163831,"ema_stack":true,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-3.114979,"dist_to_hod_atr":6.145402,"atr":0.048052,"spread_atr":0.624321,"own_change_pct":0.272926,"rel_strength_pct":{"SPY":0.227459,"IWM":0.265933}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.025792},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"7c8eec5028ce","ts":"2026-09-21T15:20:23.567955+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.14,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.075,"vwap":10.9492,"ext_from_open_pct":3.5,"max_ext_allowed_pct":3.0,"volume_pace":0.841,"trend":"flat","recent_slope_pct":0.0952,"volatility":"unknown"},"price":11.075,"volume":{"bars":110,"last_bar_volume":37490.0,"baseline_avg":199458.2,"bar_rvol":0.187959,"raw_accel":-0.482804,"smooth_accel":-0.274755,"accel_momentum":-0.451693,"rvol_3bar":[0.384396,0.363278,0.187959],"trend_3bar":"DECELERATING","projected_rvol":2.09574},"flow":{"window_s":30,"trades":395,"trade_rate":13.166667,"buy_vol":112688.0,"sell_vol":52922.0,"unclassified_vol":0.0,"imbalance":0.360884,"bid":11.07,"ask":11.08,"spread_pct":0.090293,"quote_size_imbalance":null,"quote_age_s":0.075202},"context":{"vwap":10.948335,"price_vs_vwap_pct":1.156934,"ema9":10.98941,"ema20":10.937836,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.611836,"dist_to_hod_atr":4.252972,"atr":0.097579,"spread_atr":0.102481,"own_change_pct":1.23683,"rel_strength_pct":{"SPY":1.191364,"IWM":1.229837}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.067831},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"a40f7bef81fa","ts":"2026-09-21T15:20:38.855162+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.18 below VWAP $9.18","plan":{"state":"PASS","setup":"","stop":9.027,"target":9.4,"target_label":"premarket_high","reward_risk":1.44,"pos_in_5d_range_pct":133.9,"room_to_5d_high_atr":-0.91},"price":9.18,"vwap":9.1828,"ext_from_open_pct":-0.76,"max_ext_allowed_pct":4.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":-0.0272,"volatility":"high"},"price":9.18,"volume":{"bars":110,"last_bar_volume":1523.0,"baseline_avg":4711.2,"bar_rvol":0.323272,"raw_accel":-0.62944,"smooth_accel":2.716579,"accel_momentum":-3.26327,"rvol_3bar":[15.252816,0.90886,0.323272],"trend_3bar":"DECELERATING","projected_rvol":0.253367},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":136.0,"sell_vol":623.0,"unclassified_vol":0.0,"imbalance":-0.641634,"bid":9.15,"ask":9.18,"spread_pct":0.327332,"quote_size_imbalance":null,"quote_age_s":0.371817},"context":{"vwap":9.182774,"price_vs_vwap_pct":-0.030214,"ema9":9.182429,"ema20":9.163831,"ema_stack":false,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-3.164557,"dist_to_hod_atr":6.243212,"atr":0.048052,"spread_atr":0.624321,"own_change_pct":0.272926,"rel_strength_pct":{"SPY":0.227459,"IWM":0.265933}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.207422},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"83e01fa7357b","ts":"2026-09-21T15:20:43.969939+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9296,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-0.71},"price":9.07,"vwap":8.9008,"ext_from_open_pct":3.89,"max_ext_allowed_pct":4.0,"volume_pace":1.03,"trend":"flat","recent_slope_pct":0.0772,"volatility":"high"},"price":9.07,"volume":{"bars":110,"last_bar_volume":7084.0,"baseline_avg":10645.55,"bar_rvol":0.665442,"raw_accel":0.258706,"smooth_accel":-0.46375,"accel_momentum":-0.208048,"rvol_3bar":[4.272167,0.540886,0.665442],"trend_3bar":"MIXED","projected_rvol":0.255339},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1465.0,"sell_vol":126.0,"unclassified_vol":0.0,"imbalance":0.841609,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":0.13628},"context":{"vwap":8.900547,"price_vs_vwap_pct":1.903848,"ema9":9.033063,"ema20":8.994645,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.32967,"dist_to_hod_atr":0.803149,"atr":0.037353,"spread_atr":0.267716,"own_change_pct":1.114827,"rel_strength_pct":{"SPY":1.069361,"IWM":1.107834}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.560042},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"19da7662773e","ts":"2026-09-21T15:21:04.580172+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.5984,"target":13.65,"target_label":"premarket_high","reward_risk":1.68,"pos_in_5d_range_pct":152.0,"room_to_5d_high_atr":-1.55},"price":12.9902,"vwap":12.8121,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.852,"trend":"flat","recent_slope_pct":-0.1035,"volatility":"high"},"price":12.9902,"volume":{"bars":111,"last_bar_volume":10054.0,"baseline_avg":21762.4,"bar_rvol":0.461989,"raw_accel":-0.301466,"smooth_accel":-0.531284,"accel_momentum":0.035929,"rvol_3bar":[0.452427,0.666611,0.461989],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":821.0,"sell_vol":1647.0,"unclassified_vol":0.0,"imbalance":-0.334684,"bid":12.97,"ask":13.0,"spread_pct":0.231036,"quote_size_imbalance":null,"quote_age_s":1.939006},"context":{"vwap":12.811993,"price_vs_vwap_pct":1.390942,"ema9":13.042921,"ema20":13.008068,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.868116,"dist_to_hod_atr":8.247857,"atr":0.098183,"spread_atr":0.305552,"own_change_pct":-0.448575,"rel_strength_pct":{"SPY":-0.45377,"IWM":-0.445078}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.15462},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6c6b19a4ef72","ts":"2026-09-21T15:21:04.580172+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9172,"target":12.5,"target_label":"range_20d_high","reward_risk":24.52,"pos_in_5d_range_pct":152.4,"room_to_5d_high_atr":-0.69},"price":9.0576,"vwap":8.9008,"ext_from_open_pct":3.75,"max_ext_allowed_pct":3.0,"volume_pace":1.027,"trend":"flat","recent_slope_pct":-0.099,"volatility":"high"},"price":9.0576,"volume":{"bars":111,"last_bar_volume":2079.0,"baseline_avg":10187.5,"bar_rvol":0.204074,"raw_accel":-0.706522,"smooth_accel":-0.879207,"accel_momentum":-0.415456,"rvol_3bar":[0.540886,0.665442,0.204074],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":490.0,"sell_vol":213.0,"unclassified_vol":0.0,"imbalance":0.394026,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":3.436189},"context":{"vwap":8.900801,"price_vs_vwap_pct":1.761626,"ema9":9.03945,"ema20":9.001346,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.465934,"dist_to_hod_atr":1.141783,"atr":0.037135,"spread_atr":0.269288,"own_change_pct":0.276549,"rel_strength_pct":{"SPY":0.271354,"IWM":0.280046}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.08041},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1cd9f1240021","ts":"2026-09-21T15:21:04.580172+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.058,"vwap":10.9501,"ext_from_open_pct":3.35,"max_ext_allowed_pct":4.0,"volume_pace":0.844,"trend":"flat","recent_slope_pct":0.1312,"volatility":"unknown"},"price":11.058,"volume":{"bars":111,"last_bar_volume":208911.0,"baseline_avg":180800.05,"bar_rvol":1.155481,"raw_accel":3.621924,"smooth_accel":0.054517,"accel_momentum":0.329272,"rvol_3bar":[0.363278,0.187959,1.155481],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":238,"trade_rate":7.933333,"buy_vol":126023.0,"sell_vol":18492.0,"unclassified_vol":0.0,"imbalance":0.744082,"bid":11.07,"ask":11.08,"spread_pct":0.090293,"quote_size_imbalance":null,"quote_age_s":0.241148},"context":{"vwap":10.949457,"price_vs_vwap_pct":0.991306,"ema9":11.006528,"ema20":10.950899,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.759791,"dist_to_hod_atr":4.399426,"atr":0.098195,"spread_atr":0.101839,"own_change_pct":1.186832,"rel_strength_pct":{"SPY":1.181637,"IWM":1.190329}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.859772},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4f798aba7cb8","ts":"2026-09-21T15:21:04.580172+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7316,"target":5.87,"target_label":"ceiling","reward_risk":1.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7895,"vwap":5.7563,"ext_from_open_pct":4.5,"max_ext_allowed_pct":4.0,"volume_pace":1.454,"trend":"flat","recent_slope_pct":-0.0259,"volatility":"unknown"},"price":5.7895,"volume":{"bars":111,"last_bar_volume":15733.0,"baseline_avg":43459.25,"bar_rvol":0.362017,"raw_accel":-0.207445,"smooth_accel":0.297157,"accel_momentum":0.347798,"rvol_3bar":[1.364123,0.45144,0.362017],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1502.0,"sell_vol":6607.0,"unclassified_vol":0.0,"imbalance":-0.629547,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":0.813205},"context":{"vwap":5.75629,"price_vs_vwap_pct":0.576927,"ema9":5.787047,"ema20":5.786712,"ema_stack":true,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.37138,"dist_to_hod_atr":4.126029,"atr":0.01951,"spread_atr":0.51255,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.005195,"IWM":0.003497}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.227907},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"519b32a56a90","ts":"2026-09-21T15:21:09.732974+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.17 below VWAP $9.17","plan":{"state":"PASS","setup":"","stop":9.0547,"target":9.26,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":306.6,"room_to_5d_high_atr":-4.48},"price":9.1716,"vwap":9.1743,"ext_from_open_pct":5.54,"max_ext_allowed_pct":4.0,"volume_pace":10.746,"trend":"flat","recent_slope_pct":-0.2247,"volatility":"medium"},"price":9.1716,"volume":{"bars":111,"last_bar_volume":44764.0,"baseline_avg":123462.45,"bar_rvol":0.362572,"raw_accel":0.095331,"smooth_accel":-0.185649,"accel_momentum":0.015745,"rvol_3bar":[0.646933,0.317683,0.362572],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":15822.0,"sell_vol":7671.0,"unclassified_vol":0.0,"imbalance":0.346954,"bid":9.17,"ask":9.18,"spread_pct":0.108992,"quote_size_imbalance":null,"quote_age_s":0.399969},"context":{"vwap":9.174283,"price_vs_vwap_pct":-0.029241,"ema9":9.229293,"ema20":9.260154,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.858921,"dist_to_hod_atr":4.055063,"atr":0.11551,"spread_atr":0.086573,"own_change_pct":-0.271444,"rel_strength_pct":{"SPY":-0.276639,"IWM":-0.267947}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.125796},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f324d7cf974c","ts":"2026-09-21T15:21:14.924276+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.0581,"target":9.26,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":306.9,"room_to_5d_high_atr":-4.49},"price":9.175,"vwap":9.1743,"ext_from_open_pct":5.58,"max_ext_allowed_pct":4.0,"volume_pace":10.741,"trend":"flat","recent_slope_pct":-0.2173,"volatility":"medium"},"price":9.175,"volume":{"bars":111,"last_bar_volume":44764.0,"baseline_avg":123462.45,"bar_rvol":0.362572,"raw_accel":0.095331,"smooth_accel":-0.185649,"accel_momentum":0.015745,"rvol_3bar":[0.646933,0.317683,0.362572],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":179,"trade_rate":5.966667,"buy_vol":14789.0,"sell_vol":14239.0,"unclassified_vol":0.0,"imbalance":0.018947,"bid":9.17,"ask":9.18,"spread_pct":0.108992,"quote_size_imbalance":null,"quote_age_s":0.325177},"context":{"vwap":9.174283,"price_vs_vwap_pct":0.007819,"ema9":9.229293,"ema20":9.260154,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.823651,"dist_to_hod_atr":4.025629,"atr":0.11551,"spread_atr":0.086573,"own_change_pct":-0.271444,"rel_strength_pct":{"SPY":-0.276639,"IWM":-0.267947}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.00687},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0fdfc6a91b6b","ts":"2026-09-21T15:21:20.114410+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.5591,"target":13.65,"target_label":"premarket_high","reward_risk":1.78,"pos_in_5d_range_pct":151.1,"room_to_5d_high_atr":-1.53},"price":12.9509,"vwap":12.8121,"ext_from_open_pct":-0.45,"max_ext_allowed_pct":3.0,"volume_pace":0.85,"trend":"flat","recent_slope_pct":-0.164,"volatility":"high"},"price":12.9509,"volume":{"bars":111,"last_bar_volume":10054.0,"baseline_avg":21762.4,"bar_rvol":0.461989,"raw_accel":-0.301466,"smooth_accel":-0.531284,"accel_momentum":0.035929,"rvol_3bar":[0.452427,0.666611,0.461989],"trend_3bar":"MIXED","projected_rvol":0.379816},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":1092.0,"sell_vol":1680.0,"unclassified_vol":0.0,"imbalance":-0.212121,"bid":12.95,"ask":12.99,"spread_pct":0.308404,"quote_size_imbalance":null,"quote_age_s":3.162022},"context":{"vwap":12.811993,"price_vs_vwap_pct":1.084198,"ema9":13.042921,"ema20":13.008068,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.152899,"dist_to_hod_atr":8.648129,"atr":0.098183,"spread_atr":0.407402,"own_change_pct":-0.448575,"rel_strength_pct":{"SPY":-0.45377,"IWM":-0.445078}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.097998},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ce1d2df220a6","ts":"2026-09-21T15:21:20.114410+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.15 below VWAP $9.17","plan":{"state":"PASS","setup":"","stop":9.0381,"target":9.26,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":304.9,"room_to_5d_high_atr":-4.45},"price":9.155,"vwap":9.1743,"ext_from_open_pct":5.35,"max_ext_allowed_pct":4.0,"volume_pace":10.74,"trend":"flat","recent_slope_pct":-0.2609,"volatility":"medium"},"price":9.155,"volume":{"bars":111,"last_bar_volume":44764.0,"baseline_avg":123462.45,"bar_rvol":0.362572,"raw_accel":0.095331,"smooth_accel":-0.185649,"accel_momentum":0.015745,"rvol_3bar":[0.646933,0.317683,0.362572],"trend_3bar":"MIXED","projected_rvol":0.9924},"flow":{"window_s":30,"trades":265,"trade_rate":8.833333,"buy_vol":18782.0,"sell_vol":29446.0,"unclassified_vol":0.0,"imbalance":-0.221116,"bid":9.15,"ask":9.16,"spread_pct":0.10923,"quote_size_imbalance":null,"quote_age_s":0.347868},"context":{"vwap":9.174283,"price_vs_vwap_pct":-0.210182,"ema9":9.229293,"ema20":9.260154,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-5.03112,"dist_to_hod_atr":4.198774,"atr":0.11551,"spread_atr":0.086573,"own_change_pct":-0.271444,"rel_strength_pct":{"SPY":-0.276639,"IWM":-0.267947}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.080171},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0e7e6b485e45","ts":"2026-09-21T15:21:20.114410+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.776,"target":11.03,"target_label":"ceiling","reward_risk":0.97,"pos_in_5d_range_pct":103.7,"room_to_5d_high_atr":-0.09},"price":10.905,"vwap":10.8108,"ext_from_open_pct":-0.68,"max_ext_allowed_pct":3.0,"volume_pace":0.758,"trend":"flat","recent_slope_pct":-0.0728,"volatility":"medium"},"price":10.905,"volume":{"bars":111,"last_bar_volume":171596.0,"baseline_avg":194329.3,"bar_rvol":0.883017,"raw_accel":-0.293739,"smooth_accel":0.59808,"accel_momentum":-0.412678,"rvol_3bar":[0.33892,1.288722,0.883017],"trend_3bar":"MIXED","projected_rvol":2.168113},"flow":{"window_s":30,"trades":231,"trade_rate":7.7,"buy_vol":33313.0,"sell_vol":123810.0,"unclassified_vol":0.0,"imbalance":-0.575963,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.347439},"context":{"vwap":10.810363,"price_vs_vwap_pct":0.875432,"ema9":10.92591,"ema20":10.920264,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.133273,"dist_to_hod_atr":3.808688,"atr":0.03282,"spread_atr":0.304695,"own_change_pct":-0.091533,"rel_strength_pct":{"SPY":-0.096728,"IWM":-0.088036}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.508585},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fcfd017134fc","ts":"2026-09-21T15:21:30.508750+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.0606,"target":9.26,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":307.1,"room_to_5d_high_atr":-4.5},"price":9.1775,"vwap":9.1743,"ext_from_open_pct":5.61,"max_ext_allowed_pct":4.0,"volume_pace":10.737,"trend":"flat","recent_slope_pct":-0.2119,"volatility":"medium"},"price":9.1775,"volume":{"bars":111,"last_bar_volume":44764.0,"baseline_avg":123462.45,"bar_rvol":0.362572,"raw_accel":0.095331,"smooth_accel":-0.185649,"accel_momentum":0.015745,"rvol_3bar":[0.646933,0.317683,0.362572],"trend_3bar":"MIXED","projected_rvol":1.294799},"flow":{"window_s":30,"trades":301,"trade_rate":10.033333,"buy_vol":39533.0,"sell_vol":41182.0,"unclassified_vol":0.0,"imbalance":-0.02043,"bid":9.17,"ask":9.18,"spread_pct":0.108992,"quote_size_imbalance":null,"quote_age_s":1.852591},"context":{"vwap":9.174283,"price_vs_vwap_pct":0.035069,"ema9":9.229293,"ema20":9.260154,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.797718,"dist_to_hod_atr":4.003985,"atr":0.11551,"spread_atr":0.086573,"own_change_pct":-0.271444,"rel_strength_pct":{"SPY":-0.276639,"IWM":-0.267947}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.007407},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a24c8efa5655","ts":"2026-09-21T15:21:30.508750+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.03,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.085,"vwap":10.9507,"ext_from_open_pct":3.6,"max_ext_allowed_pct":3.0,"volume_pace":0.845,"trend":"flat","recent_slope_pct":0.18,"volatility":"unknown"},"price":11.085,"volume":{"bars":111,"last_bar_volume":208911.0,"baseline_avg":180800.05,"bar_rvol":1.155481,"raw_accel":3.621924,"smooth_accel":0.054517,"accel_momentum":0.329272,"rvol_3bar":[0.363278,0.187959,1.155481],"trend_3bar":"MIXED","projected_rvol":2.385475},"flow":{"window_s":30,"trades":389,"trade_rate":12.966667,"buy_vol":192454.0,"sell_vol":25294.0,"unclassified_vol":0.0,"imbalance":0.767676,"bid":11.08,"ask":11.09,"spread_pct":0.090212,"quote_size_imbalance":null,"quote_age_s":0.889479},"context":{"vwap":10.949457,"price_vs_vwap_pct":1.237894,"ema9":11.006528,"ema20":10.950899,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.524804,"dist_to_hod_atr":4.124462,"atr":0.098195,"spread_atr":0.101839,"own_change_pct":1.186832,"rel_strength_pct":{"SPY":1.181637,"IWM":1.190329}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.887035},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ba7be52ed873","ts":"2026-09-21T15:21:40.829788+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.08,"vwap":10.9508,"ext_from_open_pct":3.55,"max_ext_allowed_pct":4.0,"volume_pace":0.844,"trend":"flat","recent_slope_pct":0.171,"volatility":"unknown"},"price":11.08,"volume":{"bars":111,"last_bar_volume":208911.0,"baseline_avg":180800.05,"bar_rvol":1.155481,"raw_accel":3.621924,"smooth_accel":0.054517,"accel_momentum":0.329272,"rvol_3bar":[0.363278,0.187959,1.155481],"trend_3bar":"MIXED","projected_rvol":1.86526},"flow":{"window_s":30,"trades":120,"trade_rate":4.0,"buy_vol":25748.0,"sell_vol":7364.0,"unclassified_vol":0.0,"imbalance":0.555207,"bid":11.08,"ask":11.09,"spread_pct":0.090212,"quote_size_imbalance":null,"quote_age_s":0.161579},"context":{"vwap":10.949457,"price_vs_vwap_pct":1.192229,"ema9":11.006528,"ema20":10.950899,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.56832,"dist_to_hod_atr":4.175381,"atr":0.098195,"spread_atr":0.101839,"own_change_pct":1.186832,"rel_strength_pct":{"SPY":1.181637,"IWM":1.190329}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.641531},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ed067d78514f","ts":"2026-09-21T15:22:01.386235+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.4789,"target":13.65,"target_label":"premarket_high","reward_risk":1.99,"pos_in_5d_range_pct":149.4,"room_to_5d_high_atr":-1.48},"price":12.8707,"vwap":12.8127,"ext_from_open_pct":-1.07,"max_ext_allowed_pct":3.0,"volume_pace":0.85,"trend":"flat","recent_slope_pct":-0.3293,"volatility":"high"},"price":12.8707,"volume":{"bars":112,"last_bar_volume":22812.0,"baseline_avg":21906.05,"bar_rvol":1.041356,"raw_accel":1.268948,"smooth_accel":-0.134546,"accel_momentum":0.396739,"rvol_3bar":[0.666611,0.461989,1.041356],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":1380.0,"sell_vol":7738.0,"unclassified_vol":0.0,"imbalance":-0.697302,"bid":12.87,"ask":12.9,"spread_pct":0.232829,"quote_size_imbalance":null,"quote_age_s":0.159845},"context":{"vwap":12.812683,"price_vs_vwap_pct":0.45281,"ema9":13.011336,"ema20":12.996347,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.734058,"dist_to_hod_atr":9.185529,"atr":0.10117,"spread_atr":0.296531,"own_change_pct":-1.640471,"rel_strength_pct":{"SPY":-1.648263,"IWM":-1.58455}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.72614},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"210d43b5c52a","ts":"2026-09-21T15:22:01.386235+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.0377,"target":9.4,"target_label":"premarket_high","reward_risk":1.37,"pos_in_5d_range_pct":134.6,"room_to_5d_high_atr":-0.92},"price":9.1907,"vwap":9.1828,"ext_from_open_pct":-0.64,"max_ext_allowed_pct":4.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":-0.0435,"volatility":"high"},"price":9.1907,"volume":{"bars":112,"last_bar_volume":5653.0,"baseline_avg":4785.0,"bar_rvol":1.1814,"raw_accel":3.725601,"smooth_accel":-0.841903,"accel_momentum":0.027256,"rvol_3bar":[0.323272,0.183252,1.1814],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":336.0,"sell_vol":11.0,"unclassified_vol":0.0,"imbalance":0.936599,"bid":9.16,"ask":9.2,"spread_pct":0.43573,"quote_size_imbalance":null,"quote_age_s":1.388547},"context":{"vwap":9.182836,"price_vs_vwap_pct":0.085636,"ema9":9.182155,"ema20":9.1669,"ema_stack":true,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-3.051688,"dist_to_hod_atr":6.063615,"atr":0.047711,"spread_atr":0.838384,"own_change_pct":0.272628,"rel_strength_pct":{"SPY":0.264836,"IWM":0.328549}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.106499},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5b5f434848d5","ts":"2026-09-21T15:22:01.386235+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.786,"target":11.03,"target_label":"ceiling","reward_risk":0.89,"pos_in_5d_range_pct":104.5,"room_to_5d_high_atr":-0.11},"price":10.915,"vwap":10.811,"ext_from_open_pct":-0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.755,"trend":"flat","recent_slope_pct":-0.0375,"volatility":"medium"},"price":10.915,"volume":{"bars":112,"last_bar_volume":218709.0,"baseline_avg":182888.6,"bar_rvol":1.195859,"raw_accel":0.274558,"smooth_accel":1.133462,"accel_momentum":0.535381,"rvol_3bar":[1.288722,0.883017,1.195859],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":133,"trade_rate":4.433333,"buy_vol":33176.0,"sell_vol":40991.0,"unclassified_vol":0.0,"imbalance":-0.10537,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":0.049322},"context":{"vwap":10.811002,"price_vs_vwap_pct":0.961964,"ema9":10.923728,"ema20":10.919763,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.042611,"dist_to_hod_atr":3.574155,"atr":0.032175,"spread_atr":0.310796,"own_change_pct":-0.090619,"rel_strength_pct":{"SPY":-0.098411,"IWM":-0.034698}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.126008},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bd703bf715af","ts":"2026-09-21T15:22:06.604242+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 594.0s, plan says WATCH; stop 8.58, target 8.75 (ceiling), R:R 0.64; R:R 0.64 < 2.0 at 8.69; pullback: buy 8.64-8.67 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5831,"target":8.75,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.5865,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.946,"trend":"flat","recent_slope_pct":0.1211,"volatility":"medium"},"price":8.685,"volume":{"bars":112,"last_bar_volume":217.0,"baseline_avg":2104.8,"bar_rvol":0.103098,"raw_accel":-0.971117,"smooth_accel":-0.080268,"accel_momentum":-0.047773,"rvol_3bar":[0.93441,4.274579,0.103098],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":141.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":5.370673},"context":{"vwap":8.586451,"price_vs_vwap_pct":1.147732,"ema9":8.661564,"ema20":8.651079,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.742857,"dist_to_hod_atr":2.66491,"atr":0.024391,"spread_atr":0.409986,"own_change_pct":0.288684,"rel_strength_pct":{"SPY":0.280891,"IWM":0.344604}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.103098},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fd178bb6b66b","ts":"2026-09-21T15:22:06.604242+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.32,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.0619,"vwap":10.9511,"ext_from_open_pct":3.38,"max_ext_allowed_pct":3.0,"volume_pace":0.843,"trend":"flat","recent_slope_pct":0.1868,"volatility":"unknown"},"price":11.0619,"volume":{"bars":112,"last_bar_volume":285154.0,"baseline_avg":179003.9,"bar_rvol":1.593004,"raw_accel":0.364954,"smooth_accel":1.086108,"accel_momentum":1.031591,"rvol_3bar":[0.187959,1.155481,1.593004],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":64743.0,"sell_vol":3745.0,"unclassified_vol":0.0,"imbalance":0.890638,"bid":11.08,"ask":11.09,"spread_pct":0.090212,"quote_size_imbalance":null,"quote_age_s":0.226938},"context":{"vwap":10.951097,"price_vs_vwap_pct":1.011796,"ema9":11.022222,"ema20":10.963671,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.725849,"dist_to_hod_atr":4.333528,"atr":0.098788,"spread_atr":0.101227,"own_change_pct":0.49864,"rel_strength_pct":{"SPY":0.490848,"IWM":0.554561}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.41879},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f519ac13cc06","ts":"2026-09-21T15:22:11.849621+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.18 below VWAP $9.18","plan":{"state":"PASS","setup":"","stop":9.027,"target":9.4,"target_label":"premarket_high","reward_risk":1.44,"pos_in_5d_range_pct":133.9,"room_to_5d_high_atr":-0.91},"price":9.18,"vwap":9.1828,"ext_from_open_pct":-0.76,"max_ext_allowed_pct":4.0,"volume_pace":0.819,"trend":"flat","recent_slope_pct":-0.0668,"volatility":"high"},"price":9.18,"volume":{"bars":112,"last_bar_volume":5653.0,"baseline_avg":4785.0,"bar_rvol":1.1814,"raw_accel":3.725601,"smooth_accel":-0.841903,"accel_momentum":0.027256,"rvol_3bar":[0.323272,0.183252,1.1814],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":333.0,"sell_vol":261.0,"unclassified_vol":0.0,"imbalance":0.121212,"bid":9.16,"ask":9.2,"spread_pct":0.43573,"quote_size_imbalance":null,"quote_age_s":11.851933},"context":{"vwap":9.182836,"price_vs_vwap_pct":-0.030886,"ema9":9.182155,"ema20":9.1669,"ema_stack":false,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-3.164557,"dist_to_hod_atr":6.287882,"atr":0.047711,"spread_atr":0.838384,"own_change_pct":0.272628,"rel_strength_pct":{"SPY":0.264836,"IWM":0.328549}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.1432},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c0bc17314c6e","ts":"2026-09-21T15:22:11.849621+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.9% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.6061,"target":6.95,"target_label":"premarket_high","reward_risk":1.11,"pos_in_5d_range_pct":119.9,"room_to_5d_high_atr":-0.53},"price":6.7694,"vwap":6.5292,"ext_from_open_pct":5.94,"max_ext_allowed_pct":3.0,"volume_pace":0.881,"trend":"flat","recent_slope_pct":0.1883,"volatility":"high"},"price":6.7694,"volume":{"bars":112,"last_bar_volume":4739.0,"baseline_avg":5014.4,"bar_rvol":0.945078,"raw_accel":-0.703646,"smooth_accel":0.230626,"accel_momentum":-5.230877,"rvol_3bar":[2.083328,3.60763,0.945078],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":17.0,"sell_vol":164.0,"unclassified_vol":0.0,"imbalance":-0.812155,"bid":6.8,"ask":6.83,"spread_pct":0.440205,"quote_size_imbalance":null,"quote_age_s":0.861805},"context":{"vwap":6.529208,"price_vs_vwap_pct":3.678725,"ema9":6.775263,"ema20":6.756101,"ema_stack":false,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-1.032164,"dist_to_hod_atr":2.084432,"atr":0.03387,"spread_atr":0.885736,"own_change_pct":1.177778,"rel_strength_pct":{"SPY":1.169986,"IWM":1.233698}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.76755},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0483e886c85d","ts":"2026-09-21T15:22:17.044590+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.31x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.4305,"target":11.77,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":115.5,"room_to_5d_high_atr":-0.69},"price":11.635,"vwap":11.5535,"ext_from_open_pct":-0.3,"max_ext_allowed_pct":3.0,"volume_pace":0.313,"trend":"flat","recent_slope_pct":0.0292,"volatility":"high"},"price":11.635,"volume":{"bars":112,"last_bar_volume":4411.0,"baseline_avg":10755.45,"bar_rvol":0.410118,"raw_accel":-0.569701,"smooth_accel":3.761029,"accel_momentum":0.837058,"rvol_3bar":[2.085364,0.982442,0.410118],"trend_3bar":"DECELERATING","projected_rvol":0.043203},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":330.0,"sell_vol":462.0,"unclassified_vol":0.0,"imbalance":-0.166667,"bid":11.62,"ask":11.65,"spread_pct":0.257843,"quote_size_imbalance":null,"quote_age_s":2.537204},"context":{"vwap":11.553497,"price_vs_vwap_pct":0.705442,"ema9":11.630412,"ema20":11.629511,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-2.8798,"dist_to_hod_atr":7.581937,"atr":0.045503,"spread_atr":0.659299,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.007792,"IWM":0.055921}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.068353},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"ed0da03295a6","ts":"2026-09-21T15:22:22.195390+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9134,"target":12.5,"target_label":"range_20d_high","reward_risk":24.55,"pos_in_5d_range_pct":151.9,"room_to_5d_high_atr":-0.68},"price":9.0538,"vwap":8.9027,"ext_from_open_pct":3.71,"max_ext_allowed_pct":4.0,"volume_pace":1.027,"trend":"flat","recent_slope_pct":-0.0247,"volatility":"high"},"price":9.0538,"volume":{"bars":112,"last_bar_volume":12707.0,"baseline_avg":10127.9,"bar_rvol":1.254653,"raw_accel":4.018612,"smooth_accel":-0.625154,"accel_momentum":0.254053,"rvol_3bar":[0.665442,0.204074,1.254653],"trend_3bar":"MIXED","projected_rvol":0.880812},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":3020.0,"sell_vol":513.0,"unclassified_vol":0.0,"imbalance":0.709595,"bid":9.07,"ask":9.09,"spread_pct":0.220264,"quote_size_imbalance":null,"quote_age_s":1.404548},"context":{"vwap":8.902352,"price_vs_vwap_pct":1.701211,"ema9":9.04756,"ema20":9.008837,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.507692,"dist_to_hod_atr":1.201887,"atr":0.03844,"spread_atr":0.520297,"own_change_pct":0.665188,"rel_strength_pct":{"SPY":0.657396,"IWM":0.721109}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.890296},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"31a690d6490b","ts":"2026-09-21T15:22:32.505742+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.9394,"target":12.5,"target_label":"range_20d_high","reward_risk":22.64,"pos_in_5d_range_pct":156.8,"room_to_5d_high_atr":-0.75},"price":9.09,"vwap":8.9028,"ext_from_open_pct":4.12,"max_ext_allowed_pct":3.0,"volume_pace":1.026,"trend":"flat","recent_slope_pct":0.0551,"volatility":"high"},"price":9.09,"volume":{"bars":112,"last_bar_volume":12707.0,"baseline_avg":10127.9,"bar_rvol":1.254653,"raw_accel":4.018612,"smooth_accel":-0.625154,"accel_momentum":0.254053,"rvol_3bar":[0.665442,0.204074,1.254653],"trend_3bar":"MIXED","projected_rvol":0.621479},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":3080.0,"sell_vol":180.0,"unclassified_vol":0.0,"imbalance":0.889571,"bid":9.07,"ask":9.09,"spread_pct":0.220264,"quote_size_imbalance":null,"quote_age_s":11.7149},"context":{"vwap":8.902352,"price_vs_vwap_pct":2.107845,"ema9":9.04756,"ema20":9.008837,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.10989,"dist_to_hod_atr":0.260149,"atr":0.03844,"spread_atr":0.520297,"own_change_pct":0.665188,"rel_strength_pct":{"SPY":0.657396,"IWM":0.721109}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.116102},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"89a0a3c0c3d9","ts":"2026-09-21T15:22:37.628985+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.0363,"target":9.4,"target_label":"premarket_high","reward_risk":1.38,"pos_in_5d_range_pct":134.5,"room_to_5d_high_atr":-0.92},"price":9.1893,"vwap":9.1828,"ext_from_open_pct":-0.66,"max_ext_allowed_pct":4.0,"volume_pace":0.816,"trend":"flat","recent_slope_pct":-0.0466,"volatility":"high"},"price":9.1893,"volume":{"bars":112,"last_bar_volume":5653.0,"baseline_avg":4785.0,"bar_rvol":1.1814,"raw_accel":3.725601,"smooth_accel":-0.841903,"accel_momentum":0.027256,"rvol_3bar":[0.323272,0.183252,1.1814],"trend_3bar":"MIXED","projected_rvol":0.159285},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":4.0,"sell_vol":440.0,"unclassified_vol":0.0,"imbalance":-0.981982,"bid":9.16,"ask":9.2,"spread_pct":0.43573,"quote_size_imbalance":null,"quote_age_s":7.631266},"context":{"vwap":9.182836,"price_vs_vwap_pct":0.07039,"ema9":9.182155,"ema20":9.1669,"ema_stack":true,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-3.066456,"dist_to_hod_atr":6.092958,"atr":0.047711,"spread_atr":0.838384,"own_change_pct":0.272628,"rel_strength_pct":{"SPY":0.264836,"IWM":0.328549}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.160114},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bbfa532aaf0f","ts":"2026-09-21T15:22:42.762966+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4582,"target":13.65,"target_label":"premarket_high","reward_risk":2.04,"pos_in_5d_range_pct":149.0,"room_to_5d_high_atr":-1.46},"price":12.85,"vwap":12.813,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":3.0,"volume_pace":0.848,"trend":"flat","recent_slope_pct":-0.3614,"volatility":"high"},"price":12.85,"volume":{"bars":112,"last_bar_volume":22812.0,"baseline_avg":21906.05,"bar_rvol":1.041356,"raw_accel":1.268948,"smooth_accel":-0.134546,"accel_momentum":0.396739,"rvol_3bar":[0.666611,0.461989,1.041356],"trend_3bar":"MIXED","projected_rvol":1.003856},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":1234.0,"sell_vol":11742.0,"unclassified_vol":0.0,"imbalance":-0.809803,"bid":12.85,"ask":12.91,"spread_pct":0.465839,"quote_size_imbalance":null,"quote_age_s":1.547438},"context":{"vwap":12.812683,"price_vs_vwap_pct":0.291251,"ema9":13.011336,"ema20":12.996347,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.884058,"dist_to_hod_atr":9.390135,"atr":0.10117,"spread_atr":0.593061,"own_change_pct":-1.640471,"rel_strength_pct":{"SPY":-1.648263,"IWM":-1.58455}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.843293},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b9b097a85f07","ts":"2026-09-21T15:22:53.066333+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.16 below VWAP $9.18","plan":{"state":"PASS","setup":"","stop":9.007,"target":9.4,"target_label":"premarket_high","reward_risk":1.57,"pos_in_5d_range_pct":132.7,"room_to_5d_high_atr":-0.87},"price":9.16,"vwap":9.1828,"ext_from_open_pct":-0.97,"max_ext_allowed_pct":3.0,"volume_pace":0.816,"trend":"flat","recent_slope_pct":-0.1104,"volatility":"high"},"price":9.16,"volume":{"bars":112,"last_bar_volume":5653.0,"baseline_avg":4785.0,"bar_rvol":1.1814,"raw_accel":3.725601,"smooth_accel":-0.841903,"accel_momentum":0.027256,"rvol_3bar":[0.323272,0.183252,1.1814],"trend_3bar":"MIXED","projected_rvol":0.377832},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":104.0,"sell_vol":1051.0,"unclassified_vol":0.0,"imbalance":-0.819913,"bid":9.15,"ask":9.18,"spread_pct":0.327332,"quote_size_imbalance":null,"quote_age_s":0.184225},"context":{"vwap":9.182836,"price_vs_vwap_pct":-0.248683,"ema9":9.182155,"ema20":9.1669,"ema_stack":false,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-3.375527,"dist_to_hod_atr":6.707075,"atr":0.047711,"spread_atr":0.628788,"own_change_pct":0.272628,"rel_strength_pct":{"SPY":0.264836,"IWM":0.328549}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.968646},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1cd59cd4f344","ts":"2026-09-21T15:23:08.619744+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.6467,"target":6.95,"target_label":"premarket_high","reward_risk":0.86,"pos_in_5d_range_pct":122.2,"room_to_5d_high_atr":-0.6},"price":6.81,"vwap":6.5292,"ext_from_open_pct":6.57,"max_ext_allowed_pct":3.0,"volume_pace":0.874,"trend":"flat","recent_slope_pct":0.1084,"volatility":"high"},"price":6.81,"volume":{"bars":113,"last_bar_volume":88.0,"baseline_avg":4921.9,"bar_rvol":0.017879,"raw_accel":-0.981431,"smooth_accel":-0.316928,"accel_momentum":-0.547554,"rvol_3bar":[3.60763,0.945078,0.017879],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":50.0,"sell_vol":38.0,"unclassified_vol":0.0,"imbalance":0.136364,"bid":6.8,"ask":6.82,"spread_pct":0.293686,"quote_size_imbalance":null,"quote_age_s":0.171948},"context":{"vwap":6.529224,"price_vs_vwap_pct":4.300302,"ema9":6.78321,"ema20":6.76171,"ema_stack":true,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-0.438596,"dist_to_hod_atr":0.839309,"atr":0.035744,"spread_atr":0.559539,"own_change_pct":1.037806,"rel_strength_pct":{"SPY":1.039754,"IWM":1.041302}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.002438},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"41c4e51bef1e","ts":"2026-09-21T15:23:08.619744+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9196,"target":12.5,"target_label":"range_20d_high","reward_risk":24.5,"pos_in_5d_range_pct":152.7,"room_to_5d_high_atr":-0.69},"price":9.06,"vwap":8.9031,"ext_from_open_pct":3.78,"max_ext_allowed_pct":4.0,"volume_pace":1.022,"trend":"flat","recent_slope_pct":-0.0276,"volatility":"high"},"price":9.06,"volume":{"bars":113,"last_bar_volume":6229.0,"baseline_avg":10542.05,"bar_rvol":0.590872,"raw_accel":-0.509798,"smooth_accel":-0.576199,"accel_momentum":0.048955,"rvol_3bar":[0.204074,1.254653,0.590872],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":106.0,"sell_vol":2805.0,"unclassified_vol":0.0,"imbalance":-0.927173,"bid":9.05,"ask":9.07,"spread_pct":0.220751,"quote_size_imbalance":null,"quote_age_s":0.060351},"context":{"vwap":8.903074,"price_vs_vwap_pct":1.7626,"ema9":9.050048,"ema20":9.013709,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.43956,"dist_to_hod_atr":0.996416,"atr":0.040144,"spread_atr":0.498208,"own_change_pct":-0.43956,"rel_strength_pct":{"SPY":-0.437612,"IWM":-0.436064}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.54784},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ab5a61feafb6","ts":"2026-09-21T15:23:08.619744+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.92,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.095,"vwap":10.9515,"ext_from_open_pct":3.69,"max_ext_allowed_pct":4.0,"volume_pace":0.839,"trend":"flat","recent_slope_pct":0.0328,"volatility":"unknown"},"price":11.095,"volume":{"bars":113,"last_bar_volume":61506.0,"baseline_avg":180693.1,"bar_rvol":0.340389,"raw_accel":-0.784306,"smooth_accel":1.991235,"accel_momentum":0.905126,"rvol_3bar":[1.155481,1.593004,0.340389],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":158,"trade_rate":5.266667,"buy_vol":30866.0,"sell_vol":15354.0,"unclassified_vol":0.0,"imbalance":0.335612,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":0.246937},"context":{"vwap":10.951399,"price_vs_vwap_pct":1.311255,"ema9":11.022038,"ema20":10.969159,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.437772,"dist_to_hod_atr":4.037846,"atr":0.097824,"spread_atr":0.102224,"own_change_pct":-0.12415,"rel_strength_pct":{"SPY":-0.122202,"IWM":-0.120654}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.114239},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"63da75fa5760","ts":"2026-09-21T15:23:13.789724+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.72,"target":9.3,"target_label":"premarket_high","reward_risk":4.04,"pos_in_5d_range_pct":89.0,"room_to_5d_high_atr":0.18},"price":8.835,"vwap":8.6481,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":-0.0966,"volatility":"medium"},"price":8.835,"volume":{"bars":113,"last_bar_volume":9126.0,"baseline_avg":29397.65,"bar_rvol":0.310433,"raw_accel":-0.569101,"smooth_accel":-0.37563,"accel_momentum":-1.310896,"rvol_3bar":[0.483457,0.741355,0.310433],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":2000.0,"sell_vol":1591.0,"unclassified_vol":0.0,"imbalance":0.113896,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":4.223926},"context":{"vwap":8.647946,"price_vs_vwap_pct":2.162985,"ema9":8.851714,"ema20":8.823406,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":-0.506757,"dist_to_hod_atr":0.868269,"atr":0.051827,"spread_atr":0.192949,"own_change_pct":-0.376232,"rel_strength_pct":{"SPY":-0.374284,"IWM":-0.372736}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.035357},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b7dc18fb23ae","ts":"2026-09-21T15:23:13.789724+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.8892,"target":12.5,"target_label":"range_20d_high","reward_risk":24.72,"pos_in_5d_range_pct":148.6,"room_to_5d_high_atr":-0.64},"price":9.0296,"vwap":8.9031,"ext_from_open_pct":3.43,"max_ext_allowed_pct":3.0,"volume_pace":1.022,"trend":"flat","recent_slope_pct":-0.0947,"volatility":"high"},"price":9.0296,"volume":{"bars":113,"last_bar_volume":6229.0,"baseline_avg":10542.05,"bar_rvol":0.590872,"raw_accel":-0.509798,"smooth_accel":-0.576199,"accel_momentum":0.048955,"rvol_3bar":[0.204074,1.254653,0.590872],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":105.0,"sell_vol":2621.0,"unclassified_vol":0.0,"imbalance":-0.922964,"bid":9.05,"ask":9.07,"spread_pct":0.220751,"quote_size_imbalance":null,"quote_age_s":3.492389},"context":{"vwap":8.903074,"price_vs_vwap_pct":1.421144,"ema9":9.050048,"ema20":9.013709,"ema_stack":false,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.773626,"dist_to_hod_atr":1.753693,"atr":0.040144,"spread_atr":0.498208,"own_change_pct":-0.43956,"rel_strength_pct":{"SPY":-0.437612,"IWM":-0.436064}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.545353},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fe4f975eafe0","ts":"2026-09-21T15:23:29.154091+00:00","symbol":"BKKT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.0416,"target":9.4,"target_label":"premarket_high","reward_risk":1.34,"pos_in_5d_range_pct":134.8,"room_to_5d_high_atr":-0.93},"price":9.1946,"vwap":9.1828,"ext_from_open_pct":-0.6,"max_ext_allowed_pct":4.0,"volume_pace":0.813,"trend":"flat","recent_slope_pct":0.0209,"volatility":"high"},"price":9.1946,"volume":{"bars":113,"last_bar_volume":1906.0,"baseline_avg":4940.1,"bar_rvol":0.385822,"raw_accel":-0.662834,"smooth_accel":-0.81605,"accel_momentum":0.025853,"rvol_3bar":[0.183252,1.1814,0.385822],"trend_3bar":"MIXED","projected_rvol":0.551991},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":126.0,"sell_vol":1354.0,"unclassified_vol":0.0,"imbalance":-0.82973,"bid":9.15,"ask":9.18,"spread_pct":0.327332,"quote_size_imbalance":null,"quote_age_s":27.005615},"context":{"vwap":9.182809,"price_vs_vwap_pct":0.128398,"ema9":9.178724,"ema20":9.166719,"ema_stack":true,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-3.010549,"dist_to_hod_atr":5.999934,"atr":0.047567,"spread_atr":0.630687,"own_change_pct":-0.704225,"rel_strength_pct":{"SPY":-0.702277,"IWM":-0.700729}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.320128},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e01b1d351133","ts":"2026-09-21T15:23:29.154091+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.0% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.6098,"target":6.84,"target_label":"ceiling","reward_risk":0.41,"pos_in_5d_range_pct":120.1,"room_to_5d_high_atr":-0.54},"price":6.7731,"vwap":6.5292,"ext_from_open_pct":6.0,"max_ext_allowed_pct":3.0,"volume_pace":0.871,"trend":"flat","recent_slope_pct":0.0,"volatility":"high"},"price":6.7731,"volume":{"bars":113,"last_bar_volume":88.0,"baseline_avg":4921.9,"bar_rvol":0.017879,"raw_accel":-0.981431,"smooth_accel":-0.316928,"accel_momentum":-0.547554,"rvol_3bar":[3.60763,0.945078,0.017879],"trend_3bar":"DECELERATING","projected_rvol":0.03805},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":10.0,"sell_vol":81.0,"unclassified_vol":0.0,"imbalance":-0.78022,"bid":6.8,"ask":6.82,"spread_pct":0.293686,"quote_size_imbalance":null,"quote_age_s":1.813442},"context":{"vwap":6.529224,"price_vs_vwap_pct":3.735151,"ema9":6.78321,"ema20":6.76171,"ema_stack":false,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-0.97807,"dist_to_hod_atr":1.871659,"atr":0.035744,"spread_atr":0.559539,"own_change_pct":1.037806,"rel_strength_pct":{"SPY":1.039754,"IWM":1.041302}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.01395},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"50bb34b55dd1","ts":"2026-09-21T15:23:29.154091+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9295,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.0,"room_to_5d_high_atr":-0.71},"price":9.0699,"vwap":8.9031,"ext_from_open_pct":3.89,"max_ext_allowed_pct":4.0,"volume_pace":1.02,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"high"},"price":9.0699,"volume":{"bars":113,"last_bar_volume":6229.0,"baseline_avg":10542.05,"bar_rvol":0.590872,"raw_accel":-0.509798,"smooth_accel":-0.576199,"accel_momentum":0.048955,"rvol_3bar":[0.204074,1.254653,0.590872],"trend_3bar":"MIXED","projected_rvol":0.078869},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":265.0,"sell_vol":239.0,"unclassified_vol":0.0,"imbalance":0.051587,"bid":9.05,"ask":9.07,"spread_pct":0.220751,"quote_size_imbalance":null,"quote_age_s":6.438637},"context":{"vwap":8.903074,"price_vs_vwap_pct":1.873797,"ema9":9.050048,"ema20":9.013709,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.330769,"dist_to_hod_atr":0.749803,"atr":0.040144,"spread_atr":0.498208,"own_change_pct":-0.43956,"rel_strength_pct":{"SPY":-0.437612,"IWM":-0.436064}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.030481},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8592686e3ea9","ts":"2026-09-21T15:23:34.332569+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.16 below VWAP $9.18","plan":{"state":"PASS","setup":"","stop":9.012,"target":9.4,"target_label":"premarket_high","reward_risk":1.54,"pos_in_5d_range_pct":133.0,"room_to_5d_high_atr":-0.88},"price":9.165,"vwap":9.1828,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":4.0,"volume_pace":0.812,"trend":"flat","recent_slope_pct":-0.0436,"volatility":"high"},"price":9.165,"volume":{"bars":113,"last_bar_volume":1906.0,"baseline_avg":4940.1,"bar_rvol":0.385822,"raw_accel":-0.662834,"smooth_accel":-0.81605,"accel_momentum":0.025853,"rvol_3bar":[0.183252,1.1814,0.385822],"trend_3bar":"MIXED","projected_rvol":0.521797},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":25.0,"sell_vol":250.0,"unclassified_vol":0.0,"imbalance":-0.818182,"bid":9.15,"ask":9.18,"spread_pct":0.327332,"quote_size_imbalance":null,"quote_age_s":4.334801},"context":{"vwap":9.182809,"price_vs_vwap_pct":-0.193943,"ema9":9.178724,"ema20":9.166719,"ema_stack":false,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-3.322785,"dist_to_hod_atr":6.622212,"atr":0.047567,"spread_atr":0.630687,"own_change_pct":-0.704225,"rel_strength_pct":{"SPY":-0.702277,"IWM":-0.700729}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.315673},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"550fc782ab6e","ts":"2026-09-21T15:23:34.332569+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.6467,"target":6.95,"target_label":"premarket_high","reward_risk":0.86,"pos_in_5d_range_pct":122.2,"room_to_5d_high_atr":-0.6},"price":6.81,"vwap":6.5293,"ext_from_open_pct":6.57,"max_ext_allowed_pct":3.0,"volume_pace":0.871,"trend":"flat","recent_slope_pct":0.1084,"volatility":"high"},"price":6.81,"volume":{"bars":113,"last_bar_volume":88.0,"baseline_avg":4921.9,"bar_rvol":0.017879,"raw_accel":-0.981431,"smooth_accel":-0.316928,"accel_momentum":-0.547554,"rvol_3bar":[3.60763,0.945078,0.017879],"trend_3bar":"DECELERATING","projected_rvol":0.078825},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":140.0,"sell_vol":82.0,"unclassified_vol":0.0,"imbalance":0.261261,"bid":6.81,"ask":6.82,"spread_pct":0.146735,"quote_size_imbalance":null,"quote_age_s":0.750031},"context":{"vwap":6.529224,"price_vs_vwap_pct":4.300302,"ema9":6.78321,"ema20":6.76171,"ema_stack":true,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-0.438596,"dist_to_hod_atr":0.839309,"atr":0.035744,"spread_atr":0.27977,"own_change_pct":1.037806,"rel_strength_pct":{"SPY":1.039754,"IWM":1.041302}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.004671},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"8cb7f25addb7","ts":"2026-09-21T15:23:34.332569+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.115,"vwap":10.9517,"ext_from_open_pct":3.88,"max_ext_allowed_pct":3.0,"volume_pace":0.837,"trend":"flat","recent_slope_pct":0.0689,"volatility":"unknown"},"price":11.115,"volume":{"bars":113,"last_bar_volume":61506.0,"baseline_avg":180693.1,"bar_rvol":0.340389,"raw_accel":-0.784306,"smooth_accel":1.991235,"accel_momentum":0.905126,"rvol_3bar":[1.155481,1.593004,0.340389],"trend_3bar":"MIXED","projected_rvol":0.368425},"flow":{"window_s":30,"trades":173,"trade_rate":5.766667,"buy_vol":21941.0,"sell_vol":8143.0,"unclassified_vol":0.0,"imbalance":0.458649,"bid":11.11,"ask":11.12,"spread_pct":0.089969,"quote_size_imbalance":null,"quote_age_s":0.740964},"context":{"vwap":10.951399,"price_vs_vwap_pct":1.49388,"ema9":11.022038,"ema20":10.969159,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.263708,"dist_to_hod_atr":3.833398,"atr":0.097824,"spread_atr":0.102224,"own_change_pct":-0.12415,"rel_strength_pct":{"SPY":-0.122202,"IWM":-0.120654}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.156119},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"aef8a92064a6","ts":"2026-09-21T15:23:39.515362+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1399,"target":9.09,"target_label":"range_20d_high","reward_risk":8.5,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2399,"vwap":8.2078,"ext_from_open_pct":2.87,"max_ext_allowed_pct":4.0,"volume_pace":3.818,"trend":"flat","recent_slope_pct":0.0728,"volatility":"unknown"},"price":8.2399,"volume":{"bars":112,"last_bar_volume":1335.0,"baseline_avg":944.15,"bar_rvol":1.41397,"raw_accel":4.655881,"smooth_accel":0.345954,"accel_momentum":-0.184311,"rvol_3bar":[1.344805,0.154955,1.41397],"trend_3bar":"MIXED","projected_rvol":1.202945},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":550.0,"sell_vol":198.0,"unclassified_vol":0.0,"imbalance":0.470588,"bid":8.19,"ask":8.24,"spread_pct":0.608643,"quote_size_imbalance":null,"quote_age_s":5.632697},"context":{"vwap":8.207781,"price_vs_vwap_pct":0.391329,"ema9":8.206752,"ema20":8.203225,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.963869,"dist_to_hod_atr":7.944583,"atr":0.042809,"spread_atr":1.167978,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.001948,"IWM":0.003496}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.665398},"shadow":{"decision":"FAIL","failed":["spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0a4c9f12e7d2","ts":"2026-09-21T15:23:49.803945+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.115,"vwap":10.9517,"ext_from_open_pct":3.88,"max_ext_allowed_pct":4.0,"volume_pace":0.835,"trend":"flat","recent_slope_pct":0.0689,"volatility":"unknown"},"price":11.115,"volume":{"bars":113,"last_bar_volume":61506.0,"baseline_avg":180693.1,"bar_rvol":0.340389,"raw_accel":-0.784306,"smooth_accel":1.991235,"accel_momentum":0.905126,"rvol_3bar":[1.155481,1.593004,0.340389],"trend_3bar":"MIXED","projected_rvol":0.332742},"flow":{"window_s":30,"trades":186,"trade_rate":6.2,"buy_vol":30699.0,"sell_vol":8881.0,"unclassified_vol":0.0,"imbalance":0.551238,"bid":11.11,"ask":11.12,"spread_pct":0.089969,"quote_size_imbalance":null,"quote_age_s":0.909064},"context":{"vwap":10.951399,"price_vs_vwap_pct":1.49388,"ema9":11.022038,"ema20":10.969159,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.263708,"dist_to_hod_atr":3.833398,"atr":0.097824,"spread_atr":0.102224,"own_change_pct":-0.12415,"rel_strength_pct":{"SPY":-0.122202,"IWM":-0.120654}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.187636},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"91d028e26c03","ts":"2026-09-21T15:24:00.067811+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.12,"target":5.2,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1672,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.919,"trend":"flat","recent_slope_pct":0.0491,"volatility":"unknown"},"price":5.175,"volume":{"bars":113,"last_bar_volume":4555.0,"baseline_avg":18247.75,"bar_rvol":0.24962,"raw_accel":-0.274566,"smooth_accel":-0.723526,"accel_momentum":-0.034781,"rvol_3bar":[1.082248,0.344797,0.24962],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":25967.0,"sell_vol":5807.0,"unclassified_vol":0.0,"imbalance":0.634481,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.270772},"context":{"vwap":5.167229,"price_vs_vwap_pct":0.150388,"ema9":5.158555,"ema20":5.146471,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":7.053972,"atr":0.017721,"spread_atr":0.564318,"own_change_pct":0.096805,"rel_strength_pct":{"SPY":0.11109,"IWM":0.089813}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.158379},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"5859369247b9","ts":"2026-09-21T15:24:05.273991+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.3% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.1231,"target":9.26,"target_label":"premarket_high","reward_risk":0.17,"pos_in_5d_range_pct":313.3,"room_to_5d_high_atr":-4.63},"price":9.24,"vwap":9.1746,"ext_from_open_pct":6.33,"max_ext_allowed_pct":4.0,"volume_pace":10.563,"trend":"flat","recent_slope_pct":0.1518,"volatility":"medium"},"price":9.24,"volume":{"bars":114,"last_bar_volume":74842.0,"baseline_avg":104921.4,"bar_rvol":0.713315,"raw_accel":-0.195299,"smooth_accel":0.605802,"accel_momentum":0.455371,"rvol_3bar":[0.885205,0.852679,0.713315],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":129,"trade_rate":4.3,"buy_vol":10882.0,"sell_vol":22286.0,"unclassified_vol":0.0,"imbalance":-0.343825,"bid":9.23,"ask":9.24,"spread_pct":0.108284,"quote_size_imbalance":null,"quote_age_s":0.259755},"context":{"vwap":9.17461,"price_vs_vwap_pct":0.712726,"ema9":9.228098,"ema20":9.251207,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.149378,"dist_to_hod_atr":3.84737,"atr":0.103967,"spread_atr":0.096184,"own_change_pct":0.462208,"rel_strength_pct":{"SPY":0.476492,"IWM":0.455216}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.245256},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"1885c902aa14","ts":"2026-09-21T15:24:05.273991+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.976,"target":8.28,"target_label":"ceiling","reward_risk":0.97,"pos_in_5d_range_pct":121.9,"room_to_5d_high_atr":-0.69},"price":8.13,"vwap":8.0985,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":3.0,"volume_pace":0.743,"trend":"flat","recent_slope_pct":-0.086,"volatility":"high"},"price":8.13,"volume":{"bars":114,"last_bar_volume":2162.0,"baseline_avg":6498.15,"bar_rvol":0.33271,"raw_accel":-0.742312,"smooth_accel":0.613324,"accel_momentum":0.031235,"rvol_3bar":[0.646249,1.333217,0.33271],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":23.0,"sell_vol":53.0,"unclassified_vol":0.0,"imbalance":-0.394737,"bid":8.13,"ask":8.14,"spread_pct":0.122926,"quote_size_imbalance":null,"quote_age_s":1.875492},"context":{"vwap":8.098484,"price_vs_vwap_pct":0.38916,"ema9":8.162425,"ema20":8.172217,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.969399,"dist_to_hod_atr":6.697106,"atr":0.03715,"spread_atr":0.269176,"own_change_pct":-0.764849,"rel_strength_pct":{"SPY":-0.750564,"IWM":-0.771841}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.131333},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7a33b01f5010","ts":"2026-09-21T15:24:05.273991+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.9296,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-0.71},"price":9.07,"vwap":8.9032,"ext_from_open_pct":3.89,"max_ext_allowed_pct":3.0,"volume_pace":1.015,"trend":"flat","recent_slope_pct":-0.011,"volatility":"high"},"price":9.07,"volume":{"bars":114,"last_bar_volume":1255.0,"baseline_avg":10563.25,"bar_rvol":0.118808,"raw_accel":-0.798523,"smooth_accel":0.365087,"accel_momentum":0.941286,"rvol_3bar":[1.254653,0.590872,0.118808],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":118.0,"sell_vol":474.0,"unclassified_vol":0.0,"imbalance":-0.601351,"bid":9.05,"ask":9.07,"spread_pct":0.220751,"quote_size_imbalance":null,"quote_age_s":14.66852},"context":{"vwap":8.903214,"price_vs_vwap_pct":1.873329,"ema9":9.052039,"ema20":9.018118,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.32967,"dist_to_hod_atr":0.747105,"atr":0.040155,"spread_atr":0.49807,"own_change_pct":-0.110254,"rel_strength_pct":{"SPY":-0.095969,"IWM":-0.117246}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.071445},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"82d5e9559d3b","ts":"2026-09-21T15:24:05.273991+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.15 below VWAP $5.17","plan":{"state":"PASS","setup":"","stop":5.1034,"target":5.2,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1549,"vwap":5.1672,"ext_from_open_pct":-0.87,"max_ext_allowed_pct":4.0,"volume_pace":0.918,"trend":"flat","recent_slope_pct":-0.0205,"volatility":"unknown"},"price":5.1549,"volume":{"bars":114,"last_bar_volume":47888.0,"baseline_avg":18075.1,"bar_rvol":2.649391,"raw_accel":9.513282,"smooth_accel":0.239515,"accel_momentum":0.96304,"rvol_3bar":[0.344797,0.24962,2.649391],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":20859.0,"sell_vol":5743.0,"unclassified_vol":0.0,"imbalance":0.568228,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.628918},"context":{"vwap":5.167244,"price_vs_vwap_pct":-0.238898,"ema9":5.161844,"ema20":5.149188,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.737736,"dist_to_hod_atr":7.93619,"atr":0.018283,"spread_atr":0.546946,"own_change_pct":0.193611,"rel_strength_pct":{"SPY":0.207895,"IWM":0.186619}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.505458},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f537a8380963","ts":"2026-09-21T15:24:10.371702+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.971,"target":8.28,"target_label":"ceiling","reward_risk":1.01,"pos_in_5d_range_pct":121.6,"room_to_5d_high_atr":-0.68},"price":8.125,"vwap":8.0985,"ext_from_open_pct":-0.79,"max_ext_allowed_pct":4.0,"volume_pace":0.742,"trend":"flat","recent_slope_pct":-0.0983,"volatility":"high"},"price":8.125,"volume":{"bars":114,"last_bar_volume":2162.0,"baseline_avg":6498.15,"bar_rvol":0.33271,"raw_accel":-0.742312,"smooth_accel":0.613324,"accel_momentum":0.031235,"rvol_3bar":[0.646249,1.333217,0.33271],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":664.0,"sell_vol":153.0,"unclassified_vol":0.0,"imbalance":0.625459,"bid":8.12,"ask":8.13,"spread_pct":0.123077,"quote_size_imbalance":null,"quote_age_s":1.395297},"context":{"vwap":8.098484,"price_vs_vwap_pct":0.32742,"ema9":8.162425,"ema20":8.172217,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.029073,"dist_to_hod_atr":6.831694,"atr":0.03715,"spread_atr":0.269176,"own_change_pct":-0.764849,"rel_strength_pct":{"SPY":-0.750564,"IWM":-0.771841}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.208097},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9d72c28d6b44","ts":"2026-09-21T15:24:10.371702+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9196,"target":12.5,"target_label":"range_20d_high","reward_risk":24.5,"pos_in_5d_range_pct":152.7,"room_to_5d_high_atr":-0.69},"price":9.06,"vwap":8.9032,"ext_from_open_pct":3.78,"max_ext_allowed_pct":4.0,"volume_pace":1.014,"trend":"flat","recent_slope_pct":-0.0331,"volatility":"high"},"price":9.06,"volume":{"bars":114,"last_bar_volume":1255.0,"baseline_avg":10563.25,"bar_rvol":0.118808,"raw_accel":-0.798523,"smooth_accel":0.365087,"accel_momentum":0.941286,"rvol_3bar":[1.254653,0.590872,0.118808],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":30.0,"sell_vol":372.0,"unclassified_vol":0.0,"imbalance":-0.850746,"bid":9.05,"ask":9.07,"spread_pct":0.220751,"quote_size_imbalance":null,"quote_age_s":19.766231},"context":{"vwap":8.903214,"price_vs_vwap_pct":1.76101,"ema9":9.052039,"ema20":9.018118,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.43956,"dist_to_hod_atr":0.996139,"atr":0.040155,"spread_atr":0.49807,"own_change_pct":-0.110254,"rel_strength_pct":{"SPY":-0.095969,"IWM":-0.117246}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.101076},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"20b39bea8a70","ts":"2026-09-21T15:24:10.371702+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.11,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.0776,"vwap":10.9518,"ext_from_open_pct":3.53,"max_ext_allowed_pct":3.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":0.0318,"volatility":"unknown"},"price":11.0776,"volume":{"bars":114,"last_bar_volume":52780.0,"baseline_avg":180020.6,"bar_rvol":0.293189,"raw_accel":-0.141872,"smooth_accel":0.252603,"accel_momentum":-1.738632,"rvol_3bar":[1.593004,0.340389,0.293189],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":18606.0,"sell_vol":6148.0,"unclassified_vol":0.0,"imbalance":0.503272,"bid":11.11,"ask":11.12,"spread_pct":0.089969,"quote_size_imbalance":null,"quote_age_s":0.170452},"context":{"vwap":10.951768,"price_vs_vwap_pct":1.148964,"ema9":11.04063,"ema20":10.983049,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.589208,"dist_to_hod_atr":4.213022,"atr":0.097887,"spread_atr":0.102159,"own_change_pct":1.264554,"rel_strength_pct":{"SPY":1.278838,"IWM":1.257562}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.147554},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"c9fb05011653","ts":"2026-09-21T15:24:10.371702+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.12,"target":5.2,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1672,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.918,"trend":"flat","recent_slope_pct":0.0573,"volatility":"unknown"},"price":5.175,"volume":{"bars":114,"last_bar_volume":47888.0,"baseline_avg":18075.1,"bar_rvol":2.649391,"raw_accel":9.513282,"smooth_accel":0.239515,"accel_momentum":0.96304,"rvol_3bar":[0.344797,0.24962,2.649391],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":23464.0,"sell_vol":6227.0,"unclassified_vol":0.0,"imbalance":0.580546,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.108929},"context":{"vwap":5.167244,"price_vs_vwap_pct":0.150091,"ema9":5.161844,"ema20":5.149188,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":6.836828,"atr":0.018283,"spread_atr":0.546946,"own_change_pct":0.193611,"rel_strength_pct":{"SPY":0.207895,"IWM":0.186619}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.538094},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"24ca71425633","ts":"2026-09-21T15:24:15.557739+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.1% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.6167,"target":6.84,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":120.5,"room_to_5d_high_atr":-0.55},"price":6.78,"vwap":6.5302,"ext_from_open_pct":6.1,"max_ext_allowed_pct":3.0,"volume_pace":0.869,"trend":"flat","recent_slope_pct":-0.0727,"volatility":"high"},"price":6.78,"volume":{"bars":114,"last_bar_volume":1556.0,"baseline_avg":4463.35,"bar_rvol":0.348617,"raw_accel":0.394468,"smooth_accel":-0.849688,"accel_momentum":-0.53276,"rvol_3bar":[0.945078,0.017879,0.348617],"trend_3bar":"MIXED","projected_rvol":3.914191},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1674.0,"sell_vol":3830.0,"unclassified_vol":0.0,"imbalance":-0.391715,"bid":6.78,"ask":6.8,"spread_pct":0.294551,"quote_size_imbalance":null,"quote_age_s":1.747235},"context":{"vwap":6.529492,"price_vs_vwap_pct":3.836556,"ema9":6.790568,"ema20":6.767262,"ema_stack":false,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-0.877193,"dist_to_hod_atr":1.64201,"atr":0.036541,"spread_atr":0.547337,"own_change_pct":1.337296,"rel_strength_pct":{"SPY":1.35158,"IWM":1.330304}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.136559},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a9cf2ac09ea6","ts":"2026-09-21T15:24:20.721403+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.19 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.0901,"target":9.09,"target_label":"range_20d_high","reward_risk":9.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.1901,"vwap":8.2078,"ext_from_open_pct":2.25,"max_ext_allowed_pct":4.0,"volume_pace":3.796,"trend":"flat","recent_slope_pct":-0.0424,"volatility":"unknown"},"price":8.1901,"volume":{"bars":113,"last_bar_volume":750.0,"baseline_avg":834.1,"bar_rvol":0.899173,"raw_accel":-0.438202,"smooth_accel":-0.153962,"accel_momentum":-0.499916,"rvol_3bar":[0.154955,1.41397,0.899173],"trend_3bar":"MIXED","projected_rvol":0.774139},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":0.0,"sell_vol":225.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.19,"ask":8.24,"spread_pct":0.608643,"quote_size_imbalance":null,"quote_age_s":46.838738},"context":{"vwap":8.207796,"price_vs_vwap_pct":-0.215603,"ema9":8.208402,"ema20":8.204347,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.544289,"dist_to_hod_atr":9.308384,"atr":0.041887,"spread_atr":1.193689,"own_change_pct":0.30525,"rel_strength_pct":{"SPY":0.319535,"IWM":0.298258}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.899173},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4a7e0a60e6f0","ts":"2026-09-21T15:24:20.721403+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.1149,"vwap":10.952,"ext_from_open_pct":3.88,"max_ext_allowed_pct":4.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":0.0991,"volatility":"unknown"},"price":11.1149,"volume":{"bars":114,"last_bar_volume":52780.0,"baseline_avg":180020.6,"bar_rvol":0.293189,"raw_accel":-0.141872,"smooth_accel":0.252603,"accel_momentum":-1.738632,"rvol_3bar":[1.593004,0.340389,0.293189],"trend_3bar":"DECELERATING","projected_rvol":0.464008},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":25370.0,"sell_vol":6351.0,"unclassified_vol":0.0,"imbalance":0.599571,"bid":11.11,"ask":11.12,"spread_pct":0.089969,"quote_size_imbalance":null,"quote_age_s":0.012813},"context":{"vwap":10.951768,"price_vs_vwap_pct":1.489548,"ema9":11.04063,"ema20":10.983049,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.264578,"dist_to_hod_atr":3.83197,"atr":0.097887,"spread_atr":0.102159,"own_change_pct":1.264554,"rel_strength_pct":{"SPY":1.278838,"IWM":1.257562}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.175787},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0c384cd1be76","ts":"2026-09-21T15:24:25.932028+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.83,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.105,"vwap":10.952,"ext_from_open_pct":3.79,"max_ext_allowed_pct":3.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":0.0812,"volatility":"unknown"},"price":11.105,"volume":{"bars":114,"last_bar_volume":52780.0,"baseline_avg":180020.6,"bar_rvol":0.293189,"raw_accel":-0.141872,"smooth_accel":0.252603,"accel_momentum":-1.738632,"rvol_3bar":[1.593004,0.340389,0.293189],"trend_3bar":"DECELERATING","projected_rvol":0.504569},"flow":{"window_s":30,"trades":139,"trade_rate":4.633333,"buy_vol":27888.0,"sell_vol":13774.0,"unclassified_vol":0.0,"imbalance":0.338774,"bid":11.1,"ask":11.11,"spread_pct":0.09005,"quote_size_imbalance":null,"quote_age_s":0.548697},"context":{"vwap":10.951768,"price_vs_vwap_pct":1.399152,"ema9":11.04063,"ema20":10.983049,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.35074,"dist_to_hod_atr":3.933107,"atr":0.097887,"spread_atr":0.102159,"own_change_pct":1.264554,"rel_strength_pct":{"SPY":1.278838,"IWM":1.257562}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.099325},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"8429cf23f8ed","ts":"2026-09-21T15:24:25.932028+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.16 below VWAP $5.17","plan":{"state":"PASS","setup":"","stop":5.1039,"target":5.2,"target_label":"premarket_high","reward_risk":0.86,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1555,"vwap":5.1672,"ext_from_open_pct":-0.86,"max_ext_allowed_pct":3.0,"volume_pace":0.917,"trend":"flat","recent_slope_pct":-0.0182,"volatility":"unknown"},"price":5.1555,"volume":{"bars":114,"last_bar_volume":47888.0,"baseline_avg":18075.1,"bar_rvol":2.649391,"raw_accel":9.513282,"smooth_accel":0.239515,"accel_momentum":0.96304,"rvol_3bar":[0.344797,0.24962,2.649391],"trend_3bar":"MIXED","projected_rvol":0.950837},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":4241.0,"sell_vol":4529.0,"unclassified_vol":0.0,"imbalance":-0.032839,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.549772},"context":{"vwap":5.167244,"price_vs_vwap_pct":-0.227287,"ema9":5.161844,"ema20":5.149188,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.726415,"dist_to_hod_atr":7.903373,"atr":0.018283,"spread_atr":0.546946,"own_change_pct":0.193611,"rel_strength_pct":{"SPY":0.207895,"IWM":0.186619}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.087004},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d416e80b2300","ts":"2026-09-21T15:24:31.221732+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.115,"target":9.09,"target_label":"range_20d_high","reward_risk":8.75,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.215,"vwap":8.2078,"ext_from_open_pct":2.56,"max_ext_allowed_pct":4.0,"volume_pace":3.791,"trend":"flat","recent_slope_pct":0.0183,"volatility":"unknown"},"price":8.215,"volume":{"bars":113,"last_bar_volume":750.0,"baseline_avg":834.1,"bar_rvol":0.899173,"raw_accel":-0.438202,"smooth_accel":-0.153962,"accel_momentum":-0.499916,"rvol_3bar":[0.154955,1.41397,0.899173],"trend_3bar":"MIXED","projected_rvol":0.744181},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":100.0,"sell_vol":223.0,"unclassified_vol":0.0,"imbalance":-0.380805,"bid":8.19,"ask":8.24,"spread_pct":0.608643,"quote_size_imbalance":null,"quote_age_s":57.339067},"context":{"vwap":8.207796,"price_vs_vwap_pct":0.087767,"ema9":8.208402,"ema20":8.204347,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.254079,"dist_to_hod_atr":8.713927,"atr":0.041887,"spread_atr":1.193689,"own_change_pct":0.30525,"rel_strength_pct":{"SPY":0.319535,"IWM":0.298258}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.342409},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"69e2b8f3d7d7","ts":"2026-09-21T15:24:31.221732+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.9296,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-0.71},"price":9.07,"vwap":8.9038,"ext_from_open_pct":3.89,"max_ext_allowed_pct":3.0,"volume_pace":1.014,"trend":"flat","recent_slope_pct":-0.011,"volatility":"high"},"price":9.07,"volume":{"bars":114,"last_bar_volume":1255.0,"baseline_avg":10563.25,"bar_rvol":0.118808,"raw_accel":-0.798523,"smooth_accel":0.365087,"accel_momentum":0.941286,"rvol_3bar":[1.254653,0.590872,0.118808],"trend_3bar":"DECELERATING","projected_rvol":0.833225},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":2672.0,"sell_vol":1894.0,"unclassified_vol":0.0,"imbalance":0.17039,"bid":9.05,"ask":9.08,"spread_pct":0.330943,"quote_size_imbalance":null,"quote_age_s":0.024366},"context":{"vwap":8.903214,"price_vs_vwap_pct":1.873329,"ema9":9.052039,"ema20":9.018118,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.32967,"dist_to_hod_atr":0.747105,"atr":0.040155,"spread_atr":0.747105,"own_change_pct":-0.110254,"rel_strength_pct":{"SPY":-0.095969,"IWM":-0.117246}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.020244},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7f63e29b1ad3","ts":"2026-09-21T15:24:31.221732+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.12,"target":5.2,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1672,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.917,"trend":"flat","recent_slope_pct":0.0573,"volatility":"unknown"},"price":5.175,"volume":{"bars":114,"last_bar_volume":47888.0,"baseline_avg":18075.1,"bar_rvol":2.649391,"raw_accel":9.513282,"smooth_accel":0.239515,"accel_momentum":0.96304,"rvol_3bar":[0.344797,0.24962,2.649391],"trend_3bar":"MIXED","projected_rvol":0.865548},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":4281.0,"sell_vol":3860.0,"unclassified_vol":0.0,"imbalance":0.051714,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":1.553711},"context":{"vwap":5.167244,"price_vs_vwap_pct":0.150091,"ema9":5.161844,"ema20":5.149188,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":6.836828,"atr":0.018283,"spread_atr":0.546946,"own_change_pct":0.193611,"rel_strength_pct":{"SPY":0.207895,"IWM":0.186619}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.137009},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6056838b775f","ts":"2026-09-21T15:24:51.998125+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.11,"vwap":10.9524,"ext_from_open_pct":3.83,"max_ext_allowed_pct":4.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":0.0902,"volatility":"unknown"},"price":11.11,"volume":{"bars":114,"last_bar_volume":52780.0,"baseline_avg":180020.6,"bar_rvol":0.293189,"raw_accel":-0.141872,"smooth_accel":0.252603,"accel_momentum":-1.738632,"rvol_3bar":[1.593004,0.340389,0.293189],"trend_3bar":"DECELERATING","projected_rvol":0.531657},"flow":{"window_s":30,"trades":266,"trade_rate":8.866667,"buy_vol":35501.0,"sell_vol":17395.0,"unclassified_vol":0.0,"imbalance":0.342294,"bid":11.11,"ask":11.12,"spread_pct":0.089969,"quote_size_imbalance":null,"quote_age_s":1.513354},"context":{"vwap":10.951768,"price_vs_vwap_pct":1.444807,"ema9":11.04063,"ema20":10.983049,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.307224,"dist_to_hod_atr":3.882028,"atr":0.097887,"spread_atr":0.102159,"own_change_pct":1.264554,"rel_strength_pct":{"SPY":1.278838,"IWM":1.257562}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.100357},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"aa98c2da289d","ts":"2026-09-21T15:25:02.426365+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.5132,"target":13.65,"target_label":"premarket_high","reward_risk":1.9,"pos_in_5d_range_pct":150.2,"room_to_5d_high_atr":-1.5},"price":12.905,"vwap":12.8146,"ext_from_open_pct":-0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.859,"trend":"flat","recent_slope_pct":0.066,"volatility":"high"},"price":12.905,"volume":{"bars":115,"last_bar_volume":96708.0,"baseline_avg":22033.75,"bar_rvol":4.389085,"raw_accel":3.999121,"smooth_accel":1.870416,"accel_momentum":1.099809,"rvol_3bar":[0.877625,0.855557,4.389085],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":2974.0,"sell_vol":1134.0,"unclassified_vol":0.0,"imbalance":0.447907,"bid":12.88,"ask":12.93,"spread_pct":0.387447,"quote_size_imbalance":null,"quote_age_s":0.239917},"context":{"vwap":12.814578,"price_vs_vwap_pct":0.705617,"ema9":12.936884,"ema20":12.960099,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.485507,"dist_to_hod_atr":8.358286,"atr":0.107079,"spread_atr":0.466943,"own_change_pct":-0.524166,"rel_strength_pct":{"SPY":-0.496249,"IWM":-0.545143}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.9659},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d0c012fe64ae","ts":"2026-09-21T15:25:02.426365+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.72,"target":9.3,"target_label":"premarket_high","reward_risk":4.04,"pos_in_5d_range_pct":89.0,"room_to_5d_high_atr":0.18},"price":8.835,"vwap":8.6493,"ext_from_open_pct":1.32,"max_ext_allowed_pct":4.0,"volume_pace":0.918,"trend":"flat","recent_slope_pct":-0.0699,"volatility":"medium"},"price":8.835,"volume":{"bars":115,"last_bar_volume":8579.0,"baseline_avg":28807.35,"bar_rvol":0.297806,"raw_accel":-0.246663,"smooth_accel":-0.641694,"accel_momentum":-0.252993,"rvol_3bar":[0.310433,0.394021,0.297806],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":541.0,"sell_vol":289.0,"unclassified_vol":0.0,"imbalance":0.303614,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":1.819298},"context":{"vwap":8.649242,"price_vs_vwap_pct":2.147675,"ema9":8.845157,"ema20":8.825252,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":-0.506757,"dist_to_hod_atr":0.916363,"atr":0.049107,"spread_atr":0.203636,"own_change_pct":-0.394709,"rel_strength_pct":{"SPY":-0.366792,"IWM":-0.415686}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.090418},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"04c0bde0f25a","ts":"2026-09-21T15:25:02.426365+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9296,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-0.71},"price":9.07,"vwap":8.9039,"ext_from_open_pct":3.89,"max_ext_allowed_pct":4.0,"volume_pace":1.011,"trend":"flat","recent_slope_pct":-0.011,"volatility":"high"},"price":9.07,"volume":{"bars":114,"last_bar_volume":1255.0,"baseline_avg":10563.25,"bar_rvol":0.118808,"raw_accel":-0.798523,"smooth_accel":0.365087,"accel_momentum":0.941286,"rvol_3bar":[1.254653,0.590872,0.118808],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":713.0,"sell_vol":253.0,"unclassified_vol":0.0,"imbalance":0.47619,"bid":9.06,"ask":9.08,"spread_pct":0.220507,"quote_size_imbalance":null,"quote_age_s":0.015103},"context":{"vwap":8.903214,"price_vs_vwap_pct":1.873329,"ema9":9.052039,"ema20":9.018118,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.32967,"dist_to_hod_atr":0.747105,"atr":0.040155,"spread_atr":0.49807,"own_change_pct":-0.110254,"rel_strength_pct":{"SPY":-0.082337,"IWM":-0.131231}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.056575},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"6fef52dfcaef","ts":"2026-09-21T15:25:02.426365+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.135,"vwap":10.9526,"ext_from_open_pct":4.07,"max_ext_allowed_pct":4.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":0.197,"volatility":"unknown"},"price":11.135,"volume":{"bars":115,"last_bar_volume":102503.0,"baseline_avg":179303.6,"bar_rvol":0.571673,"raw_accel":0.94208,"smooth_accel":-0.592161,"accel_momentum":-0.844764,"rvol_3bar":[0.340389,0.293189,0.571673],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":376,"trade_rate":12.533333,"buy_vol":48113.0,"sell_vol":15051.0,"unclassified_vol":0.0,"imbalance":0.523431,"bid":11.13,"ask":11.14,"spread_pct":0.089807,"quote_size_imbalance":null,"quote_age_s":2.238767},"context":{"vwap":10.952577,"price_vs_vwap_pct":1.665575,"ema9":11.060504,"ema20":10.997996,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.089643,"dist_to_hod_atr":3.603197,"atr":0.098524,"spread_atr":0.101498,"own_change_pct":0.81448,"rel_strength_pct":{"SPY":0.842396,"IWM":0.793502}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.299231},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"02e87dad66de","ts":"2026-09-21T15:25:07.852138+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.20 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.118,"target":9.09,"target_label":"range_20d_high","reward_risk":10.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2,"vwap":8.2078,"ext_from_open_pct":2.37,"max_ext_allowed_pct":4.0,"volume_pace":3.792,"trend":"flat","recent_slope_pct":-0.0091,"volatility":"unknown"},"price":8.2,"volume":{"bars":114,"last_bar_volume":463.0,"baseline_avg":866.05,"bar_rvol":0.534611,"raw_accel":-0.382667,"smooth_accel":0.049856,"accel_momentum":0.203818,"rvol_3bar":[1.41397,0.899173,0.534611],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":49.0,"sell_vol":3620.0,"unclassified_vol":0.0,"imbalance":-0.97329,"bid":8.19,"ask":8.21,"spread_pct":0.243902,"quote_size_imbalance":null,"quote_age_s":2.50005},"context":{"vwap":8.207803,"price_vs_vwap_pct":-0.095069,"ema9":8.211222,"ema20":8.206076,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.428904,"dist_to_hod_atr":8.949741,"atr":0.042459,"spread_atr":0.471039,"own_change_pct":0.152253,"rel_strength_pct":{"SPY":0.18017,"IWM":0.131276}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.520332},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"e28e35210bee","ts":"2026-09-21T15:25:07.852138+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9771,"target":8.28,"target_label":"ceiling","reward_risk":0.97,"pos_in_5d_range_pct":121.9,"room_to_5d_high_atr":-0.69},"price":8.1311,"vwap":8.0988,"ext_from_open_pct":-0.72,"max_ext_allowed_pct":3.0,"volume_pace":0.741,"trend":"flat","recent_slope_pct":-0.048,"volatility":"high"},"price":8.1311,"volume":{"bars":115,"last_bar_volume":9357.0,"baseline_avg":6089.0,"bar_rvol":1.536706,"raw_accel":3.327937,"smooth_accel":0.732724,"accel_momentum":0.1194,"rvol_3bar":[1.333217,0.33271,1.536706],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":203.0,"sell_vol":214.0,"unclassified_vol":0.0,"imbalance":-0.026379,"bid":8.14,"ask":8.15,"spread_pct":0.122775,"quote_size_imbalance":null,"quote_age_s":2.470617},"context":{"vwap":8.098761,"price_vs_vwap_pct":0.399304,"ema9":8.15868,"ema20":8.169501,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.956271,"dist_to_hod_atr":6.760438,"atr":0.03664,"spread_atr":0.272928,"own_change_pct":-0.443765,"rel_strength_pct":{"SPY":-0.415849,"IWM":-0.464743}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.040537},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c4417fcd8608","ts":"2026-09-21T15:25:07.852138+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.01,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.0869,"vwap":10.9526,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":0.1105,"volatility":"unknown"},"price":11.0869,"volume":{"bars":115,"last_bar_volume":102503.0,"baseline_avg":179303.6,"bar_rvol":0.571673,"raw_accel":0.94208,"smooth_accel":-0.592161,"accel_momentum":-0.844764,"rvol_3bar":[0.340389,0.293189,0.571673],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":328,"trade_rate":10.933333,"buy_vol":36955.0,"sell_vol":10332.0,"unclassified_vol":0.0,"imbalance":0.563009,"bid":11.13,"ask":11.14,"spread_pct":0.089807,"quote_size_imbalance":null,"quote_age_s":2.175059},"context":{"vwap":10.952577,"price_vs_vwap_pct":1.226409,"ema9":11.060504,"ema20":10.997996,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.508268,"dist_to_hod_atr":4.091404,"atr":0.098524,"spread_atr":0.101498,"own_change_pct":0.81448,"rel_strength_pct":{"SPY":0.842396,"IWM":0.793502}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.321857},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c1099f214055","ts":"2026-09-21T15:25:13.059759+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1279,"target":9.09,"target_label":"range_20d_high","reward_risk":10.72,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.21,"vwap":8.2078,"ext_from_open_pct":2.5,"max_ext_allowed_pct":4.0,"volume_pace":3.789,"trend":"flat","recent_slope_pct":0.0152,"volatility":"unknown"},"price":8.21,"volume":{"bars":114,"last_bar_volume":463.0,"baseline_avg":866.05,"bar_rvol":0.534611,"raw_accel":-0.382667,"smooth_accel":0.049856,"accel_momentum":0.203818,"rvol_3bar":[1.41397,0.899173,0.534611],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":80.0,"sell_vol":3620.0,"unclassified_vol":0.0,"imbalance":-0.956757,"bid":8.19,"ask":8.21,"spread_pct":0.243902,"quote_size_imbalance":null,"quote_age_s":7.707671},"context":{"vwap":8.207803,"price_vs_vwap_pct":0.026766,"ema9":8.211222,"ema20":8.206076,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.312354,"dist_to_hod_atr":8.714222,"atr":0.042459,"spread_atr":0.471039,"own_change_pct":0.152253,"rel_strength_pct":{"SPY":0.18017,"IWM":0.131276}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.511493},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"2885e07e2131","ts":"2026-09-21T15:25:13.059759+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.115,"vwap":10.9534,"ext_from_open_pct":3.88,"max_ext_allowed_pct":3.0,"volume_pace":0.834,"trend":"flat","recent_slope_pct":0.1611,"volatility":"unknown"},"price":11.115,"volume":{"bars":115,"last_bar_volume":102503.0,"baseline_avg":179303.6,"bar_rvol":0.571673,"raw_accel":0.94208,"smooth_accel":-0.592161,"accel_momentum":-0.844764,"rvol_3bar":[0.340389,0.293189,0.571673],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":548,"trade_rate":18.266667,"buy_vol":121570.0,"sell_vol":28747.0,"unclassified_vol":0.0,"imbalance":0.617515,"bid":11.11,"ask":11.12,"spread_pct":0.089969,"quote_size_imbalance":null,"quote_age_s":1.206477},"context":{"vwap":10.952577,"price_vs_vwap_pct":1.48297,"ema9":11.060504,"ema20":10.997996,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.263708,"dist_to_hod_atr":3.806194,"atr":0.098524,"spread_atr":0.101498,"own_change_pct":0.81448,"rel_strength_pct":{"SPY":0.842396,"IWM":0.793502}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.353017},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"527d573985f8","ts":"2026-09-21T15:25:18.299015+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.9296,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-0.71},"price":9.07,"vwap":8.9039,"ext_from_open_pct":3.89,"max_ext_allowed_pct":3.0,"volume_pace":1.009,"trend":"flat","recent_slope_pct":-0.011,"volatility":"high"},"price":9.07,"volume":{"bars":115,"last_bar_volume":5565.0,"baseline_avg":10471.2,"bar_rvol":0.531458,"raw_accel":1.125831,"smooth_accel":-0.403338,"accel_momentum":-0.768425,"rvol_3bar":[0.590872,0.118808,0.531458],"trend_3bar":"MIXED","projected_rvol":0.145293},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":431.0,"sell_vol":153.0,"unclassified_vol":0.0,"imbalance":0.476027,"bid":9.07,"ask":9.09,"spread_pct":0.220264,"quote_size_imbalance":null,"quote_age_s":1.691498},"context":{"vwap":8.903869,"price_vs_vwap_pct":1.865832,"ema9":9.055631,"ema20":9.023059,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.32967,"dist_to_hod_atr":0.774886,"atr":0.038715,"spread_atr":0.516591,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.027917,"IWM":-0.020978}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.252988},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"956b155f3896","ts":"2026-09-21T15:25:54.769819+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.4% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":6.6366,"target":6.95,"target_label":"premarket_high","reward_risk":0.92,"pos_in_5d_range_pct":121.6,"room_to_5d_high_atr":-0.58},"price":6.7999,"vwap":6.5304,"ext_from_open_pct":6.41,"max_ext_allowed_pct":4.0,"volume_pace":0.857,"trend":"flat","recent_slope_pct":-0.1236,"volatility":"high"},"price":6.7999,"volume":{"bars":115,"last_bar_volume":4656.0,"baseline_avg":4051.1,"bar_rvol":1.149317,"raw_accel":1.992288,"smooth_accel":-0.783565,"accel_momentum":0.066123,"rvol_3bar":[0.017879,0.348617,1.149317],"trend_3bar":"ACCELERATING","projected_rvol":0.134939},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":9.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.78,"ask":6.8,"spread_pct":0.294551,"quote_size_imbalance":null,"quote_age_s":15.984712},"context":{"vwap":6.530271,"price_vs_vwap_pct":4.128912,"ema9":6.790454,"ema20":6.769427,"ema_stack":true,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-0.586257,"dist_to_hod_atr":1.090039,"atr":0.036788,"spread_atr":0.54366,"own_change_pct":0.138631,"rel_strength_pct":{"SPY":0.166547,"IWM":0.117653}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.149317},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2a5538dcf62d","ts":"2026-09-21T15:26:00.126231+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9201,"target":12.5,"target_label":"range_20d_high","reward_risk":24.5,"pos_in_5d_range_pct":152.8,"room_to_5d_high_atr":-0.7},"price":9.0605,"vwap":8.9042,"ext_from_open_pct":3.79,"max_ext_allowed_pct":4.0,"volume_pace":1.004,"trend":"flat","recent_slope_pct":-0.032,"volatility":"high"},"price":9.0605,"volume":{"bars":115,"last_bar_volume":5565.0,"baseline_avg":10471.2,"bar_rvol":0.531458,"raw_accel":1.125831,"smooth_accel":-0.403338,"accel_momentum":-0.768425,"rvol_3bar":[0.590872,0.118808,0.531458],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1820.0,"sell_vol":284.0,"unclassified_vol":0.0,"imbalance":0.730038,"bid":9.08,"ask":9.1,"spread_pct":0.220022,"quote_size_imbalance":null,"quote_age_s":0.482821},"context":{"vwap":8.903869,"price_vs_vwap_pct":1.759136,"ema9":9.055631,"ema20":9.023059,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.434066,"dist_to_hod_atr":1.020266,"atr":0.038715,"spread_atr":0.516591,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.004546,"IWM":-0.054203}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.387984},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"26452de8018d","ts":"2026-09-21T15:26:05.572012+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.20 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.1226,"target":9.09,"target_label":"range_20d_high","reward_risk":10.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2046,"vwap":8.2078,"ext_from_open_pct":2.43,"max_ext_allowed_pct":5.0,"volume_pace":3.762,"trend":"flat","recent_slope_pct":-0.0192,"volatility":"unknown"},"price":8.2046,"volume":{"bars":115,"last_bar_volume":3762.0,"baseline_avg":853.85,"bar_rvol":4.405926,"raw_accel":7.12527,"smooth_accel":0.749297,"accel_momentum":0.699441,"rvol_3bar":[0.899173,0.534611,4.405926],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":2.0,"sell_vol":111.0,"unclassified_vol":0.0,"imbalance":-0.964602,"bid":8.19,"ask":8.21,"spread_pct":0.243902,"quote_size_imbalance":null,"quote_age_s":60.219924},"context":{"vwap":8.207797,"price_vs_vwap_pct":-0.038947,"ema9":8.210977,"ema20":8.206449,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.375291,"dist_to_hod_atr":9.148586,"atr":0.041034,"spread_atr":0.487405,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.004546,"IWM":-0.054203}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-4.249964},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6aeb6938c327","ts":"2026-09-21T15:26:05.572012+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.9496,"target":12.5,"target_label":"range_20d_high","reward_risk":24.29,"pos_in_5d_range_pct":156.8,"room_to_5d_high_atr":-0.75},"price":9.09,"vwap":8.9042,"ext_from_open_pct":4.12,"max_ext_allowed_pct":3.0,"volume_pace":1.003,"trend":"flat","recent_slope_pct":0.0667,"volatility":"high"},"price":9.09,"volume":{"bars":116,"last_bar_volume":2611.0,"baseline_avg":10366.15,"bar_rvol":0.251878,"raw_accel":-0.530818,"smooth_accel":-0.551225,"accel_momentum":-0.147887,"rvol_3bar":[0.118808,0.531458,0.251878],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1826.0,"sell_vol":278.0,"unclassified_vol":0.0,"imbalance":0.735741,"bid":9.08,"ask":9.1,"spread_pct":0.220022,"quote_size_imbalance":null,"quote_age_s":5.928602},"context":{"vwap":8.904193,"price_vs_vwap_pct":2.086735,"ema9":9.056605,"ema20":9.026625,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.10989,"dist_to_hod_atr":0.257069,"atr":0.0389,"spread_atr":0.514139,"own_change_pct":-0.049641,"rel_strength_pct":{"SPY":-0.054187,"IWM":-0.103845}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.185317},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a4f59cc2d943","ts":"2026-09-21T15:26:05.572012+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0097,"target":12.29,"target_label":"prev_day_high","reward_risk":0.6,"pos_in_5d_range_pct":62.9,"room_to_5d_high_atr":0.59},"price":12.185,"vwap":12.1699,"ext_from_open_pct":-0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.966,"trend":"flat","recent_slope_pct":0.0647,"volatility":"medium"},"price":12.185,"volume":{"bars":116,"last_bar_volume":21337.0,"baseline_avg":18086.85,"bar_rvol":1.179697,"raw_accel":-0.152756,"smooth_accel":1.280813,"accel_momentum":0.267297,"rvol_3bar":[0.865791,1.459143,1.179697],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":11402.0,"sell_vol":9820.0,"unclassified_vol":0.0,"imbalance":0.074545,"bid":12.18,"ask":12.19,"spread_pct":0.082068,"quote_size_imbalance":null,"quote_age_s":1.516384},"context":{"vwap":12.16983,"price_vs_vwap_pct":0.124655,"ema9":12.150588,"ema20":12.128644,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.441954,"dist_to_hod_atr":8.791085,"atr":0.034694,"spread_atr":0.288232,"own_change_pct":0.186831,"rel_strength_pct":{"SPY":0.182286,"IWM":0.132628}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.087941},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b851f4c2b3cb","ts":"2026-09-21T15:26:10.740408+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.3% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":6.6267,"target":6.84,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":121.0,"room_to_5d_high_atr":-0.57},"price":6.79,"vwap":6.5304,"ext_from_open_pct":6.26,"max_ext_allowed_pct":4.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":-0.103,"volatility":"high"},"price":6.79,"volume":{"bars":116,"last_bar_volume":499.0,"baseline_avg":4200.25,"bar_rvol":0.118802,"raw_accel":-0.892826,"smooth_accel":-0.677635,"accel_momentum":0.10593,"rvol_3bar":[0.348617,1.149317,0.118802],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":109.0,"sell_vol":20.0,"unclassified_vol":0.0,"imbalance":0.689922,"bid":6.78,"ask":6.8,"spread_pct":0.294551,"quote_size_imbalance":null,"quote_age_s":0.605665},"context":{"vwap":6.530352,"price_vs_vwap_pct":3.976017,"ema9":6.792344,"ema20":6.77233,"ema_stack":false,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-0.730994,"dist_to_hod_atr":1.381925,"atr":0.036181,"spread_atr":0.55277,"own_change_pct":-0.001471,"rel_strength_pct":{"SPY":-0.006016,"IWM":-0.055674}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.081964},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e1976b86f960","ts":"2026-09-21T15:26:10.740408+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.16 below VWAP $5.17","plan":{"state":"PASS","setup":"","stop":5.1096,"target":5.2,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1612,"vwap":5.1673,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.909,"trend":"flat","recent_slope_pct":-0.034,"volatility":"unknown"},"price":5.1612,"volume":{"bars":116,"last_bar_volume":3254.0,"baseline_avg":19426.5,"bar_rvol":0.167503,"raw_accel":-0.886569,"smooth_accel":1.660701,"accel_momentum":0.498099,"rvol_3bar":[2.649391,1.490582,0.167503],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":798.0,"sell_vol":807.0,"unclassified_vol":0.0,"imbalance":-0.005607,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.868286},"context":{"vwap":5.167268,"price_vs_vwap_pct":-0.117433,"ema9":5.16658,"ema20":5.153871,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.618868,"dist_to_hod_atr":7.346329,"atr":0.018894,"spread_atr":0.529274,"own_change_pct":0.201371,"rel_strength_pct":{"SPY":0.196825,"IWM":0.147167}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.000939},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"af958c7565e8","ts":"2026-09-21T15:26:15.902836+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.12,"target":5.2,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1673,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.908,"trend":"flat","recent_slope_pct":0.0193,"volatility":"unknown"},"price":5.175,"volume":{"bars":116,"last_bar_volume":3254.0,"baseline_avg":19426.5,"bar_rvol":0.167503,"raw_accel":-0.886569,"smooth_accel":1.660701,"accel_momentum":0.498099,"rvol_3bar":[2.649391,1.490582,0.167503],"trend_3bar":"DECELERATING","projected_rvol":0.046223},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":757.0,"sell_vol":673.0,"unclassified_vol":0.0,"imbalance":0.058741,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.319702},"context":{"vwap":5.167268,"price_vs_vwap_pct":0.149633,"ema9":5.16658,"ema20":5.153871,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":6.61593,"atr":0.018894,"spread_atr":0.529274,"own_change_pct":0.201371,"rel_strength_pct":{"SPY":0.196825,"IWM":0.147167}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.009839},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"5b056b0406ea","ts":"2026-09-21T15:26:36.631044+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.5% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":6.6397,"target":6.95,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":121.8,"room_to_5d_high_atr":-0.59},"price":6.803,"vwap":6.5306,"ext_from_open_pct":6.46,"max_ext_allowed_pct":4.0,"volume_pace":0.852,"trend":"flat","recent_slope_pct":-0.0648,"volatility":"high"},"price":6.803,"volume":{"bars":116,"last_bar_volume":499.0,"baseline_avg":4200.25,"bar_rvol":0.118802,"raw_accel":-0.892826,"smooth_accel":-0.677635,"accel_momentum":0.10593,"rvol_3bar":[0.348617,1.149317,0.118802],"trend_3bar":"MIXED","projected_rvol":0.510856},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":50.0,"sell_vol":1160.0,"unclassified_vol":0.0,"imbalance":-0.917355,"bid":6.78,"ask":6.8,"spread_pct":0.294551,"quote_size_imbalance":null,"quote_age_s":18.53481},"context":{"vwap":6.530352,"price_vs_vwap_pct":4.175088,"ema9":6.792344,"ema20":6.77233,"ema_stack":true,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-0.540936,"dist_to_hod_atr":1.022624,"atr":0.036181,"spread_atr":0.55277,"own_change_pct":-0.001471,"rel_strength_pct":{"SPY":-0.006016,"IWM":-0.055674}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.108984},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a3a88d9ab86e","ts":"2026-09-21T15:26:41.827387+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.16 below VWAP $5.17","plan":{"state":"PASS","setup":"","stop":5.1099,"target":5.2,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1615,"vwap":5.1673,"ext_from_open_pct":-0.74,"max_ext_allowed_pct":3.0,"volume_pace":0.906,"trend":"flat","recent_slope_pct":-0.0329,"volatility":"unknown"},"price":5.1615,"volume":{"bars":116,"last_bar_volume":3254.0,"baseline_avg":19426.5,"bar_rvol":0.167503,"raw_accel":-0.886569,"smooth_accel":1.660701,"accel_momentum":0.498099,"rvol_3bar":[2.649391,1.490582,0.167503],"trend_3bar":"DECELERATING","projected_rvol":0.311165},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":1233.0,"sell_vol":2754.0,"unclassified_vol":0.0,"imbalance":-0.38149,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.737645},"context":{"vwap":5.167268,"price_vs_vwap_pct":-0.111627,"ema9":5.16658,"ema20":5.153871,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.613208,"dist_to_hod_atr":7.33045,"atr":0.018894,"spread_atr":0.529274,"own_change_pct":0.201371,"rel_strength_pct":{"SPY":0.196825,"IWM":0.147167}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.063901},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0d37452a9cd4","ts":"2026-09-21T15:26:46.984507+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.3% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":6.6267,"target":6.84,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":121.0,"room_to_5d_high_atr":-0.57},"price":6.79,"vwap":6.5306,"ext_from_open_pct":6.26,"max_ext_allowed_pct":4.0,"volume_pace":0.851,"trend":"flat","recent_slope_pct":-0.103,"volatility":"high"},"price":6.79,"volume":{"bars":116,"last_bar_volume":499.0,"baseline_avg":4200.25,"bar_rvol":0.118802,"raw_accel":-0.892826,"smooth_accel":-0.677635,"accel_momentum":0.10593,"rvol_3bar":[0.348617,1.149317,0.118802],"trend_3bar":"MIXED","projected_rvol":0.400412},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":33.0,"sell_vol":1122.0,"unclassified_vol":0.0,"imbalance":-0.942857,"bid":6.78,"ask":6.8,"spread_pct":0.294551,"quote_size_imbalance":null,"quote_age_s":2.531493},"context":{"vwap":6.530352,"price_vs_vwap_pct":3.976017,"ema9":6.792344,"ema20":6.77233,"ema_stack":false,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-0.730994,"dist_to_hod_atr":1.381925,"atr":0.036181,"spread_atr":0.55277,"own_change_pct":-0.001471,"rel_strength_pct":{"SPY":-0.006016,"IWM":-0.055674}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.112014},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b58d47ba804a","ts":"2026-09-21T15:26:46.984507+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.12,"target":5.2,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1673,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.905,"trend":"flat","recent_slope_pct":0.0193,"volatility":"unknown"},"price":5.175,"volume":{"bars":116,"last_bar_volume":3254.0,"baseline_avg":19426.5,"bar_rvol":0.167503,"raw_accel":-0.886569,"smooth_accel":1.660701,"accel_momentum":0.498099,"rvol_3bar":[2.649391,1.490582,0.167503],"trend_3bar":"DECELERATING","projected_rvol":0.304291},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1335.0,"sell_vol":2956.0,"unclassified_vol":0.0,"imbalance":-0.377767,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.964368},"context":{"vwap":5.167268,"price_vs_vwap_pct":0.149633,"ema9":5.16658,"ema20":5.153871,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":6.61593,"atr":0.018894,"spread_atr":0.529274,"own_change_pct":0.201371,"rel_strength_pct":{"SPY":0.196825,"IWM":0.147167}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.063277},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"20b91762b8ad","ts":"2026-09-21T15:26:57.271817+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.16 below VWAP $12.17","plan":{"state":"PASS","setup":"","stop":11.9847,"target":12.29,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":60.7,"room_to_5d_high_atr":0.63},"price":12.16,"vwap":12.1698,"ext_from_open_pct":-1.14,"max_ext_allowed_pct":3.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":0.0236,"volatility":"medium"},"price":12.16,"volume":{"bars":116,"last_bar_volume":21337.0,"baseline_avg":18086.85,"bar_rvol":1.179697,"raw_accel":-0.152756,"smooth_accel":1.280813,"accel_momentum":0.267297,"rvol_3bar":[0.865791,1.459143,1.179697],"trend_3bar":"MIXED","projected_rvol":1.429643},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":5603.0,"sell_vol":12895.0,"unclassified_vol":0.0,"imbalance":-0.394205,"bid":12.15,"ask":12.16,"spread_pct":0.082271,"quote_size_imbalance":null,"quote_age_s":0.742775},"context":{"vwap":12.16983,"price_vs_vwap_pct":-0.080771,"ema9":12.150588,"ema20":12.128644,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.642114,"dist_to_hod_atr":9.511666,"atr":0.034694,"spread_atr":0.288232,"own_change_pct":0.186831,"rel_strength_pct":{"SPY":0.182286,"IWM":0.132628}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.465042},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4a850a393985","ts":"2026-09-21T15:27:07.404523+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9435,"target":9.1299,"target_label":"ceiling","reward_risk":1.15,"pos_in_5d_range_pct":127.3,"room_to_5d_high_atr":-0.87},"price":9.03,"vwap":9.0156,"ext_from_open_pct":0.11,"max_ext_allowed_pct":3.0,"volume_pace":1.258,"trend":"flat","recent_slope_pct":-0.0657,"volatility":"medium"},"price":9.03,"volume":{"bars":117,"last_bar_volume":5123.0,"baseline_avg":14370.2,"bar_rvol":0.356502,"raw_accel":-0.414915,"smooth_accel":0.058634,"accel_momentum":-0.221743,"rvol_3bar":[1.046099,0.541964,0.356502],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":451.0,"sell_vol":2168.0,"unclassified_vol":0.0,"imbalance":-0.655594,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":0.037313},"context":{"vwap":9.015591,"price_vs_vwap_pct":0.159824,"ema9":9.049178,"ema20":9.041132,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.094207,"dist_to_hod_atr":3.991017,"atr":0.025031,"spread_atr":0.399501,"own_change_pct":-0.165654,"rel_strength_pct":{"SPY":-0.150071,"IWM":-0.162157}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.23372},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"743a7846c15f","ts":"2026-09-21T15:27:07.404523+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.17","plan":{"state":"PASS","setup":"","stop":5.1133,"target":5.2,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.165,"vwap":5.1673,"ext_from_open_pct":-0.67,"max_ext_allowed_pct":3.0,"volume_pace":0.909,"trend":"flat","recent_slope_pct":-0.0483,"volatility":"unknown"},"price":5.165,"volume":{"bars":117,"last_bar_volume":7038.0,"baseline_avg":17558.6,"bar_rvol":0.400829,"raw_accel":0.603317,"smooth_accel":-0.336211,"accel_momentum":-1.996912,"rvol_3bar":[1.490582,0.167503,0.400829],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":2990.0,"sell_vol":24077.0,"unclassified_vol":0.0,"imbalance":-0.779067,"bid":5.16,"ask":5.17,"spread_pct":0.193611,"quote_size_imbalance":null,"quote_age_s":0.0706},"context":{"vwap":5.167274,"price_vs_vwap_pct":-0.044003,"ema9":5.167264,"ema20":5.155407,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.54717,"dist_to_hod_atr":7.147739,"atr":0.018887,"spread_atr":0.529462,"own_change_pct":0.073555,"rel_strength_pct":{"SPY":0.089138,"IWM":0.077052}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.312273},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c467b1b2415b","ts":"2026-09-21T15:27:12.518009+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9306,"target":12.5,"target_label":"range_20d_high","reward_risk":24.42,"pos_in_5d_range_pct":154.2,"room_to_5d_high_atr":-0.71},"price":9.071,"vwap":8.9044,"ext_from_open_pct":3.91,"max_ext_allowed_pct":4.0,"volume_pace":0.995,"trend":"flat","recent_slope_pct":0.0132,"volatility":"high"},"price":9.071,"volume":{"bars":117,"last_bar_volume":1268.0,"baseline_avg":9637.8,"bar_rvol":0.131565,"raw_accel":-0.514362,"smooth_accel":-0.532267,"accel_momentum":0.018958,"rvol_3bar":[0.531458,0.251878,0.131565],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":753.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":0.755245,"bid":9.06,"ask":9.08,"spread_pct":0.220507,"quote_size_imbalance":null,"quote_age_s":2.672914},"context":{"vwap":8.904347,"price_vs_vwap_pct":1.871589,"ema9":9.057284,"ema20":9.029803,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.318681,"dist_to_hod_atr":0.757887,"atr":0.038264,"spread_atr":0.522681,"own_change_pct":-0.220264,"rel_strength_pct":{"SPY":-0.204681,"IWM":-0.216767}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.099364},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a7b972ef6b7b","ts":"2026-09-21T15:27:12.518009+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1183,"target":5.2,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.17,"vwap":5.1673,"ext_from_open_pct":-0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.908,"trend":"flat","recent_slope_pct":-0.029,"volatility":"unknown"},"price":5.17,"volume":{"bars":117,"last_bar_volume":7038.0,"baseline_avg":17558.6,"bar_rvol":0.400829,"raw_accel":0.603317,"smooth_accel":-0.336211,"accel_momentum":-1.996912,"rvol_3bar":[1.490582,0.167503,0.400829],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":3024.0,"sell_vol":23076.0,"unclassified_vol":0.0,"imbalance":-0.768276,"bid":5.16,"ask":5.17,"spread_pct":0.193611,"quote_size_imbalance":null,"quote_age_s":0.196279},"context":{"vwap":5.167274,"price_vs_vwap_pct":0.05276,"ema9":5.167264,"ema20":5.155407,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.45283,"dist_to_hod_atr":6.883008,"atr":0.018887,"spread_atr":0.529462,"own_change_pct":0.073555,"rel_strength_pct":{"SPY":0.089138,"IWM":0.077052}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.307947},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0f99470fd86d","ts":"2026-09-21T15:27:17.646171+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.17","plan":{"state":"PASS","setup":"","stop":5.115,"target":5.2,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1667,"vwap":5.1673,"ext_from_open_pct":-0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.908,"trend":"flat","recent_slope_pct":-0.0418,"volatility":"unknown"},"price":5.1667,"volume":{"bars":117,"last_bar_volume":7038.0,"baseline_avg":17558.6,"bar_rvol":0.400829,"raw_accel":0.603317,"smooth_accel":-0.336211,"accel_momentum":-1.996912,"rvol_3bar":[1.490582,0.167503,0.400829],"trend_3bar":"MIXED","projected_rvol":5.024947},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":3493.0,"sell_vol":24865.0,"unclassified_vol":0.0,"imbalance":-0.75365,"bid":5.16,"ask":5.17,"spread_pct":0.193611,"quote_size_imbalance":null,"quote_age_s":5.324441},"context":{"vwap":5.167274,"price_vs_vwap_pct":-0.011103,"ema9":5.167264,"ema20":5.155407,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.515094,"dist_to_hod_atr":7.05773,"atr":0.018887,"spread_atr":0.529462,"own_change_pct":0.073555,"rel_strength_pct":{"SPY":0.089138,"IWM":0.077052}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.302085},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2274077d282b","ts":"2026-09-21T15:27:28.018566+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1195,"target":5.2,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1712,"vwap":5.1673,"ext_from_open_pct":-0.55,"max_ext_allowed_pct":4.0,"volume_pace":0.907,"trend":"flat","recent_slope_pct":-0.0244,"volatility":"unknown"},"price":5.1712,"volume":{"bars":117,"last_bar_volume":7038.0,"baseline_avg":17558.6,"bar_rvol":0.400829,"raw_accel":0.603317,"smooth_accel":-0.336211,"accel_momentum":-1.996912,"rvol_3bar":[1.490582,0.167503,0.400829],"trend_3bar":"MIXED","projected_rvol":3.253268},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":3510.0,"sell_vol":25559.0,"unclassified_vol":0.0,"imbalance":-0.758506,"bid":5.16,"ask":5.17,"spread_pct":0.193611,"quote_size_imbalance":null,"quote_age_s":0.910087},"context":{"vwap":5.167274,"price_vs_vwap_pct":0.075983,"ema9":5.167264,"ema20":5.155407,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.430189,"dist_to_hod_atr":6.819472,"atr":0.018887,"spread_atr":0.529462,"own_change_pct":0.073555,"rel_strength_pct":{"SPY":0.089138,"IWM":0.077052}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.304031},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"19ff42155045","ts":"2026-09-21T15:27:33.180825+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.9296,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-0.71},"price":9.07,"vwap":8.9045,"ext_from_open_pct":3.89,"max_ext_allowed_pct":3.0,"volume_pace":0.993,"trend":"flat","recent_slope_pct":0.011,"volatility":"high"},"price":9.07,"volume":{"bars":117,"last_bar_volume":1268.0,"baseline_avg":9637.8,"bar_rvol":0.131565,"raw_accel":-0.514362,"smooth_accel":-0.532267,"accel_momentum":0.018958,"rvol_3bar":[0.531458,0.251878,0.131565],"trend_3bar":"DECELERATING","projected_rvol":0.214828},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":759.0,"sell_vol":383.0,"unclassified_vol":0.0,"imbalance":0.329247,"bid":9.06,"ask":9.08,"spread_pct":0.220507,"quote_size_imbalance":null,"quote_age_s":1.025507},"context":{"vwap":8.904347,"price_vs_vwap_pct":1.860359,"ema9":9.057284,"ema20":9.029803,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.32967,"dist_to_hod_atr":0.784021,"atr":0.038264,"spread_atr":0.522681,"own_change_pct":-0.220264,"rel_strength_pct":{"SPY":-0.204681,"IWM":-0.216767}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.043317},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"04db8a79532e","ts":"2026-09-21T15:27:33.180825+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.03,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.085,"vwap":10.9552,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":-0.0706,"volatility":"unknown"},"price":11.085,"volume":{"bars":117,"last_bar_volume":46192.0,"baseline_avg":187034.5,"bar_rvol":0.24697,"raw_accel":-0.815244,"smooth_accel":-0.001825,"accel_momentum":0.268657,"rvol_3bar":[0.571673,1.372391,0.24697],"trend_3bar":"MIXED","projected_rvol":0.291823},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":20344.0,"sell_vol":8230.0,"unclassified_vol":0.0,"imbalance":0.423952,"bid":11.08,"ask":11.09,"spread_pct":0.090212,"quote_size_imbalance":null,"quote_age_s":1.287136},"context":{"vwap":10.954969,"price_vs_vwap_pct":1.186961,"ema9":11.084623,"ema20":11.021564,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.524804,"dist_to_hod_atr":4.227131,"atr":0.09581,"spread_atr":0.104374,"own_change_pct":0.329274,"rel_strength_pct":{"SPY":0.344857,"IWM":0.332771}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.104704},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6024619de5f3","ts":"2026-09-21T15:27:38.296410+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.17","plan":{"state":"PASS","setup":"","stop":5.1133,"target":5.2,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.165,"vwap":5.1673,"ext_from_open_pct":-0.67,"max_ext_allowed_pct":4.0,"volume_pace":0.906,"trend":"flat","recent_slope_pct":-0.0483,"volatility":"unknown"},"price":5.165,"volume":{"bars":117,"last_bar_volume":7038.0,"baseline_avg":17558.6,"bar_rvol":0.400829,"raw_accel":0.603317,"smooth_accel":-0.336211,"accel_momentum":-1.996912,"rvol_3bar":[1.490582,0.167503,0.400829],"trend_3bar":"MIXED","projected_rvol":2.562016},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":661.0,"sell_vol":4810.0,"unclassified_vol":0.0,"imbalance":-0.758362,"bid":5.16,"ask":5.17,"spread_pct":0.193611,"quote_size_imbalance":null,"quote_age_s":1.317607},"context":{"vwap":5.167274,"price_vs_vwap_pct":-0.044003,"ema9":5.167264,"ema20":5.155407,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.54717,"dist_to_hod_atr":7.147739,"atr":0.018887,"spread_atr":0.529462,"own_change_pct":0.073555,"rel_strength_pct":{"SPY":0.089138,"IWM":0.077052}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.303974},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fad503940ae1","ts":"2026-09-21T15:27:43.564944+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9356,"target":12.5,"target_label":"range_20d_high","reward_risk":24.39,"pos_in_5d_range_pct":154.9,"room_to_5d_high_atr":-0.72},"price":9.076,"vwap":8.9045,"ext_from_open_pct":3.96,"max_ext_allowed_pct":4.0,"volume_pace":0.991,"trend":"flat","recent_slope_pct":0.0243,"volatility":"high"},"price":9.076,"volume":{"bars":117,"last_bar_volume":1268.0,"baseline_avg":9637.8,"bar_rvol":0.131565,"raw_accel":-0.514362,"smooth_accel":-0.532267,"accel_momentum":0.018958,"rvol_3bar":[0.531458,0.251878,0.131565],"trend_3bar":"DECELERATING","projected_rvol":0.167623},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":38.0,"sell_vol":380.0,"unclassified_vol":0.0,"imbalance":-0.818182,"bid":9.06,"ask":9.08,"spread_pct":0.220507,"quote_size_imbalance":null,"quote_age_s":0.694969},"context":{"vwap":8.904347,"price_vs_vwap_pct":1.927741,"ema9":9.057284,"ema20":9.029803,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.263736,"dist_to_hod_atr":0.627217,"atr":0.038264,"spread_atr":0.522681,"own_change_pct":-0.220264,"rel_strength_pct":{"SPY":-0.204681,"IWM":-0.216767}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.107644},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"df09e8723645","ts":"2026-09-21T15:27:43.564944+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.12,"target":5.2,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.181,"vwap":5.1676,"ext_from_open_pct":-0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":0.0135,"volatility":"unknown"},"price":5.181,"volume":{"bars":117,"last_bar_volume":7038.0,"baseline_avg":17558.6,"bar_rvol":0.400829,"raw_accel":0.603317,"smooth_accel":-0.336211,"accel_momentum":-1.996912,"rvol_3bar":[1.490582,0.167503,0.400829],"trend_3bar":"MIXED","projected_rvol":9.478947},"flow":{"window_s":30,"trades":201,"trade_rate":6.7,"buy_vol":62378.0,"sell_vol":35093.0,"unclassified_vol":0.0,"imbalance":0.279929,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.501952},"context":{"vwap":5.167274,"price_vs_vwap_pct":0.265638,"ema9":5.167264,"ema20":5.155407,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.245283,"dist_to_hod_atr":6.300599,"atr":0.018887,"spread_atr":0.529462,"own_change_pct":0.073555,"rel_strength_pct":{"SPY":0.089138,"IWM":0.077052}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.112204},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"22b8b63ab722","ts":"2026-09-21T15:28:04.643331+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.9296,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-0.71},"price":9.07,"vwap":8.9045,"ext_from_open_pct":3.89,"max_ext_allowed_pct":3.0,"volume_pace":0.988,"trend":"flat","recent_slope_pct":0.0105,"volatility":"high"},"price":9.07,"volume":{"bars":118,"last_bar_volume":1201.0,"baseline_avg":9534.8,"bar_rvol":0.12596,"raw_accel":-0.496161,"smooth_accel":-0.610698,"accel_momentum":-0.078431,"rvol_3bar":[0.251878,0.131565,0.12596],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":28.0,"sell_vol":88.0,"unclassified_vol":0.0,"imbalance":-0.517241,"bid":9.06,"ask":9.08,"spread_pct":0.220507,"quote_size_imbalance":null,"quote_age_s":4.750518},"context":{"vwap":8.904493,"price_vs_vwap_pct":1.858692,"ema9":9.059827,"ema20":9.033632,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.32967,"dist_to_hod_atr":0.811852,"atr":0.036953,"spread_atr":0.541235,"own_change_pct":0.110375,"rel_strength_pct":{"SPY":0.109077,"IWM":0.162819}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.065152},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"e9a5779bb9ae","ts":"2026-09-21T15:28:09.827957+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9304,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.2,"room_to_5d_high_atr":-0.71},"price":9.0708,"vwap":8.9045,"ext_from_open_pct":3.9,"max_ext_allowed_pct":4.0,"volume_pace":0.988,"trend":"flat","recent_slope_pct":0.0122,"volatility":"high"},"price":9.0708,"volume":{"bars":118,"last_bar_volume":1201.0,"baseline_avg":9534.8,"bar_rvol":0.12596,"raw_accel":-0.496161,"smooth_accel":-0.610698,"accel_momentum":-0.078431,"rvol_3bar":[0.251878,0.131565,0.12596],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":128.0,"sell_vol":88.0,"unclassified_vol":0.0,"imbalance":0.185185,"bid":9.06,"ask":9.08,"spread_pct":0.220507,"quote_size_imbalance":null,"quote_age_s":0.969138},"context":{"vwap":8.904493,"price_vs_vwap_pct":1.867676,"ema9":9.059827,"ema20":9.033632,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.320879,"dist_to_hod_atr":0.790203,"atr":0.036953,"spread_atr":0.541235,"own_change_pct":0.110375,"rel_strength_pct":{"SPY":0.109077,"IWM":0.162819}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.023326},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"8dda05b0ecac","ts":"2026-09-21T15:28:20.113013+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.623,"target":9.74,"target_label":"premarket_high","reward_risk":0.19,"pos_in_5d_range_pct":112.9,"room_to_5d_high_atr":-0.13},"price":9.7215,"vwap":9.6807,"ext_from_open_pct":0.33,"max_ext_allowed_pct":3.0,"volume_pace":0.78,"trend":"flat","recent_slope_pct":-0.1268,"volatility":"medium"},"price":9.7215,"volume":{"bars":118,"last_bar_volume":11620.0,"baseline_avg":8732.35,"bar_rvol":1.330684,"raw_accel":1.005177,"smooth_accel":-0.281721,"accel_momentum":-2.844183,"rvol_3bar":[2.041495,0.648551,1.330684],"trend_3bar":"MIXED","projected_rvol":0.041336},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":129.0,"sell_vol":189.0,"unclassified_vol":0.0,"imbalance":-0.188679,"bid":9.72,"ask":9.73,"spread_pct":0.102828,"quote_size_imbalance":null,"quote_age_s":2.904176},"context":{"vwap":9.680671,"price_vs_vwap_pct":0.421754,"ema9":9.740318,"ema20":9.729816,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.103764,"dist_to_hod_atr":3.9312,"atr":0.0276,"spread_atr":0.362323,"own_change_pct":-0.154004,"rel_strength_pct":{"SPY":-0.155303,"IWM":-0.10156}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.251072},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fd60e62a25d4","ts":"2026-09-21T15:28:40.609689+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.971,"target":8.28,"target_label":"ceiling","reward_risk":1.01,"pos_in_5d_range_pct":121.6,"room_to_5d_high_atr":-0.68},"price":8.125,"vwap":8.099,"ext_from_open_pct":-0.79,"max_ext_allowed_pct":3.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0597,"volatility":"high"},"price":8.125,"volume":{"bars":118,"last_bar_volume":3357.0,"baseline_avg":5752.15,"bar_rvol":0.583608,"raw_accel":1.334431,"smooth_accel":-0.687779,"accel_momentum":-0.525754,"rvol_3bar":[0.258478,0.202938,0.583608],"trend_3bar":"MIXED","projected_rvol":0.912099},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":602.0,"sell_vol":1542.0,"unclassified_vol":0.0,"imbalance":-0.438433,"bid":8.12,"ask":8.13,"spread_pct":0.123077,"quote_size_imbalance":null,"quote_age_s":0.007857},"context":{"vwap":8.098942,"price_vs_vwap_pct":0.321748,"ema9":8.149692,"ema20":8.162031,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.029073,"dist_to_hod_atr":7.258459,"atr":0.034966,"spread_atr":0.285991,"own_change_pct":0.022127,"rel_strength_pct":{"SPY":0.020828,"IWM":0.07457}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.255873},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"db1a842cc70e","ts":"2026-09-21T15:28:40.609689+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.9296,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-0.71},"price":9.07,"vwap":8.9046,"ext_from_open_pct":3.89,"max_ext_allowed_pct":3.0,"volume_pace":0.984,"trend":"flat","recent_slope_pct":0.0105,"volatility":"high"},"price":9.07,"volume":{"bars":118,"last_bar_volume":1201.0,"baseline_avg":9534.8,"bar_rvol":0.12596,"raw_accel":-0.496161,"smooth_accel":-0.610698,"accel_momentum":-0.078431,"rvol_3bar":[0.251878,0.131565,0.12596],"trend_3bar":"DECELERATING","projected_rvol":0.114978},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":547.0,"sell_vol":35.0,"unclassified_vol":0.0,"imbalance":0.879725,"bid":9.06,"ask":9.08,"spread_pct":0.220507,"quote_size_imbalance":null,"quote_age_s":0.497353},"context":{"vwap":8.904493,"price_vs_vwap_pct":1.858692,"ema9":9.059827,"ema20":9.033632,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.32967,"dist_to_hod_atr":0.811852,"atr":0.036953,"spread_atr":0.541235,"own_change_pct":0.110375,"rel_strength_pct":{"SPY":0.109077,"IWM":0.162819}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.11081},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"3e66a3da88fd","ts":"2026-09-21T15:28:45.740475+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9296,"target":12.5,"target_label":"range_20d_high","reward_risk":24.43,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-0.71},"price":9.07,"vwap":8.9046,"ext_from_open_pct":3.89,"max_ext_allowed_pct":4.0,"volume_pace":0.983,"trend":"flat","recent_slope_pct":0.0105,"volatility":"high"},"price":9.07,"volume":{"bars":118,"last_bar_volume":1201.0,"baseline_avg":9534.8,"bar_rvol":0.12596,"raw_accel":-0.496161,"smooth_accel":-0.610698,"accel_momentum":-0.078431,"rvol_3bar":[0.251878,0.131565,0.12596],"trend_3bar":"DECELERATING","projected_rvol":0.113224},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":578.0,"sell_vol":85.0,"unclassified_vol":0.0,"imbalance":0.74359,"bid":9.06,"ask":9.08,"spread_pct":0.220507,"quote_size_imbalance":null,"quote_age_s":5.628139},"context":{"vwap":8.904493,"price_vs_vwap_pct":1.858692,"ema9":9.059827,"ema20":9.033632,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.32967,"dist_to_hod_atr":0.811852,"atr":0.036953,"spread_atr":0.541235,"own_change_pct":0.110375,"rel_strength_pct":{"SPY":0.109077,"IWM":0.162819}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.093662},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"c708b815d001","ts":"2026-09-21T15:28:50.925875+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.73 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.9394,"target":12.5,"target_label":"range_20d_high","reward_risk":24.36,"pos_in_5d_range_pct":155.4,"room_to_5d_high_atr":-0.73},"price":9.0798,"vwap":8.9046,"ext_from_open_pct":4.01,"max_ext_allowed_pct":4.0,"volume_pace":0.982,"trend":"flat","recent_slope_pct":0.0321,"volatility":"high"},"price":9.0798,"volume":{"bars":118,"last_bar_volume":1201.0,"baseline_avg":9534.8,"bar_rvol":0.12596,"raw_accel":-0.496161,"smooth_accel":-0.610698,"accel_momentum":-0.078431,"rvol_3bar":[0.251878,0.131565,0.12596],"trend_3bar":"DECELERATING","projected_rvol":0.101942},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":134.0,"sell_vol":85.0,"unclassified_vol":0.0,"imbalance":0.223744,"bid":9.06,"ask":9.08,"spread_pct":0.220507,"quote_size_imbalance":null,"quote_age_s":3.438608},"context":{"vwap":8.904493,"price_vs_vwap_pct":1.968748,"ema9":9.059827,"ema20":9.033632,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.221978,"dist_to_hod_atr":0.546647,"atr":0.036953,"spread_atr":0.541235,"own_change_pct":0.110375,"rel_strength_pct":{"SPY":0.109077,"IWM":0.162819}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.028183},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"6900ab9efe5d","ts":"2026-09-21T15:28:56.061445+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.08,"vwap":10.9556,"ext_from_open_pct":3.55,"max_ext_allowed_pct":3.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":-0.153,"volatility":"unknown"},"price":11.08,"volume":{"bars":118,"last_bar_volume":53888.0,"baseline_avg":185498.1,"bar_rvol":0.290504,"raw_accel":0.162017,"smooth_accel":0.614916,"accel_momentum":0.616741,"rvol_3bar":[1.372391,0.24697,0.290504],"trend_3bar":"MIXED","projected_rvol":0.169708},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":5976.0,"sell_vol":2516.0,"unclassified_vol":0.0,"imbalance":0.407442,"bid":11.08,"ask":11.09,"spread_pct":0.090212,"quote_size_imbalance":null,"quote_age_s":0.847701},"context":{"vwap":10.955363,"price_vs_vwap_pct":1.137678,"ema9":11.084698,"ema20":11.027606,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.56832,"dist_to_hod_atr":4.422101,"atr":0.092716,"spread_atr":0.107856,"own_change_pct":0.577972,"rel_strength_pct":{"SPY":0.576673,"IWM":0.630416}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.118364},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b4654610ce8a","ts":"2026-09-21T15:29:01.195901+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9585,"target":9.1299,"target_label":"ceiling","reward_risk":0.98,"pos_in_5d_range_pct":128.6,"room_to_5d_high_atr":-0.91},"price":9.045,"vwap":9.0158,"ext_from_open_pct":0.28,"max_ext_allowed_pct":3.0,"volume_pace":1.25,"trend":"flat","recent_slope_pct":-0.0102,"volatility":"medium"},"price":9.045,"volume":{"bars":119,"last_bar_volume":19955.0,"baseline_avg":12387.55,"bar_rvol":1.610892,"raw_accel":0.252511,"smooth_accel":0.116404,"accel_momentum":0.239223,"rvol_3bar":[0.356502,1.260333,1.610892],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":4110.0,"sell_vol":5178.0,"unclassified_vol":0.0,"imbalance":-0.114987,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":0.691419},"context":{"vwap":9.01584,"price_vs_vwap_pct":0.323435,"ema9":9.047178,"ema20":9.041566,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.929912,"dist_to_hod_atr":3.477927,"atr":0.024411,"spread_atr":0.40965,"own_change_pct":-0.079539,"rel_strength_pct":{"SPY":-0.061356,"IWM":-0.009623}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.185232},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0257ab0db8bf","ts":"2026-09-21T15:29:06.354693+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9355,"target":12.5,"target_label":"range_20d_high","reward_risk":24.39,"pos_in_5d_range_pct":154.9,"room_to_5d_high_atr":-0.72},"price":9.0759,"vwap":8.9046,"ext_from_open_pct":3.96,"max_ext_allowed_pct":4.0,"volume_pace":0.98,"trend":"flat","recent_slope_pct":0.0558,"volatility":"high"},"price":9.0759,"volume":{"bars":119,"last_bar_volume":825.0,"baseline_avg":9242.95,"bar_rvol":0.089257,"raw_accel":-0.642971,"smooth_accel":-0.650726,"accel_momentum":-0.040028,"rvol_3bar":[0.131565,0.12596,0.089257],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":35.0,"sell_vol":65.0,"unclassified_vol":0.0,"imbalance":-0.3,"bid":9.06,"ask":9.08,"spread_pct":0.220507,"quote_size_imbalance":null,"quote_age_s":0.455906},"context":{"vwap":8.904595,"price_vs_vwap_pct":1.923784,"ema9":9.063822,"ema20":9.038029,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.264835,"dist_to_hod_atr":0.674418,"atr":0.035735,"spread_atr":0.559683,"own_change_pct":0.218543,"rel_strength_pct":{"SPY":0.236726,"IWM":0.288458}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.026777},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"54d68560d54d","ts":"2026-09-21T15:29:06.354693+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.88,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.0999,"vwap":10.9558,"ext_from_open_pct":3.74,"max_ext_allowed_pct":4.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":-0.0916,"volatility":"unknown"},"price":11.0999,"volume":{"bars":119,"last_bar_volume":49727.0,"baseline_avg":185847.9,"bar_rvol":0.267568,"raw_accel":-0.077216,"smooth_accel":-0.630379,"accel_momentum":-1.245295,"rvol_3bar":[0.24697,0.290504,0.267568],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":181,"trade_rate":6.033333,"buy_vol":31603.0,"sell_vol":8622.0,"unclassified_vol":0.0,"imbalance":0.571311,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":0.797657},"context":{"vwap":10.955717,"price_vs_vwap_pct":1.316056,"ema9":11.085759,"ema20":11.033548,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.395126,"dist_to_hod_atr":4.360366,"atr":0.089465,"spread_atr":0.111776,"own_change_pct":-0.224921,"rel_strength_pct":{"SPY":-0.206739,"IWM":-0.155006}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.152865},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e23083e48114","ts":"2026-09-21T15:29:16.510115+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.9496,"target":12.5,"target_label":"range_20d_high","reward_risk":24.29,"pos_in_5d_range_pct":156.8,"room_to_5d_high_atr":-0.75},"price":9.09,"vwap":8.9049,"ext_from_open_pct":4.12,"max_ext_allowed_pct":3.0,"volume_pace":0.981,"trend":"flat","recent_slope_pct":0.0869,"volatility":"high"},"price":9.09,"volume":{"bars":119,"last_bar_volume":825.0,"baseline_avg":9242.95,"bar_rvol":0.089257,"raw_accel":-0.642971,"smooth_accel":-0.650726,"accel_momentum":-0.040028,"rvol_3bar":[0.131565,0.12596,0.089257],"trend_3bar":"DECELERATING","projected_rvol":0.969973},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1554.0,"sell_vol":915.0,"unclassified_vol":0.0,"imbalance":0.258809,"bid":9.07,"ask":9.09,"spread_pct":0.220264,"quote_size_imbalance":null,"quote_age_s":0.036715},"context":{"vwap":8.904595,"price_vs_vwap_pct":2.082129,"ema9":9.063822,"ema20":9.038029,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.10989,"dist_to_hod_atr":0.279842,"atr":0.035735,"spread_atr":0.559683,"own_change_pct":0.218543,"rel_strength_pct":{"SPY":0.236726,"IWM":0.288458}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.023101},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"5c79e66858bb","ts":"2026-09-21T15:29:26.679423+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 445.3s, plan says WATCH; stop 10.86, target 11.14 (premarket_high), R:R 1.20; R:R 1.20 < 2.0 at 10.98; breakout: 1-min close > 11.04 on >= 376742 sh","plan":{"state":"WATCH","setup":"","stop":10.8556,"target":11.14,"target_label":"premarket_high","reward_risk":1.2,"pos_in_5d_range_pct":110.3,"room_to_5d_high_atr":-0.24},"price":10.9846,"vwap":10.8216,"ext_from_open_pct":0.04,"max_ext_allowed_pct":3.0,"volume_pace":0.771,"trend":"flat","recent_slope_pct":0.1013,"volatility":"medium"},"price":10.9846,"volume":{"bars":119,"last_bar_volume":350006.0,"baseline_avg":214450.6,"bar_rvol":1.632105,"raw_accel":0.263774,"smooth_accel":0.163621,"accel_momentum":-0.221955,"rvol_3bar":[2.754449,1.304369,1.632105],"trend_3bar":"MIXED","projected_rvol":6.296194},"flow":{"window_s":30,"trades":714,"trade_rate":23.8,"buy_vol":358719.0,"sell_vol":279444.0,"unclassified_vol":0.0,"imbalance":0.124224,"bid":10.98,"ask":10.99,"spread_pct":0.091033,"quote_size_imbalance":null,"quote_age_s":0.170499},"context":{"vwap":10.819168,"price_vs_vwap_pct":1.52906,"ema9":10.935347,"ema20":10.927885,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.411605,"dist_to_hod_atr":1.475592,"atr":0.030767,"spread_atr":0.32502,"own_change_pct":0.275641,"rel_strength_pct":{"SPY":0.293824,"IWM":0.345556}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.202746},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"031519af0fef","ts":"2026-09-21T15:29:36.862084+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.67,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.125,"vwap":10.9564,"ext_from_open_pct":3.97,"max_ext_allowed_pct":3.0,"volume_pace":0.819,"trend":"flat","recent_slope_pct":-0.0463,"volatility":"unknown"},"price":11.125,"volume":{"bars":119,"last_bar_volume":49727.0,"baseline_avg":185847.9,"bar_rvol":0.267568,"raw_accel":-0.077216,"smooth_accel":-0.630379,"accel_momentum":-1.245295,"rvol_3bar":[0.24697,0.290504,0.267568],"trend_3bar":"MIXED","projected_rvol":0.793342},"flow":{"window_s":30,"trades":359,"trade_rate":11.966667,"buy_vol":59574.0,"sell_vol":15469.0,"unclassified_vol":0.0,"imbalance":0.58773,"bid":11.12,"ask":11.13,"spread_pct":0.089888,"quote_size_imbalance":null,"quote_age_s":0.332328},"context":{"vwap":10.955717,"price_vs_vwap_pct":1.54516,"ema9":11.085759,"ema20":11.033548,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.176675,"dist_to_hod_atr":4.07981,"atr":0.089465,"spread_atr":0.111776,"own_change_pct":-0.224921,"rel_strength_pct":{"SPY":-0.206739,"IWM":-0.155006}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.157258},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b0b59054f88b","ts":"2026-09-21T15:29:47.048646+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.67,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.125,"vwap":10.9566,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.819,"trend":"flat","recent_slope_pct":-0.0463,"volatility":"unknown"},"price":11.125,"volume":{"bars":119,"last_bar_volume":49727.0,"baseline_avg":185847.9,"bar_rvol":0.267568,"raw_accel":-0.077216,"smooth_accel":-0.630379,"accel_momentum":-1.245295,"rvol_3bar":[0.24697,0.290504,0.267568],"trend_3bar":"MIXED","projected_rvol":0.773854},"flow":{"window_s":30,"trades":245,"trade_rate":8.166667,"buy_vol":42409.0,"sell_vol":14470.0,"unclassified_vol":0.0,"imbalance":0.491201,"bid":11.12,"ask":11.13,"spread_pct":0.089888,"quote_size_imbalance":null,"quote_age_s":0.541089},"context":{"vwap":10.955717,"price_vs_vwap_pct":1.54516,"ema9":11.085759,"ema20":11.033548,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.176675,"dist_to_hod_atr":4.07981,"atr":0.089465,"spread_atr":0.111776,"own_change_pct":-0.224921,"rel_strength_pct":{"SPY":-0.206739,"IWM":-0.155006}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.13143},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"366c2cd77ddf","ts":"2026-09-21T15:29:52.167162+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.63,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.13,"vwap":10.9566,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":0.819,"trend":"flat","recent_slope_pct":-0.0373,"volatility":"unknown"},"price":11.13,"volume":{"bars":119,"last_bar_volume":49727.0,"baseline_avg":185847.9,"bar_rvol":0.267568,"raw_accel":-0.077216,"smooth_accel":-0.630379,"accel_momentum":-1.245295,"rvol_3bar":[0.24697,0.290504,0.267568],"trend_3bar":"MIXED","projected_rvol":0.698483},"flow":{"window_s":30,"trades":249,"trade_rate":8.3,"buy_vol":42493.0,"sell_vol":14208.0,"unclassified_vol":0.0,"imbalance":0.498845,"bid":11.12,"ask":11.13,"spread_pct":0.089888,"quote_size_imbalance":null,"quote_age_s":5.659605},"context":{"vwap":10.955717,"price_vs_vwap_pct":1.590798,"ema9":11.085759,"ema20":11.033548,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.133159,"dist_to_hod_atr":4.023922,"atr":0.089465,"spread_atr":0.111776,"own_change_pct":-0.224921,"rel_strength_pct":{"SPY":-0.206739,"IWM":-0.155006}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.133475},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5decbf40e16e","ts":"2026-09-21T15:29:57.220433+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.115,"vwap":10.9566,"ext_from_open_pct":3.88,"max_ext_allowed_pct":4.0,"volume_pace":0.818,"trend":"flat","recent_slope_pct":-0.0644,"volatility":"unknown"},"price":11.115,"volume":{"bars":119,"last_bar_volume":49727.0,"baseline_avg":185847.9,"bar_rvol":0.267568,"raw_accel":-0.077216,"smooth_accel":-0.630379,"accel_momentum":-1.245295,"rvol_3bar":[0.24697,0.290504,0.267568],"trend_3bar":"MIXED","projected_rvol":0.664162},"flow":{"window_s":30,"trades":125,"trade_rate":4.166667,"buy_vol":21692.0,"sell_vol":6548.0,"unclassified_vol":0.0,"imbalance":0.536261,"bid":11.11,"ask":11.12,"spread_pct":0.089969,"quote_size_imbalance":null,"quote_age_s":1.270676},"context":{"vwap":10.955717,"price_vs_vwap_pct":1.453883,"ema9":11.085759,"ema20":11.033548,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.263708,"dist_to_hod_atr":4.191585,"atr":0.089465,"spread_atr":0.111776,"own_change_pct":-0.224921,"rel_strength_pct":{"SPY":-0.206739,"IWM":-0.155006}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.143486},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4dd2427be4dd","ts":"2026-09-21T15:29:57.220433+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 475.8s, plan says PASS; stop 10.82, target 11.03 (ceiling), R:R 0.66; R:R 0.66 < 2.0 at 10.95; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.816,"target":11.03,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":107.0,"room_to_5d_high_atr":-0.16},"price":10.945,"vwap":10.8276,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.806,"trend":"flat","recent_slope_pct":0.029,"volatility":"medium"},"price":10.945,"volume":{"bars":119,"last_bar_volume":350006.0,"baseline_avg":214450.6,"bar_rvol":1.632105,"raw_accel":0.263774,"smooth_accel":0.163621,"accel_momentum":-0.221955,"rvol_3bar":[2.754449,1.304369,1.632105],"trend_3bar":"MIXED","projected_rvol":12.333411},"flow":{"window_s":30,"trades":2035,"trade_rate":67.833333,"buy_vol":977157.0,"sell_vol":944649.0,"unclassified_vol":0.0,"imbalance":0.016915,"bid":10.94,"ask":10.95,"spread_pct":0.091366,"quote_size_imbalance":null,"quote_age_s":0.110564},"context":{"vwap":10.819168,"price_vs_vwap_pct":1.163043,"ema9":10.935347,"ema20":10.927885,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.770626,"dist_to_hod_atr":2.762672,"atr":0.030767,"spread_atr":0.32502,"own_change_pct":0.275641,"rel_strength_pct":{"SPY":0.293824,"IWM":0.345556}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.027608},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d97ea4afbd5f","ts":"2026-09-21T15:30:02.301654+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.0502,"target":5.1483,"target_label":"premarket_high","reward_risk":0.13,"pos_in_5d_range_pct":67.2,"room_to_5d_high_atr":0.64},"price":5.1369,"vwap":5.0877,"ext_from_open_pct":-0.83,"max_ext_allowed_pct":3.0,"volume_pace":0.321,"trend":"flat","recent_slope_pct":-0.0023,"volatility":"high"},"price":5.1369,"volume":{"bars":120,"last_bar_volume":13210.0,"baseline_avg":29716.4,"bar_rvol":0.444536,"raw_accel":0.778143,"smooth_accel":-0.319755,"accel_momentum":-0.412182,"rvol_3bar":[0.736789,0.049912,0.444536],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1633.0,"sell_vol":1115.0,"unclassified_vol":0.0,"imbalance":0.188501,"bid":5.12,"ask":5.13,"spread_pct":0.195122,"quote_size_imbalance":null,"quote_age_s":2.089247},"context":{"vwap":5.087734,"price_vs_vwap_pct":0.966355,"ema9":5.12519,"ema20":5.113989,"ema_stack":true,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.403071,"dist_to_hod_atr":3.763235,"atr":0.019425,"spread_atr":0.514806,"own_change_pct":-0.485909,"rel_strength_pct":{"SPY":-0.476168,"IWM":-0.433476}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.083795},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"68cb9f904181","ts":"2026-09-21T15:30:02.301654+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":0.92,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.095,"vwap":10.9568,"ext_from_open_pct":3.69,"max_ext_allowed_pct":3.0,"volume_pace":0.819,"trend":"flat","recent_slope_pct":-0.0323,"volatility":"unknown"},"price":11.095,"volume":{"bars":120,"last_bar_volume":117821.0,"baseline_avg":185396.95,"bar_rvol":0.635507,"raw_accel":1.369357,"smooth_accel":-0.44462,"accel_momentum":0.185759,"rvol_3bar":[0.290504,0.267568,0.635507],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":203,"trade_rate":6.766667,"buy_vol":38145.0,"sell_vol":13878.0,"unclassified_vol":0.0,"imbalance":0.466467,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":0.105999},"context":{"vwap":10.956624,"price_vs_vwap_pct":1.262944,"ema9":11.089047,"ema20":11.040086,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.437772,"dist_to_hod_atr":4.57386,"atr":0.08636,"spread_atr":0.115794,"own_change_pct":-0.339318,"rel_strength_pct":{"SPY":-0.329577,"IWM":-0.286885}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.296443},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bbc9222cfb67","ts":"2026-09-21T15:30:07.625985+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.14,"target":9.09,"target_label":"range_20d_high","reward_risk":8.5,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.24,"vwap":8.2078,"ext_from_open_pct":2.87,"max_ext_allowed_pct":5.0,"volume_pace":3.649,"trend":"flat","recent_slope_pct":0.1645,"volatility":"unknown"},"price":8.24,"volume":{"bars":119,"last_bar_volume":375.0,"baseline_avg":899.0,"bar_rvol":0.41713,"raw_accel":0.132931,"smooth_accel":-0.758653,"accel_momentum":-0.174934,"rvol_3bar":[0.599726,0.359607,0.41713],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":129.0,"sell_vol":18.0,"unclassified_vol":0.0,"imbalance":0.755102,"bid":8.19,"ask":8.24,"spread_pct":0.608643,"quote_size_imbalance":null,"quote_age_s":43.846152},"context":{"vwap":8.207754,"price_vs_vwap_pct":0.392874,"ema9":8.20468,"ema20":8.203913,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.962704,"dist_to_hod_atr":8.166205,"atr":0.041635,"spread_atr":1.200913,"own_change_pct":-0.091213,"rel_strength_pct":{"SPY":-0.081472,"IWM":-0.03878}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.314976},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0b79545ff845","ts":"2026-09-21T15:30:07.625985+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6015,"target":9.74,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":107.5,"room_to_5d_high_atr":-0.08},"price":9.7,"vwap":9.6813,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.785,"trend":"flat","recent_slope_pct":-0.0965,"volatility":"medium"},"price":9.7,"volume":{"bars":120,"last_bar_volume":7982.0,"baseline_avg":9693.65,"bar_rvol":0.823426,"raw_accel":-0.676541,"smooth_accel":-0.241837,"accel_momentum":0.024827,"rvol_3bar":[1.330684,2.805974,0.823426],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":831.0,"sell_vol":1294.0,"unclassified_vol":0.0,"imbalance":-0.217882,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":0.71373},"context":{"vwap":9.681334,"price_vs_vwap_pct":0.192804,"ema9":9.731243,"ema20":9.726948,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.322482,"dist_to_hod_atr":4.195377,"atr":0.030986,"spread_atr":0.322721,"own_change_pct":-0.328782,"rel_strength_pct":{"SPY":-0.319041,"IWM":-0.276349}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.17941},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"02f8cfddcc0b","ts":"2026-09-21T15:30:12.816417+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7316,"target":9.3,"target_label":"premarket_high","reward_risk":4.22,"pos_in_5d_range_pct":89.8,"room_to_5d_high_atr":0.17},"price":8.8405,"vwap":8.6551,"ext_from_open_pct":1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.906,"trend":"flat","recent_slope_pct":-0.0219,"volatility":"medium"},"price":8.8405,"volume":{"bars":120,"last_bar_volume":13525.0,"baseline_avg":30430.25,"bar_rvol":0.444459,"raw_accel":0.777836,"smooth_accel":-0.482245,"accel_momentum":-1.78168,"rvol_3bar":[0.492883,0.157091,0.444459],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2424.0,"sell_vol":3553.0,"unclassified_vol":0.0,"imbalance":-0.188891,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.019669},"context":{"vwap":8.654804,"price_vs_vwap_pct":2.145587,"ema9":8.841477,"ema20":8.831276,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":-0.44482,"dist_to_hod_atr":0.960647,"atr":0.041118,"spread_atr":0.243202,"own_change_pct":-0.082651,"rel_strength_pct":{"SPY":-0.07291,"IWM":-0.030218}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.083954},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a63aa7406b9b","ts":"2026-09-21T15:30:12.816417+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9337,"target":12.5,"target_label":"range_20d_high","reward_risk":24.4,"pos_in_5d_range_pct":154.6,"room_to_5d_high_atr":-0.72},"price":9.0741,"vwap":8.9049,"ext_from_open_pct":3.94,"max_ext_allowed_pct":4.0,"volume_pace":0.973,"trend":"flat","recent_slope_pct":0.046,"volatility":"high"},"price":9.0741,"volume":{"bars":120,"last_bar_volume":2671.0,"baseline_avg":9168.65,"bar_rvol":0.291319,"raw_accel":0.165275,"smooth_accel":-0.502647,"accel_momentum":0.148079,"rvol_3bar":[0.12596,0.089257,0.291319],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":12.0,"sell_vol":40.0,"unclassified_vol":0.0,"imbalance":-0.538462,"bid":9.07,"ask":9.09,"spread_pct":0.220264,"quote_size_imbalance":null,"quote_age_s":50.004893},"context":{"vwap":8.90494,"price_vs_vwap_pct":1.899625,"ema9":9.067757,"ema20":9.042359,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.284615,"dist_to_hod_atr":0.748325,"atr":0.034611,"spread_atr":0.577857,"own_change_pct":0.148842,"rel_strength_pct":{"SPY":0.158583,"IWM":0.201275}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.156864},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ca2c3fc40e2b","ts":"2026-09-21T15:30:17.964683+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.73 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.9461,"target":12.5,"target_label":"range_20d_high","reward_risk":24.31,"pos_in_5d_range_pct":156.3,"room_to_5d_high_atr":-0.74},"price":9.0865,"vwap":8.9049,"ext_from_open_pct":4.08,"max_ext_allowed_pct":4.0,"volume_pace":0.972,"trend":"flat","recent_slope_pct":0.0733,"volatility":"high"},"price":9.0865,"volume":{"bars":120,"last_bar_volume":2671.0,"baseline_avg":9168.65,"bar_rvol":0.291319,"raw_accel":0.165275,"smooth_accel":-0.502647,"accel_momentum":0.148079,"rvol_3bar":[0.12596,0.089257,0.291319],"trend_3bar":"MIXED","projected_rvol":0.0051},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":13.0,"sell_vol":11.0,"unclassified_vol":0.0,"imbalance":0.083333,"bid":9.07,"ask":9.09,"spread_pct":0.220264,"quote_size_imbalance":null,"quote_age_s":55.153159},"context":{"vwap":8.90494,"price_vs_vwap_pct":2.038874,"ema9":9.067757,"ema20":9.042359,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.148352,"dist_to_hod_atr":0.390054,"atr":0.034611,"spread_atr":0.577857,"own_change_pct":0.148842,"rel_strength_pct":{"SPY":0.158583,"IWM":0.201275}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.024277},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"383113be0bde","ts":"2026-09-21T15:30:43.888332+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.5865,"target":9.74,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":103.8,"room_to_5d_high_atr":-0.04},"price":9.685,"vwap":9.6814,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.1274,"volatility":"medium"},"price":9.685,"volume":{"bars":120,"last_bar_volume":7982.0,"baseline_avg":9693.65,"bar_rvol":0.823426,"raw_accel":-0.676541,"smooth_accel":-0.241837,"accel_momentum":0.024827,"rvol_3bar":[1.330684,2.805974,0.823426],"trend_3bar":"MIXED","projected_rvol":0.606716},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":2438.0,"sell_vol":487.0,"unclassified_vol":0.0,"imbalance":0.667009,"bid":9.68,"ask":9.69,"spread_pct":0.103252,"quote_size_imbalance":null,"quote_age_s":0.444731},"context":{"vwap":9.681334,"price_vs_vwap_pct":0.037866,"ema9":9.731243,"ema20":9.726948,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.475076,"dist_to_hod_atr":4.679459,"atr":0.030986,"spread_atr":0.322721,"own_change_pct":-0.328782,"rel_strength_pct":{"SPY":-0.319041,"IWM":-0.276349}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.549232},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"66ab0be53f1c","ts":"2026-09-21T15:30:59.300899+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.20 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.118,"target":9.09,"target_label":"range_20d_high","reward_risk":10.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2,"vwap":8.2078,"ext_from_open_pct":2.37,"max_ext_allowed_pct":4.0,"volume_pace":3.63,"trend":"flat","recent_slope_pct":0.0671,"volatility":"unknown"},"price":8.2,"volume":{"bars":119,"last_bar_volume":375.0,"baseline_avg":899.0,"bar_rvol":0.41713,"raw_accel":0.132931,"smooth_accel":-0.758653,"accel_momentum":-0.174934,"rvol_3bar":[0.599726,0.359607,0.41713],"trend_3bar":"MIXED","projected_rvol":1.563265},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":103.0,"sell_vol":1132.0,"unclassified_vol":0.0,"imbalance":-0.833198,"bid":8.2,"ask":8.24,"spread_pct":0.486618,"quote_size_imbalance":null,"quote_age_s":0.038096},"context":{"vwap":8.207754,"price_vs_vwap_pct":-0.09447,"ema9":8.20468,"ema20":8.203913,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.428904,"dist_to_hod_atr":9.126935,"atr":0.041635,"spread_atr":0.96073,"own_change_pct":-0.091213,"rel_strength_pct":{"SPY":-0.081472,"IWM":-0.03878}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.347552},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e045b6e9905f","ts":"2026-09-21T15:31:04.360121+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1358,"target":9.09,"target_label":"range_20d_high","reward_risk":10.61,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.218,"vwap":8.2078,"ext_from_open_pct":2.6,"max_ext_allowed_pct":4.0,"volume_pace":3.628,"trend":"flat","recent_slope_pct":0.0683,"volatility":"unknown"},"price":8.218,"volume":{"bars":120,"last_bar_volume":1389.0,"baseline_avg":839.5,"bar_rvol":1.654556,"raw_accel":2.704,"smooth_accel":-0.619229,"accel_momentum":0.139423,"rvol_3bar":[0.359607,0.41713,1.654556],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":141.0,"sell_vol":1132.0,"unclassified_vol":0.0,"imbalance":-0.778476,"bid":8.2,"ask":8.24,"spread_pct":0.486618,"quote_size_imbalance":null,"quote_age_s":5.097318},"context":{"vwap":8.207765,"price_vs_vwap_pct":0.124694,"ema9":8.203744,"ema20":8.20354,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.219114,"dist_to_hod_atr":8.719064,"atr":0.041518,"spread_atr":0.963432,"own_change_pct":-0.121803,"rel_strength_pct":{"SPY":-0.115959,"IWM":-0.064378}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.288032},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"beb3fb5e9335","ts":"2026-09-21T15:31:04.360121+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.9692,"target":11.275,"target_label":"range_20d_high","reward_risk":1.76,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.08,"vwap":10.957,"ext_from_open_pct":3.55,"max_ext_allowed_pct":3.0,"volume_pace":0.813,"trend":"flat","recent_slope_pct":-0.018,"volatility":"unknown"},"price":11.08,"volume":{"bars":121,"last_bar_volume":56691.0,"baseline_avg":184847.05,"bar_rvol":0.306691,"raw_accel":-0.518838,"smooth_accel":-0.359493,"accel_momentum":0.085127,"rvol_3bar":[0.267568,0.635507,0.306691],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":4748.0,"sell_vol":3692.0,"unclassified_vol":0.0,"imbalance":0.125118,"bid":11.08,"ask":11.09,"spread_pct":0.090212,"quote_size_imbalance":null,"quote_age_s":2.191568},"context":{"vwap":10.957008,"price_vs_vwap_pct":1.122499,"ema9":11.087237,"ema20":11.043887,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.56832,"dist_to_hod_atr":4.91824,"atr":0.083363,"spread_atr":0.119957,"own_change_pct":-0.493938,"rel_strength_pct":{"SPY":-0.488094,"IWM":-0.436514}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.038373},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9016a98bffa5","ts":"2026-09-21T15:31:14.504964+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.02 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.1299,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0159,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.234,"trend":"flat","recent_slope_pct":-0.0836,"volatility":"medium"},"price":9.015,"volume":{"bars":121,"last_bar_volume":5962.0,"baseline_avg":12540.35,"bar_rvol":0.475425,"raw_accel":-0.220959,"smooth_accel":0.126094,"accel_momentum":-0.270269,"rvol_3bar":[1.610892,0.588869,0.475425],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":5958.0,"sell_vol":5412.0,"unclassified_vol":0.0,"imbalance":0.048021,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.138697},"context":{"vwap":9.015907,"price_vs_vwap_pct":-0.01006,"ema9":9.040214,"ema20":9.039132,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":4.740264,"atr":0.024239,"spread_atr":0.412556,"own_change_pct":-0.318158,"rel_strength_pct":{"SPY":-0.312314,"IWM":-0.260734}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.02283},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"6b7abb6c3756","ts":"2026-09-21T15:31:35.015902+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9365,"target":12.5,"target_label":"range_20d_high","reward_risk":24.38,"pos_in_5d_range_pct":155.0,"room_to_5d_high_atr":-0.72},"price":9.0769,"vwap":8.9054,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":0.0154,"volatility":"high"},"price":9.0769,"volume":{"bars":121,"last_bar_volume":873.0,"baseline_avg":9256.45,"bar_rvol":0.094313,"raw_accel":-0.673156,"smooth_accel":-0.139961,"accel_momentum":0.362687,"rvol_3bar":[0.089257,0.291319,0.094313],"trend_3bar":"MIXED","projected_rvol":0.553309},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":881.0,"sell_vol":1959.0,"unclassified_vol":0.0,"imbalance":-0.379577,"bid":9.06,"ask":9.09,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":0.855441},"context":{"vwap":8.905052,"price_vs_vwap_pct":1.929781,"ema9":9.070206,"ema20":9.045944,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.253846,"dist_to_hod_atr":0.694382,"atr":0.033267,"spread_atr":0.901795,"own_change_pct":0.21522,"rel_strength_pct":{"SPY":0.221064,"IWM":0.272644}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.035799},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"279c8ee9ece4","ts":"2026-09-21T15:31:50.513283+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.73 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.9455,"target":12.5,"target_label":"range_20d_high","reward_risk":24.32,"pos_in_5d_range_pct":156.2,"room_to_5d_high_atr":-0.74},"price":9.0859,"vwap":8.9054,"ext_from_open_pct":4.08,"max_ext_allowed_pct":4.0,"volume_pace":0.963,"trend":"flat","recent_slope_pct":0.0352,"volatility":"high"},"price":9.0859,"volume":{"bars":121,"last_bar_volume":873.0,"baseline_avg":9256.45,"bar_rvol":0.094313,"raw_accel":-0.673156,"smooth_accel":-0.139961,"accel_momentum":0.362687,"rvol_3bar":[0.089257,0.291319,0.094313],"trend_3bar":"MIXED","projected_rvol":0.383811},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":313.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":9.06,"ask":9.09,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":0.159832},"context":{"vwap":8.905052,"price_vs_vwap_pct":2.030847,"ema9":9.070206,"ema20":9.045944,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.154945,"dist_to_hod_atr":0.423843,"atr":0.033267,"spread_atr":0.901795,"own_change_pct":0.21522,"rel_strength_pct":{"SPY":0.221064,"IWM":0.272644}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.094313},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5ce0df5dc140","ts":"2026-09-21T15:31:55.741507+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9346,"target":12.5,"target_label":"range_20d_high","reward_risk":24.4,"pos_in_5d_range_pct":154.7,"room_to_5d_high_atr":-0.72},"price":9.075,"vwap":8.9054,"ext_from_open_pct":3.95,"max_ext_allowed_pct":4.0,"volume_pace":0.962,"trend":"flat","recent_slope_pct":0.0112,"volatility":"high"},"price":9.075,"volume":{"bars":121,"last_bar_volume":873.0,"baseline_avg":9256.45,"bar_rvol":0.094313,"raw_accel":-0.673156,"smooth_accel":-0.139961,"accel_momentum":0.362687,"rvol_3bar":[0.089257,0.291319,0.094313],"trend_3bar":"MIXED","projected_rvol":0.349556},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":213.0,"sell_vol":15.0,"unclassified_vol":0.0,"imbalance":0.868421,"bid":9.06,"ask":9.09,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":0.948422},"context":{"vwap":8.905052,"price_vs_vwap_pct":1.908445,"ema9":9.070206,"ema20":9.045944,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.274725,"dist_to_hod_atr":0.751496,"atr":0.033267,"spread_atr":0.901795,"own_change_pct":0.21522,"rel_strength_pct":{"SPY":0.221064,"IWM":0.272644}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.081903},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"51ddebdfede9","ts":"2026-09-21T15:32:00.919915+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7121,"target":8.88,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":87.1,"room_to_5d_high_atr":0.22},"price":8.821,"vwap":8.6565,"ext_from_open_pct":1.16,"max_ext_allowed_pct":4.0,"volume_pace":0.901,"trend":"flat","recent_slope_pct":-0.0918,"volatility":"medium"},"price":8.821,"volume":{"bars":122,"last_bar_volume":24539.0,"baseline_avg":23234.55,"bar_rvol":1.056143,"raw_accel":1.7822,"smooth_accel":-0.292306,"accel_momentum":0.322332,"rvol_3bar":[0.444459,0.356977,1.056143],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":7707.0,"sell_vol":1757.0,"unclassified_vol":0.0,"imbalance":0.628698,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":0.12414},"context":{"vwap":8.65647,"price_vs_vwap_pct":1.900663,"ema9":8.828345,"ema20":8.826509,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":-0.664414,"dist_to_hod_atr":1.385431,"atr":0.042586,"spread_atr":0.234819,"own_change_pct":-0.407194,"rel_strength_pct":{"SPY":-0.404596,"IWM":-0.400479}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.663995},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a17e1b89c8b0","ts":"2026-09-21T15:32:06.214020+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6961,"target":8.82,"target_label":"prev_day_high","reward_risk":0.14,"pos_in_5d_range_pct":84.9,"room_to_5d_high_atr":0.25},"price":8.805,"vwap":8.6565,"ext_from_open_pct":0.97,"max_ext_allowed_pct":3.0,"volume_pace":0.901,"trend":"flat","recent_slope_pct":-0.1281,"volatility":"medium"},"price":8.805,"volume":{"bars":122,"last_bar_volume":24539.0,"baseline_avg":23234.55,"bar_rvol":1.056143,"raw_accel":1.7822,"smooth_accel":-0.292306,"accel_momentum":0.322332,"rvol_3bar":[0.444459,0.356977,1.056143],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":5655.0,"sell_vol":1950.0,"unclassified_vol":0.0,"imbalance":0.487179,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":0.25539},"context":{"vwap":8.65647,"price_vs_vwap_pct":1.71583,"ema9":8.828345,"ema20":8.826509,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":-0.844595,"dist_to_hod_atr":1.761141,"atr":0.042586,"spread_atr":0.234819,"own_change_pct":-0.407194,"rel_strength_pct":{"SPY":-0.404596,"IWM":-0.400479}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.514531},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"87cc6af04311","ts":"2026-09-21T15:32:06.214020+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":11.0028,"target":11.275,"target_label":"range_20d_high","reward_risk":1.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.1139,"vwap":10.9572,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":0.0186,"volatility":"unknown"},"price":11.1139,"volume":{"bars":122,"last_bar_volume":21820.0,"baseline_avg":103931.0,"bar_rvol":0.209947,"raw_accel":-0.615106,"smooth_accel":0.310566,"accel_momentum":0.670059,"rvol_3bar":[0.635507,0.306691,0.209947],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":7113.0,"sell_vol":3697.0,"unclassified_vol":0.0,"imbalance":0.316004,"bid":11.07,"ask":11.08,"spread_pct":0.090293,"quote_size_imbalance":null,"quote_age_s":2.171388},"context":{"vwap":10.957147,"price_vs_vwap_pct":1.430598,"ema9":11.08479,"ema20":11.046851,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.273281,"dist_to_hod_atr":4.649274,"atr":0.080894,"spread_atr":0.123618,"own_change_pct":-0.418109,"rel_strength_pct":{"SPY":-0.415511,"IWM":-0.411395}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.066344},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"ed615361d472","ts":"2026-09-21T15:32:06.214020+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.5965,"target":9.74,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":106.3,"room_to_5d_high_atr":-0.06},"price":9.695,"vwap":9.6815,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-0.0425,"volatility":"medium"},"price":9.695,"volume":{"bars":122,"last_bar_volume":11596.0,"baseline_avg":9315.2,"bar_rvol":1.244847,"raw_accel":1.097685,"smooth_accel":-0.403545,"accel_momentum":-0.519275,"rvol_3bar":[0.823426,0.587907,1.244847],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":9968.0,"sell_vol":1639.0,"unclassified_vol":0.0,"imbalance":0.717584,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":1.204299},"context":{"vwap":9.681538,"price_vs_vwap_pct":0.13905,"ema9":9.715596,"ema20":9.719814,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.373347,"dist_to_hod_atr":3.942066,"atr":0.034246,"spread_atr":0.292005,"own_change_pct":-0.615385,"rel_strength_pct":{"SPY":-0.612787,"IWM":-0.60867}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.893283},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0b32f668267b","ts":"2026-09-21T15:32:11.384920+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.9328,"target":12.5,"target_label":"range_20d_high","reward_risk":24.41,"pos_in_5d_range_pct":154.5,"room_to_5d_high_atr":-0.72},"price":9.0732,"vwap":8.9054,"ext_from_open_pct":3.93,"max_ext_allowed_pct":3.0,"volume_pace":0.96,"trend":"flat","recent_slope_pct":-0.0239,"volatility":"high"},"price":9.0732,"volume":{"bars":122,"last_bar_volume":3006.0,"baseline_avg":9169.25,"bar_rvol":0.327835,"raw_accel":0.31134,"smooth_accel":0.988464,"accel_momentum":1.128425,"rvol_3bar":[0.291319,0.094313,0.327835],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":2.0,"sell_vol":58.0,"unclassified_vol":0.0,"imbalance":-0.933333,"bid":9.06,"ask":9.09,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":0.162146},"context":{"vwap":8.90543,"price_vs_vwap_pct":1.883908,"ema9":9.071165,"ema20":9.048711,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.294505,"dist_to_hod_atr":0.825031,"atr":0.032484,"spread_atr":0.923542,"own_change_pct":0.165563,"rel_strength_pct":{"SPY":0.168161,"IWM":0.172277}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.305979},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"396fbbca484f","ts":"2026-09-21T15:32:11.384920+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":10.9,"target":11.275,"target_label":"range_20d_high","reward_risk":1.14,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.075,"vwap":10.9572,"ext_from_open_pct":3.5,"max_ext_allowed_pct":4.0,"volume_pace":0.806,"trend":"flat","recent_slope_pct":-0.0516,"volatility":"unknown"},"price":11.075,"volume":{"bars":122,"last_bar_volume":21820.0,"baseline_avg":103931.0,"bar_rvol":0.209947,"raw_accel":-0.615106,"smooth_accel":0.310566,"accel_momentum":0.670059,"rvol_3bar":[0.635507,0.306691,0.209947],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":3678.0,"sell_vol":1509.0,"unclassified_vol":0.0,"imbalance":0.418161,"bid":11.07,"ask":11.08,"spread_pct":0.090293,"quote_size_imbalance":null,"quote_age_s":0.898712},"context":{"vwap":10.957147,"price_vs_vwap_pct":1.075579,"ema9":11.08479,"ema20":11.046851,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.611836,"dist_to_hod_atr":5.130148,"atr":0.080894,"spread_atr":0.123618,"own_change_pct":-0.418109,"rel_strength_pct":{"SPY":-0.415511,"IWM":-0.411395}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.087792},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"c3d97f5d0d30","ts":"2026-09-21T15:32:16.501688+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.0289,"target":6.12,"target_label":"range_20d_high","reward_risk":11.58,"pos_in_5d_range_pct":64.1,"room_to_5d_high_atr":0.7},"price":5.1156,"vwap":5.088,"ext_from_open_pct":-1.24,"max_ext_allowed_pct":3.0,"volume_pace":0.318,"trend":"flat","recent_slope_pct":-0.0172,"volatility":"high"},"price":5.1156,"volume":{"bars":122,"last_bar_volume":11435.0,"baseline_avg":30558.85,"bar_rvol":0.374196,"raw_accel":-0.487082,"smooth_accel":-0.140956,"accel_momentum":0.372432,"rvol_3bar":[0.444536,0.745548,0.374196],"trend_3bar":"MIXED","projected_rvol":0.130049},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":2707.0,"sell_vol":4400.0,"unclassified_vol":0.0,"imbalance":-0.238216,"bid":5.11,"ask":5.12,"spread_pct":0.195503,"quote_size_imbalance":null,"quote_age_s":3.076918},"context":{"vwap":5.087974,"price_vs_vwap_pct":0.542967,"ema9":5.122522,"ema20":5.114649,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.8119,"dist_to_hod_atr":4.603861,"atr":0.020505,"spread_atr":0.487697,"own_change_pct":-0.292113,"rel_strength_pct":{"SPY":-0.289515,"IWM":-0.285398}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.089139},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8a1844e36336","ts":"2026-09-21T15:32:16.501688+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.5865,"target":9.74,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":103.8,"room_to_5d_high_atr":-0.04},"price":9.685,"vwap":9.6816,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.782,"trend":"flat","recent_slope_pct":-0.0631,"volatility":"medium"},"price":9.685,"volume":{"bars":122,"last_bar_volume":11596.0,"baseline_avg":9315.2,"bar_rvol":1.244847,"raw_accel":1.097685,"smooth_accel":-0.403545,"accel_momentum":-0.519275,"rvol_3bar":[0.823426,0.587907,1.244847],"trend_3bar":"MIXED","projected_rvol":2.287327},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":5633.0,"sell_vol":3417.0,"unclassified_vol":0.0,"imbalance":0.244862,"bid":9.68,"ask":9.69,"spread_pct":0.103252,"quote_size_imbalance":null,"quote_age_s":0.869144},"context":{"vwap":9.681538,"price_vs_vwap_pct":0.035761,"ema9":9.715596,"ema20":9.719814,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.475076,"dist_to_hod_atr":4.234071,"atr":0.034246,"spread_atr":0.292005,"own_change_pct":-0.615385,"rel_strength_pct":{"SPY":-0.612787,"IWM":-0.60867}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.304816},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"96c44ad245fd","ts":"2026-09-21T15:32:26.677510+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1214.0s, plan says PASS; stop 8.60, target 9.94 (range_20d_high), R:R 12.12; target 1.23 away > ~0.17 reachable in 263 min","plan":{"state":"PASS","setup":"","stop":8.6031,"target":9.94,"target_label":"range_20d_high","reward_risk":12.12,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.87},"price":8.705,"vwap":8.6114,"ext_from_open_pct":0.99,"max_ext_allowed_pct":3.0,"volume_pace":1.11,"trend":"flat","recent_slope_pct":0.0935,"volatility":"medium"},"price":8.705,"volume":{"bars":122,"last_bar_volume":2044.0,"baseline_avg":2046.75,"bar_rvol":0.998656,"raw_accel":2.792208,"smooth_accel":-0.345783,"accel_momentum":0.251798,"rvol_3bar":[0.095651,0.258699,0.998656],"trend_3bar":"ACCELERATING","projected_rvol":148.601722},"flow":{"window_s":30,"trades":325,"trade_rate":10.833333,"buy_vol":24631.0,"sell_vol":110602.0,"unclassified_vol":0.0,"imbalance":-0.635725,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":0.80349},"context":{"vwap":8.588688,"price_vs_vwap_pct":1.354246,"ema9":8.667428,"ema20":8.66211,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.514286,"dist_to_hod_atr":2.639355,"atr":0.01705,"spread_atr":0.586523,"own_change_pct":0.048471,"rel_strength_pct":{"SPY":0.051068,"IWM":0.055185}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.634871},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"721aa6ab07d6","ts":"2026-09-21T15:32:26.677510+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.0233,"target":5.1483,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":63.2,"room_to_5d_high_atr":0.72},"price":5.11,"vwap":5.088,"ext_from_open_pct":-1.35,"max_ext_allowed_pct":3.0,"volume_pace":0.317,"trend":"flat","recent_slope_pct":-0.0391,"volatility":"high"},"price":5.11,"volume":{"bars":122,"last_bar_volume":11435.0,"baseline_avg":30558.85,"bar_rvol":0.374196,"raw_accel":-0.487082,"smooth_accel":-0.140956,"accel_momentum":0.372432,"rvol_3bar":[0.444536,0.745548,0.374196],"trend_3bar":"MIXED","projected_rvol":0.125191},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":901.0,"sell_vol":4810.0,"unclassified_vol":0.0,"imbalance":-0.684469,"bid":5.11,"ask":5.12,"spread_pct":0.195503,"quote_size_imbalance":null,"quote_age_s":2.829714},"context":{"vwap":5.087974,"price_vs_vwap_pct":0.432904,"ema9":5.122522,"ema20":5.114649,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.919386,"dist_to_hod_atr":4.876972,"atr":0.020505,"spread_atr":0.487697,"own_change_pct":-0.292113,"rel_strength_pct":{"SPY":-0.289515,"IWM":-0.285398}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.256125},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bd647826d2ed","ts":"2026-09-21T15:32:31.769622+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.0283,"target":6.12,"target_label":"range_20d_high","reward_risk":11.59,"pos_in_5d_range_pct":64.0,"room_to_5d_high_atr":0.71},"price":5.115,"vwap":5.088,"ext_from_open_pct":-1.25,"max_ext_allowed_pct":3.0,"volume_pace":0.317,"trend":"flat","recent_slope_pct":-0.0195,"volatility":"high"},"price":5.115,"volume":{"bars":122,"last_bar_volume":11435.0,"baseline_avg":30558.85,"bar_rvol":0.374196,"raw_accel":-0.487082,"smooth_accel":-0.140956,"accel_momentum":0.372432,"rvol_3bar":[0.444536,0.745548,0.374196],"trend_3bar":"MIXED","projected_rvol":0.371739},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":5155.0,"sell_vol":850.0,"unclassified_vol":0.0,"imbalance":0.716903,"bid":5.11,"ask":5.12,"spread_pct":0.195503,"quote_size_imbalance":null,"quote_age_s":1.390471},"context":{"vwap":5.087974,"price_vs_vwap_pct":0.531175,"ema9":5.122522,"ema20":5.114649,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.823417,"dist_to_hod_atr":4.633123,"atr":0.020505,"spread_atr":0.487697,"own_change_pct":-0.292113,"rel_strength_pct":{"SPY":-0.289515,"IWM":-0.285398}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.268262},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"34d48099f50c","ts":"2026-09-21T15:32:41.989204+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9346,"target":12.5,"target_label":"range_20d_high","reward_risk":24.4,"pos_in_5d_range_pct":154.7,"room_to_5d_high_atr":-0.72},"price":9.075,"vwap":8.9055,"ext_from_open_pct":3.95,"max_ext_allowed_pct":4.0,"volume_pace":0.957,"trend":"flat","recent_slope_pct":-0.0199,"volatility":"high"},"price":9.075,"volume":{"bars":122,"last_bar_volume":3006.0,"baseline_avg":9169.25,"bar_rvol":0.327835,"raw_accel":0.31134,"smooth_accel":0.988464,"accel_momentum":1.128425,"rvol_3bar":[0.291319,0.094313,0.327835],"trend_3bar":"MIXED","projected_rvol":0.124049},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":151.0,"sell_vol":452.0,"unclassified_vol":0.0,"imbalance":-0.499171,"bid":9.06,"ask":9.09,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":1.067298},"context":{"vwap":8.90543,"price_vs_vwap_pct":1.904121,"ema9":9.071165,"ema20":9.048711,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.274725,"dist_to_hod_atr":0.769618,"atr":0.032484,"spread_atr":0.923542,"own_change_pct":0.165563,"rel_strength_pct":{"SPY":0.168161,"IWM":0.172277}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.163646},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"61390443e1f8","ts":"2026-09-21T15:32:52.223417+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1239.6s, plan says WATCH; stop 8.57, target 8.75 (ceiling), R:R 0.75; selling not fading: red-bar volume 1.28x the advance (max 0.7); imbalance -100% still heavy selling; no reclaim yet (needs a ","plan":{"state":"WATCH","setup":"","stop":8.5712,"target":8.75,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":125.2,"room_to_5d_high_atr":-0.79},"price":8.6731,"vwap":8.6093,"ext_from_open_pct":0.62,"max_ext_allowed_pct":3.0,"volume_pace":1.107,"trend":"flat","recent_slope_pct":0.02,"volatility":"medium"},"price":8.6731,"volume":{"bars":122,"last_bar_volume":2044.0,"baseline_avg":2046.75,"bar_rvol":0.998656,"raw_accel":2.792208,"smooth_accel":-0.345783,"accel_momentum":0.251798,"rvol_3bar":[0.095651,0.258699,0.998656],"trend_3bar":"ACCELERATING","projected_rvol":76.339147},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":0.0,"sell_vol":1443.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":0.551398},"context":{"vwap":8.588688,"price_vs_vwap_pct":0.982827,"ema9":8.667428,"ema20":8.66211,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.878857,"dist_to_hod_atr":4.510364,"atr":0.01705,"spread_atr":0.586523,"own_change_pct":0.048471,"rel_strength_pct":{"SPY":0.051068,"IWM":0.055185}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.998656},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b305aae93231","ts":"2026-09-21T15:32:52.223417+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.0233,"target":5.1483,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":63.2,"room_to_5d_high_atr":0.72},"price":5.11,"vwap":5.088,"ext_from_open_pct":-1.35,"max_ext_allowed_pct":4.0,"volume_pace":0.317,"trend":"flat","recent_slope_pct":-0.0391,"volatility":"high"},"price":5.11,"volume":{"bars":122,"last_bar_volume":11435.0,"baseline_avg":30558.85,"bar_rvol":0.374196,"raw_accel":-0.487082,"smooth_accel":-0.140956,"accel_momentum":0.372432,"rvol_3bar":[0.444536,0.745548,0.374196],"trend_3bar":"MIXED","projected_rvol":0.357243},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":5094.0,"sell_vol":2907.0,"unclassified_vol":0.0,"imbalance":0.273341,"bid":5.11,"ask":5.12,"spread_pct":0.195503,"quote_size_imbalance":null,"quote_age_s":5.171145},"context":{"vwap":5.087974,"price_vs_vwap_pct":0.432904,"ema9":5.122522,"ema20":5.114649,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.919386,"dist_to_hod_atr":4.876972,"atr":0.020505,"spread_atr":0.487697,"own_change_pct":-0.292113,"rel_strength_pct":{"SPY":-0.289515,"IWM":-0.285398}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.102283},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"412ea225e9fb","ts":"2026-09-21T15:32:52.223417+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.73 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.9396,"target":12.5,"target_label":"range_20d_high","reward_risk":24.36,"pos_in_5d_range_pct":155.4,"room_to_5d_high_atr":-0.73},"price":9.08,"vwap":8.9057,"ext_from_open_pct":4.01,"max_ext_allowed_pct":4.0,"volume_pace":0.956,"trend":"flat","recent_slope_pct":-0.0089,"volatility":"high"},"price":9.08,"volume":{"bars":122,"last_bar_volume":3006.0,"baseline_avg":9169.25,"bar_rvol":0.327835,"raw_accel":0.31134,"smooth_accel":0.988464,"accel_momentum":1.128425,"rvol_3bar":[0.291319,0.094313,0.327835],"trend_3bar":"MIXED","projected_rvol":0.22529},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":1043.0,"sell_vol":112.0,"unclassified_vol":0.0,"imbalance":0.806061,"bid":9.07,"ask":9.09,"spread_pct":0.220264,"quote_size_imbalance":null,"quote_age_s":1.106845},"context":{"vwap":8.90543,"price_vs_vwap_pct":1.960266,"ema9":9.071165,"ema20":9.048711,"ema_stack":true,"ema_warm":true,"hod":9.1,"dist_to_hod_pct":-0.21978,"dist_to_hod_atr":0.615695,"atr":0.032484,"spread_atr":0.615695,"own_change_pct":0.165563,"rel_strength_pct":{"SPY":0.168161,"IWM":0.172277}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.264255},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"434c48b12377","ts":"2026-09-21T15:32:57.492337+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.0283,"target":6.12,"target_label":"range_20d_high","reward_risk":11.59,"pos_in_5d_range_pct":64.0,"room_to_5d_high_atr":0.71},"price":5.115,"vwap":5.088,"ext_from_open_pct":-1.25,"max_ext_allowed_pct":4.0,"volume_pace":0.316,"trend":"flat","recent_slope_pct":-0.0195,"volatility":"high"},"price":5.115,"volume":{"bars":122,"last_bar_volume":11435.0,"baseline_avg":30558.85,"bar_rvol":0.374196,"raw_accel":-0.487082,"smooth_accel":-0.140956,"accel_momentum":0.372432,"rvol_3bar":[0.444536,0.745548,0.374196],"trend_3bar":"MIXED","projected_rvol":0.328021},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":5183.0,"sell_vol":2707.0,"unclassified_vol":0.0,"imbalance":0.313815,"bid":5.11,"ask":5.12,"spread_pct":0.195503,"quote_size_imbalance":null,"quote_age_s":1.92817},"context":{"vwap":5.087974,"price_vs_vwap_pct":0.531175,"ema9":5.122522,"ema20":5.114649,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.823417,"dist_to_hod_atr":4.633123,"atr":0.020505,"spread_atr":0.487697,"own_change_pct":-0.292113,"rel_strength_pct":{"SPY":-0.289515,"IWM":-0.285398}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.117428},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"963705996e70","ts":"2026-09-21T15:32:57.492337+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.9692,"target":11.275,"target_label":"range_20d_high","reward_risk":1.76,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.08,"vwap":10.9574,"ext_from_open_pct":3.55,"max_ext_allowed_pct":4.0,"volume_pace":0.803,"trend":"flat","recent_slope_pct":-0.0426,"volatility":"unknown"},"price":11.08,"volume":{"bars":122,"last_bar_volume":21820.0,"baseline_avg":103931.0,"bar_rvol":0.209947,"raw_accel":-0.615106,"smooth_accel":0.310566,"accel_momentum":0.670059,"rvol_3bar":[0.635507,0.306691,0.209947],"trend_3bar":"DECELERATING","projected_rvol":0.381936},"flow":{"window_s":30,"trades":174,"trade_rate":5.8,"buy_vol":19967.0,"sell_vol":8708.0,"unclassified_vol":0.0,"imbalance":0.392642,"bid":11.08,"ask":11.09,"spread_pct":0.090212,"quote_size_imbalance":null,"quote_age_s":0.844474},"context":{"vwap":10.957147,"price_vs_vwap_pct":1.121211,"ema9":11.08479,"ema20":11.046851,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.56832,"dist_to_hod_atr":5.068339,"atr":0.080894,"spread_atr":0.123618,"own_change_pct":-0.418109,"rel_strength_pct":{"SPY":-0.415511,"IWM":-0.411395}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.082434},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"5f9db4c78fa7","ts":"2026-09-21T15:33:02.646027+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9511,"target":9.1299,"target_label":"ceiling","reward_risk":1.07,"pos_in_5d_range_pct":128.0,"room_to_5d_high_atr":-0.89},"price":9.0376,"vwap":9.016,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":1.224,"trend":"flat","recent_slope_pct":0.0064,"volatility":"medium"},"price":9.0376,"volume":{"bars":123,"last_bar_volume":18638.0,"baseline_avg":12746.1,"bar_rvol":1.462251,"raw_accel":0.285113,"smooth_accel":-0.101906,"accel_momentum":0.212456,"rvol_3bar":[0.475425,1.149217,1.462251],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":4136.0,"sell_vol":5079.0,"unclassified_vol":0.0,"imbalance":-0.102333,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.043298},"context":{"vwap":9.016006,"price_vs_vwap_pct":0.239507,"ema9":9.035453,"ema20":9.037005,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.010964,"dist_to_hod_atr":3.659869,"atr":0.025219,"spread_atr":0.396519,"own_change_pct":-0.232252,"rel_strength_pct":{"SPY":-0.232252,"IWM":-0.25499}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.149637},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d9eb90cf0f79","ts":"2026-09-21T15:33:02.646027+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.0233,"target":5.1483,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":63.2,"room_to_5d_high_atr":0.72},"price":5.11,"vwap":5.088,"ext_from_open_pct":-1.35,"max_ext_allowed_pct":4.0,"volume_pace":0.316,"trend":"flat","recent_slope_pct":-0.0391,"volatility":"high"},"price":5.11,"volume":{"bars":122,"last_bar_volume":11435.0,"baseline_avg":30558.85,"bar_rvol":0.374196,"raw_accel":-0.487082,"smooth_accel":-0.140956,"accel_momentum":0.372432,"rvol_3bar":[0.444536,0.745548,0.374196],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1433.0,"sell_vol":2623.0,"unclassified_vol":0.0,"imbalance":-0.293393,"bid":5.11,"ask":5.12,"spread_pct":0.195503,"quote_size_imbalance":null,"quote_age_s":4.565877},"context":{"vwap":5.087974,"price_vs_vwap_pct":0.432904,"ema9":5.122522,"ema20":5.114649,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.919386,"dist_to_hod_atr":4.876972,"atr":0.020505,"spread_atr":0.487697,"own_change_pct":-0.292113,"rel_strength_pct":{"SPY":-0.292113,"IWM":-0.314851}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.109786},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d7a2fba0f8e9","ts":"2026-09-21T15:33:02.646027+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7061,"target":8.88,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":86.3,"room_to_5d_high_atr":0.23},"price":8.815,"vwap":8.6568,"ext_from_open_pct":1.09,"max_ext_allowed_pct":3.0,"volume_pace":0.896,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"medium"},"price":8.815,"volume":{"bars":123,"last_bar_volume":6949.0,"baseline_avg":23076.5,"bar_rvol":0.301129,"raw_accel":-0.716818,"smooth_accel":0.215671,"accel_momentum":0.507977,"rvol_3bar":[0.356977,1.056143,0.301129],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":3340.0,"sell_vol":1801.0,"unclassified_vol":0.0,"imbalance":0.299358,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.363018},"context":{"vwap":8.656824,"price_vs_vwap_pct":1.827184,"ema9":8.826676,"ema20":8.825889,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":-0.731982,"dist_to_hod_atr":1.54311,"atr":0.042123,"spread_atr":0.237402,"own_change_pct":-0.264604,"rel_strength_pct":{"SPY":-0.264604,"IWM":-0.287342}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.090145},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c7a42e840102","ts":"2026-09-21T15:33:02.646027+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.5965,"target":9.74,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":106.3,"room_to_5d_high_atr":-0.06},"price":9.695,"vwap":9.6816,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.779,"trend":"flat","recent_slope_pct":-0.0689,"volatility":"medium"},"price":9.695,"volume":{"bars":123,"last_bar_volume":8192.0,"baseline_avg":9552.75,"bar_rvol":0.857554,"raw_accel":-0.293549,"smooth_accel":-0.428262,"accel_momentum":-0.024717,"rvol_3bar":[0.587907,1.244847,0.857554],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":650.0,"sell_vol":30.0,"unclassified_vol":0.0,"imbalance":0.911765,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":1.738978},"context":{"vwap":9.681637,"price_vs_vwap_pct":0.138029,"ema9":9.710597,"ema20":9.717032,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.373347,"dist_to_hod_atr":3.880919,"atr":0.034786,"spread_atr":0.287476,"own_change_pct":-0.353728,"rel_strength_pct":{"SPY":-0.353728,"IWM":-0.376465}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.781888},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"96b223c387ac","ts":"2026-09-21T15:33:07.759791+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.20 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":8.118,"target":9.09,"target_label":"range_20d_high","reward_risk":10.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2,"vwap":8.2078,"ext_from_open_pct":2.37,"max_ext_allowed_pct":4.0,"volume_pace":3.574,"trend":"flat","recent_slope_pct":-0.0244,"volatility":"unknown"},"price":8.2,"volume":{"bars":122,"last_bar_volume":1193.0,"baseline_avg":886.3,"bar_rvol":1.346045,"raw_accel":4.384181,"smooth_accel":1.10717,"accel_momentum":1.182496,"rvol_3bar":[1.654556,0.16788,1.346045],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":339.0,"sell_vol":848.0,"unclassified_vol":0.0,"imbalance":-0.428812,"bid":8.19,"ask":8.21,"spread_pct":0.243902,"quote_size_imbalance":null,"quote_age_s":13.391671},"context":{"vwap":8.207784,"price_vs_vwap_pct":-0.094835,"ema9":8.207596,"ema20":8.205574,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.428904,"dist_to_hod_atr":9.333826,"atr":0.040712,"spread_atr":0.491254,"own_change_pct":0.2442,"rel_strength_pct":{"SPY":0.2442,"IWM":0.221463}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.577201},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7eaeba4e9b43","ts":"2026-09-21T15:33:07.759791+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.0283,"target":6.12,"target_label":"range_20d_high","reward_risk":11.59,"pos_in_5d_range_pct":64.0,"room_to_5d_high_atr":0.71},"price":5.115,"vwap":5.088,"ext_from_open_pct":-1.25,"max_ext_allowed_pct":3.0,"volume_pace":0.316,"trend":"flat","recent_slope_pct":-0.0293,"volatility":"high"},"price":5.115,"volume":{"bars":123,"last_bar_volume":10107.0,"baseline_avg":30984.5,"bar_rvol":0.326195,"raw_accel":-0.116135,"smooth_accel":0.109913,"accel_momentum":0.250869,"rvol_3bar":[0.745548,0.374196,0.326195],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1939.0,"sell_vol":500.0,"unclassified_vol":0.0,"imbalance":0.589996,"bid":5.11,"ask":5.12,"spread_pct":0.195503,"quote_size_imbalance":null,"quote_age_s":0.144248},"context":{"vwap":5.08804,"price_vs_vwap_pct":0.52987,"ema9":5.120017,"ema20":5.114206,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.823417,"dist_to_hod_atr":4.535243,"atr":0.020947,"spread_atr":0.477394,"own_change_pct":-0.292683,"rel_strength_pct":{"SPY":-0.292683,"IWM":-0.315421}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.192454},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"75227369e0bc","ts":"2026-09-21T15:33:12.887793+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1260.2s, plan says PASS; stop 8.60, target 9.94 (range_20d_high), R:R 12.12; target 1.23 away > ~0.17 reachable in 262 min","plan":{"state":"PASS","setup":"","stop":8.6031,"target":9.94,"target_label":"range_20d_high","reward_risk":12.12,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.87},"price":8.705,"vwap":8.6094,"ext_from_open_pct":0.99,"max_ext_allowed_pct":3.0,"volume_pace":1.105,"trend":"flat","recent_slope_pct":0.0902,"volatility":"medium"},"price":8.705,"volume":{"bars":123,"last_bar_volume":135996.0,"baseline_avg":2121.85,"bar_rvol":64.093126,"raw_accel":65.534247,"smooth_accel":80.854105,"accel_momentum":81.199889,"rvol_3bar":[0.258699,0.998656,64.093126],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":100.0,"sell_vol":13.0,"unclassified_vol":0.0,"imbalance":0.769912,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":1.195478},"context":{"vwap":8.609343,"price_vs_vwap_pct":1.11108,"ema9":8.668563,"ema20":8.663157,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.514286,"dist_to_hod_atr":2.12375,"atr":0.021189,"spread_atr":0.471944,"own_change_pct":0.105032,"rel_strength_pct":{"SPY":0.105032,"IWM":0.082295}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":49.346035},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0287bce1cc98","ts":"2026-09-21T15:33:12.887793+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.13,"target":12.0486,"target_label":"premarket_high","reward_risk":3.59,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.33,"vwap":11.3191,"ext_from_open_pct":-2.33,"max_ext_allowed_pct":3.0,"volume_pace":0.681,"trend":"flat","recent_slope_pct":0.0003,"volatility":"unknown"},"price":11.33,"volume":{"bars":112,"last_bar_volume":13.0,"baseline_avg":672.75,"bar_rvol":0.019324,"raw_accel":-0.922705,"smooth_accel":-0.852043,"accel_momentum":-13.742862,"rvol_3bar":[1.116577,0.070066,0.019324],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":100.0,"sell_vol":405.0,"unclassified_vol":0.0,"imbalance":-0.60396,"bid":11.29,"ask":11.39,"spread_pct":0.881834,"quote_size_imbalance":null,"quote_age_s":1.191263},"context":{"vwap":11.318783,"price_vs_vwap_pct":0.0991,"ema9":11.298868,"ema20":11.284401,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-5.188285,"dist_to_hod_atr":5.700586,"atr":0.108761,"spread_atr":0.919449,"own_change_pct":1.61704,"rel_strength_pct":{"SPY":1.61704,"IWM":1.594303}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.011671},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"877f341fb22b","ts":"2026-09-21T15:33:17.935804+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.984,"target":11.275,"target_label":"range_20d_high","reward_risk":1.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.095,"vwap":10.9575,"ext_from_open_pct":3.69,"max_ext_allowed_pct":3.0,"volume_pace":0.801,"trend":"flat","recent_slope_pct":-0.0085,"volatility":"unknown"},"price":11.095,"volume":{"bars":123,"last_bar_volume":39124.0,"baseline_avg":94366.8,"bar_rvol":0.414595,"raw_accel":0.65838,"smooth_accel":-0.468763,"accel_momentum":-0.779329,"rvol_3bar":[0.306691,0.209947,0.414595],"trend_3bar":"MIXED","projected_rvol":0.511396},"flow":{"window_s":30,"trades":202,"trade_rate":6.733333,"buy_vol":26722.0,"sell_vol":12041.0,"unclassified_vol":0.0,"imbalance":0.378737,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":0.251317},"context":{"vwap":10.957407,"price_vs_vwap_pct":1.255704,"ema9":11.084832,"ema20":11.050484,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.437772,"dist_to_hod_atr":5.042277,"atr":0.078338,"spread_atr":0.127653,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.0,"IWM":-0.022738}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.157023},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f4ea91aafba5","ts":"2026-09-21T15:33:22.993045+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7665,"target":8.935,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7477,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.652,"trend":"flat","recent_slope_pct":-0.0863,"volatility":"unknown"},"price":8.855,"volume":{"bars":123,"last_bar_volume":40845.0,"baseline_avg":99019.15,"bar_rvol":0.412496,"raw_accel":-0.251937,"smooth_accel":-0.356549,"accel_momentum":-0.162125,"rvol_3bar":[0.471719,0.553815,0.412496],"trend_3bar":"MIXED","projected_rvol":1.796559},"flow":{"window_s":30,"trades":346,"trade_rate":11.533333,"buy_vol":60635.0,"sell_vol":17611.0,"unclassified_vol":0.0,"imbalance":0.549856,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.418953},"context":{"vwap":8.747197,"price_vs_vwap_pct":1.232432,"ema9":8.851019,"ema20":8.842582,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.895355,"dist_to_hod_atr":1.417944,"atr":0.05642,"spread_atr":0.177243,"own_change_pct":-0.728628,"rel_strength_pct":{"SPY":-0.728628,"IWM":-0.751366}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.226813},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"08e7e9d5debd","ts":"2026-09-21T15:33:28.084198+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.989,"target":11.275,"target_label":"range_20d_high","reward_risk":1.58,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.1,"vwap":10.9576,"ext_from_open_pct":3.74,"max_ext_allowed_pct":4.0,"volume_pace":0.801,"trend":"flat","recent_slope_pct":0.0005,"volatility":"unknown"},"price":11.1,"volume":{"bars":123,"last_bar_volume":39124.0,"baseline_avg":94366.8,"bar_rvol":0.414595,"raw_accel":0.65838,"smooth_accel":-0.468763,"accel_momentum":-0.779329,"rvol_3bar":[0.306691,0.209947,0.414595],"trend_3bar":"MIXED","projected_rvol":0.519558},"flow":{"window_s":30,"trades":142,"trade_rate":4.733333,"buy_vol":18210.0,"sell_vol":5777.0,"unclassified_vol":0.0,"imbalance":0.518322,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":0.211103},"context":{"vwap":10.957407,"price_vs_vwap_pct":1.301336,"ema9":11.084832,"ema20":11.050484,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.394256,"dist_to_hod_atr":4.978451,"atr":0.078338,"spread_atr":0.127653,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.0,"IWM":-0.022738}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.214894},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"127603fd2405","ts":"2026-09-21T15:33:38.424341+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.76% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":10.93,"target":12.0486,"target_label":"premarket_high","reward_risk":1.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.33,"vwap":11.3191,"ext_from_open_pct":-2.33,"max_ext_allowed_pct":3.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":0.0003,"volatility":"unknown"},"price":11.33,"volume":{"bars":112,"last_bar_volume":13.0,"baseline_avg":672.75,"bar_rvol":0.019324,"raw_accel":-0.922705,"smooth_accel":-0.852043,"accel_momentum":-13.742862,"rvol_3bar":[1.116577,0.070066,0.019324],"trend_3bar":"DECELERATING","projected_rvol":1.169827},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":100.0,"sell_vol":404.0,"unclassified_vol":0.0,"imbalance":-0.603175,"bid":11.27,"ask":11.47,"spread_pct":1.759015,"quote_size_imbalance":null,"quote_age_s":2.885108},"context":{"vwap":11.318783,"price_vs_vwap_pct":0.0991,"ema9":11.298868,"ema20":11.284401,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-5.188285,"dist_to_hod_atr":5.700586,"atr":0.108761,"spread_atr":1.838899,"own_change_pct":1.61704,"rel_strength_pct":{"SPY":1.61704,"IWM":1.594303}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.011656},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"a5b3072d9f1a","ts":"2026-09-21T15:33:38.424341+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.935,"target_label":"ceiling","reward_risk":1.02,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7478,"ext_from_open_pct":3.81,"max_ext_allowed_pct":3.0,"volume_pace":0.652,"trend":"flat","recent_slope_pct":-0.109,"volatility":"unknown"},"price":8.845,"volume":{"bars":123,"last_bar_volume":40845.0,"baseline_avg":99019.15,"bar_rvol":0.412496,"raw_accel":-0.251937,"smooth_accel":-0.356549,"accel_momentum":-0.162125,"rvol_3bar":[0.471719,0.553815,0.412496],"trend_3bar":"MIXED","projected_rvol":1.385785},"flow":{"window_s":30,"trades":341,"trade_rate":11.366667,"buy_vol":60268.0,"sell_vol":22134.0,"unclassified_vol":0.0,"imbalance":0.46278,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":3.491516},"context":{"vwap":8.747197,"price_vs_vwap_pct":1.11811,"ema9":8.851019,"ema20":8.842582,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.007275,"dist_to_hod_atr":1.595187,"atr":0.05642,"spread_atr":0.177243,"own_change_pct":-0.728628,"rel_strength_pct":{"SPY":-0.728628,"IWM":-0.751366}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.190895},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b1cdd46e9b90","ts":"2026-09-21T15:33:43.567519+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1290.9s, plan says WATCH; stop 8.57, target 8.75 (ceiling), R:R 0.74; selling not fading: red-bar volume 1.25x the advance (max 0.7); imbalance -69% still heavy selling; no reclaim yet (needs a c","plan":{"state":"WATCH","setup":"","stop":8.5722,"target":8.75,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":125.3,"room_to_5d_high_atr":-0.79},"price":8.6741,"vwap":8.6099,"ext_from_open_pct":0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.108,"trend":"flat","recent_slope_pct":0.019,"volatility":"medium"},"price":8.6741,"volume":{"bars":123,"last_bar_volume":135996.0,"baseline_avg":2121.85,"bar_rvol":64.093126,"raw_accel":65.534247,"smooth_accel":80.854105,"accel_momentum":81.199889,"rvol_3bar":[0.258699,0.998656,64.093126],"trend_3bar":"ACCELERATING","projected_rvol":3.393199},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":1002.0,"sell_vol":4126.0,"unclassified_vol":0.0,"imbalance":-0.609204,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":10.715543},"context":{"vwap":8.609343,"price_vs_vwap_pct":0.752168,"ema9":8.668563,"ema20":8.663157,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.867429,"dist_to_hod_atr":3.582059,"atr":0.021189,"spread_atr":0.471944,"own_change_pct":0.105032,"rel_strength_pct":{"SPY":0.105032,"IWM":0.082295}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-39.045813},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1973b1cdb481","ts":"2026-09-21T15:33:54.022212+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1301.4s, plan says PASS; stop 8.60, target 9.94 (range_20d_high), R:R 12.12; target 1.23 away > ~0.17 reachable in 261 min","plan":{"state":"PASS","setup":"","stop":8.6031,"target":9.94,"target_label":"range_20d_high","reward_risk":12.12,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.87},"price":8.705,"vwap":8.61,"ext_from_open_pct":0.99,"max_ext_allowed_pct":3.0,"volume_pace":1.107,"trend":"flat","recent_slope_pct":0.0902,"volatility":"medium"},"price":8.705,"volume":{"bars":123,"last_bar_volume":135996.0,"baseline_avg":2121.85,"bar_rvol":64.093126,"raw_accel":65.534247,"smooth_accel":80.854105,"accel_momentum":81.199889,"rvol_3bar":[0.258699,0.998656,64.093126],"trend_3bar":"ACCELERATING","projected_rvol":2.737051},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":26.0,"sell_vol":11.0,"unclassified_vol":0.0,"imbalance":0.405405,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":2.165749},"context":{"vwap":8.609343,"price_vs_vwap_pct":1.11108,"ema9":8.668563,"ema20":8.663157,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.514286,"dist_to_hod_atr":2.12375,"atr":0.021189,"spread_atr":0.471944,"own_change_pct":0.105032,"rel_strength_pct":{"SPY":0.105032,"IWM":0.082295}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":25.9837},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ff1d31722361","ts":"2026-09-21T15:34:04.247316+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"held 36.2s, plan says PASS; stop 11.01, target 11.28 (range_20d_high), R:R 1.39; R:R 1.39 < 2.0 at 11.12; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.0088,"target":11.275,"target_label":"range_20d_high","reward_risk":1.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.12,"vwap":10.9578,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.798,"trend":"flat","recent_slope_pct":0.1082,"volatility":"unknown"},"price":11.12,"volume":{"bars":124,"last_bar_volume":46694.0,"baseline_avg":92746.5,"bar_rvol":0.503458,"raw_accel":0.193487,"smooth_accel":-0.519985,"accel_momentum":-0.051222,"rvol_3bar":[0.209947,0.414595,0.503458],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":132,"trade_rate":4.4,"buy_vol":15058.0,"sell_vol":2484.0,"unclassified_vol":0.0,"imbalance":0.716794,"bid":11.12,"ask":11.13,"spread_pct":0.089888,"quote_size_imbalance":null,"quote_age_s":0.230357},"context":{"vwap":10.95775,"price_vs_vwap_pct":1.48069,"ema9":11.090866,"ema20":11.056628,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.220191,"dist_to_hod_atr":4.884539,"atr":0.075749,"spread_atr":0.132015,"own_change_pct":0.225428,"rel_strength_pct":{"SPY":0.208541,"IWM":0.179952}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.360876},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"def48116eb00","ts":"2026-09-21T15:34:09.367909+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1316.7s, plan says WATCH; stop 8.57, target 8.75 (ceiling), R:R 0.74; no pullback yet (still at the swing high); R:R 0.74 < 2.0 at 8.67; pullback: buy 8.66-8.69 holding + reclaim/fading selling/s","plan":{"state":"WATCH","setup":"","stop":8.5722,"target":8.75,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":125.3,"room_to_5d_high_atr":-0.79},"price":8.6741,"vwap":8.61,"ext_from_open_pct":0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.105,"trend":"flat","recent_slope_pct":0.0549,"volatility":"medium"},"price":8.6741,"volume":{"bars":124,"last_bar_volume":5229.0,"baseline_avg":8674.5,"bar_rvol":0.602801,"raw_accel":-0.96155,"smooth_accel":74.523985,"accel_momentum":-6.33012,"rvol_3bar":[0.998656,64.093126,0.602801],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":128.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":0.673203,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":5.093084},"context":{"vwap":8.61,"price_vs_vwap_pct":0.744484,"ema9":8.67585,"ema20":8.667142,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.867429,"dist_to_hod_atr":3.400797,"atr":0.022318,"spread_atr":0.448063,"own_change_pct":0.462787,"rel_strength_pct":{"SPY":0.4459,"IWM":0.41731}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.405807},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2d97639a7bf3","ts":"2026-09-21T15:34:19.521415+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":11.0028,"target":11.275,"target_label":"range_20d_high","reward_risk":1.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.1139,"vwap":10.9578,"ext_from_open_pct":3.87,"max_ext_allowed_pct":3.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":0.0972,"volatility":"unknown"},"price":11.1139,"volume":{"bars":124,"last_bar_volume":46694.0,"baseline_avg":92746.5,"bar_rvol":0.503458,"raw_accel":0.193487,"smooth_accel":-0.519985,"accel_momentum":-0.051222,"rvol_3bar":[0.209947,0.414595,0.503458],"trend_3bar":"ACCELERATING","projected_rvol":0.326786},"flow":{"window_s":30,"trades":124,"trade_rate":4.133333,"buy_vol":12977.0,"sell_vol":3429.0,"unclassified_vol":0.0,"imbalance":0.581982,"bid":11.12,"ask":11.13,"spread_pct":0.089888,"quote_size_imbalance":null,"quote_age_s":0.328848},"context":{"vwap":10.95775,"price_vs_vwap_pct":1.425021,"ema9":11.090866,"ema20":11.056628,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.273281,"dist_to_hod_atr":4.965068,"atr":0.075749,"spread_atr":0.132015,"own_change_pct":0.225428,"rel_strength_pct":{"SPY":0.208541,"IWM":0.179952}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.293004},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f2f4b32e3ba2","ts":"2026-09-21T15:34:24.604012+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 743.2s, plan says WATCH; stop 10.85, target 11.14 (premarket_high), R:R 1.26; R:R 1.26 < 2.0 at 10.98; breakout: 1-min close > 11.04 on >= 386916 sh","plan":{"state":"WATCH","setup":"","stop":10.8482,"target":11.14,"target_label":"premarket_high","reward_risk":1.26,"pos_in_5d_range_pct":109.7,"room_to_5d_high_atr":-0.23},"price":10.9772,"vwap":10.8307,"ext_from_open_pct":-0.03,"max_ext_allowed_pct":3.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":0.0675,"volatility":"medium"},"price":10.9772,"volume":{"bars":124,"last_bar_volume":69231.0,"baseline_avg":352606.6,"bar_rvol":0.196341,"raw_accel":-0.783694,"smooth_accel":-0.838891,"accel_momentum":-0.061118,"rvol_3bar":[0.349446,0.931246,0.196341],"trend_3bar":"MIXED","projected_rvol":1.280857},"flow":{"window_s":30,"trades":286,"trade_rate":9.533333,"buy_vol":118157.0,"sell_vol":68532.0,"unclassified_vol":0.0,"imbalance":0.265816,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":0.380099},"context":{"vwap":10.830068,"price_vs_vwap_pct":1.358547,"ema9":10.945996,"ema20":10.936832,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.478694,"dist_to_hod_atr":1.865608,"atr":0.028302,"spread_atr":0.353335,"own_change_pct":0.069406,"rel_strength_pct":{"SPY":0.052519,"IWM":0.023929}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.052191},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fa323bcc435e","ts":"2026-09-21T15:34:29.732182+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.935,"target_label":"ceiling","reward_risk":1.02,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7485,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.652,"trend":"flat","recent_slope_pct":0.0619,"volatility":"unknown"},"price":8.845,"volume":{"bars":124,"last_bar_volume":139959.0,"baseline_avg":96893.7,"bar_rvol":1.444459,"raw_accel":2.426588,"smooth_accel":0.324435,"accel_momentum":0.680984,"rvol_3bar":[0.553815,0.412496,1.444459],"trend_3bar":"MIXED","projected_rvol":0.933242},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":18459.0,"sell_vol":26350.0,"unclassified_vol":0.0,"imbalance":-0.176103,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":2.079861},"context":{"vwap":8.748166,"price_vs_vwap_pct":1.106904,"ema9":8.847756,"ema20":8.841831,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.007275,"dist_to_hod_atr":1.541367,"atr":0.05839,"spread_atr":0.171263,"own_change_pct":-0.629872,"rel_strength_pct":{"SPY":-0.646759,"IWM":-0.675348}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.254374},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f16128378019","ts":"2026-09-21T15:34:34.872146+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7429,"target":8.935,"target_label":"ceiling","reward_risk":1.18,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8312,"vwap":8.7485,"ext_from_open_pct":3.65,"max_ext_allowed_pct":3.0,"volume_pace":0.651,"trend":"flat","recent_slope_pct":0.0306,"volatility":"unknown"},"price":8.8312,"volume":{"bars":124,"last_bar_volume":139959.0,"baseline_avg":96893.7,"bar_rvol":1.444459,"raw_accel":2.426588,"smooth_accel":0.324435,"accel_momentum":0.680984,"rvol_3bar":[0.553815,0.412496,1.444459],"trend_3bar":"MIXED","projected_rvol":0.80382},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":18458.0,"sell_vol":4868.0,"unclassified_vol":0.0,"imbalance":0.582612,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.024846},"context":{"vwap":8.748166,"price_vs_vwap_pct":0.949157,"ema9":8.847756,"ema20":8.841831,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.161724,"dist_to_hod_atr":1.77771,"atr":0.05839,"spread_atr":0.171263,"own_change_pct":-0.629872,"rel_strength_pct":{"SPY":-0.646759,"IWM":-0.675348}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.841559},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"af7b708253ca","ts":"2026-09-21T15:34:40.086188+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.935,"target_label":"ceiling","reward_risk":1.02,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7485,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.651,"trend":"flat","recent_slope_pct":0.0619,"volatility":"unknown"},"price":8.845,"volume":{"bars":124,"last_bar_volume":139959.0,"baseline_avg":96893.7,"bar_rvol":1.444459,"raw_accel":2.426588,"smooth_accel":0.324435,"accel_momentum":0.680984,"rvol_3bar":[0.553815,0.412496,1.444459],"trend_3bar":"MIXED","projected_rvol":0.737947},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":15999.0,"sell_vol":3625.0,"unclassified_vol":0.0,"imbalance":0.630554,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.499354},"context":{"vwap":8.748166,"price_vs_vwap_pct":1.106904,"ema9":8.847756,"ema20":8.841831,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.007275,"dist_to_hod_atr":1.541367,"atr":0.05839,"spread_atr":0.171263,"own_change_pct":-0.629872,"rel_strength_pct":{"SPY":-0.646759,"IWM":-0.675348}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.91081},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5678b483f125","ts":"2026-09-21T15:34:45.251643+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.0137,"target":11.275,"target_label":"range_20d_high","reward_risk":1.35,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.125,"vwap":10.9579,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":0.1172,"volatility":"unknown"},"price":11.125,"volume":{"bars":124,"last_bar_volume":46694.0,"baseline_avg":92746.5,"bar_rvol":0.503458,"raw_accel":0.193487,"smooth_accel":-0.519985,"accel_momentum":-0.051222,"rvol_3bar":[0.209947,0.414595,0.503458],"trend_3bar":"ACCELERATING","projected_rvol":0.339634},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":10316.0,"sell_vol":4161.0,"unclassified_vol":0.0,"imbalance":0.425157,"bid":11.12,"ask":11.13,"spread_pct":0.089888,"quote_size_imbalance":null,"quote_age_s":0.173173},"context":{"vwap":10.95775,"price_vs_vwap_pct":1.526319,"ema9":11.090866,"ema20":11.056628,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.176675,"dist_to_hod_atr":4.818532,"atr":0.075749,"spread_atr":0.132015,"own_change_pct":0.225428,"rel_strength_pct":{"SPY":0.208541,"IWM":0.179952}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.214049},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9846ae622ffe","ts":"2026-09-21T15:34:45.251643+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 763.9s, plan says PASS; stop 10.84, target 11.03 (ceiling), R:R 0.50; R:R 0.50 < 2.0 at 10.96; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.836,"target":11.03,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":108.7,"room_to_5d_high_atr":-0.2},"price":10.965,"vwap":10.8309,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.795,"trend":"flat","recent_slope_pct":0.0452,"volatility":"medium"},"price":10.965,"volume":{"bars":124,"last_bar_volume":69231.0,"baseline_avg":352606.6,"bar_rvol":0.196341,"raw_accel":-0.783694,"smooth_accel":-0.838891,"accel_momentum":-0.061118,"rvol_3bar":[0.349446,0.931246,0.196341],"trend_3bar":"MIXED","projected_rvol":0.907075},"flow":{"window_s":30,"trades":200,"trade_rate":6.666667,"buy_vol":59062.0,"sell_vol":49227.0,"unclassified_vol":0.0,"imbalance":0.090822,"bid":10.96,"ask":10.97,"spread_pct":0.091199,"quote_size_imbalance":null,"quote_age_s":0.51157},"context":{"vwap":10.830068,"price_vs_vwap_pct":1.245898,"ema9":10.945996,"ema20":10.936832,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.589302,"dist_to_hod_atr":2.296677,"atr":0.028302,"spread_atr":0.353335,"own_change_pct":0.069406,"rel_strength_pct":{"SPY":0.052519,"IWM":0.023929}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.017832},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"56a9760cd671","ts":"2026-09-21T15:34:50.340251+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":11.0038,"target":11.275,"target_label":"range_20d_high","reward_risk":1.44,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.115,"vwap":10.958,"ext_from_open_pct":3.88,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":0.0992,"volatility":"unknown"},"price":11.115,"volume":{"bars":124,"last_bar_volume":46694.0,"baseline_avg":92746.5,"bar_rvol":0.503458,"raw_accel":0.193487,"smooth_accel":-0.519985,"accel_momentum":-0.051222,"rvol_3bar":[0.209947,0.414595,0.503458],"trend_3bar":"ACCELERATING","projected_rvol":0.395953},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":13449.0,"sell_vol":7501.0,"unclassified_vol":0.0,"imbalance":0.283914,"bid":11.11,"ask":11.12,"spread_pct":0.089969,"quote_size_imbalance":null,"quote_age_s":0.416816},"context":{"vwap":10.95775,"price_vs_vwap_pct":1.43506,"ema9":11.090866,"ema20":11.056628,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.263708,"dist_to_hod_atr":4.950546,"atr":0.075749,"spread_atr":0.132015,"own_change_pct":0.225428,"rel_strength_pct":{"SPY":0.208541,"IWM":0.179952}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.142939},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bb30f1e6729f","ts":"2026-09-21T15:34:50.340251+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7665,"target":8.935,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7489,"ext_from_open_pct":3.93,"max_ext_allowed_pct":3.0,"volume_pace":0.652,"trend":"flat","recent_slope_pct":0.0845,"volatility":"unknown"},"price":8.855,"volume":{"bars":124,"last_bar_volume":139959.0,"baseline_avg":96893.7,"bar_rvol":1.444459,"raw_accel":2.426588,"smooth_accel":0.324435,"accel_momentum":0.680984,"rvol_3bar":[0.553815,0.412496,1.444459],"trend_3bar":"MIXED","projected_rvol":1.110251},"flow":{"window_s":30,"trades":171,"trade_rate":5.7,"buy_vol":33406.0,"sell_vol":15735.0,"unclassified_vol":0.0,"imbalance":0.359598,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.656378},"context":{"vwap":8.748166,"price_vs_vwap_pct":1.221214,"ema9":8.847756,"ema20":8.841831,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.895355,"dist_to_hod_atr":1.370104,"atr":0.05839,"spread_atr":0.171263,"own_change_pct":-0.629872,"rel_strength_pct":{"SPY":-0.646759,"IWM":-0.675348}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.519424},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"52756c2131f8","ts":"2026-09-21T15:34:55.421389+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 774.0s, plan says WATCH; stop 10.85, target 11.14 (premarket_high), R:R 1.28; R:R 1.28 < 2.0 at 10.97; breakout: 1-min close > 11.04 on >= 386916 sh","plan":{"state":"WATCH","setup":"","stop":10.846,"target":11.14,"target_label":"premarket_high","reward_risk":1.28,"pos_in_5d_range_pct":109.5,"room_to_5d_high_atr":-0.22},"price":10.975,"vwap":10.831,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.795,"trend":"flat","recent_slope_pct":0.0634,"volatility":"medium"},"price":10.975,"volume":{"bars":124,"last_bar_volume":69231.0,"baseline_avg":352606.6,"bar_rvol":0.196341,"raw_accel":-0.783694,"smooth_accel":-0.838891,"accel_momentum":-0.061118,"rvol_3bar":[0.349446,0.931246,0.196341],"trend_3bar":"MIXED","projected_rvol":0.883171},"flow":{"window_s":30,"trades":171,"trade_rate":5.7,"buy_vol":41879.0,"sell_vol":60563.0,"unclassified_vol":0.0,"imbalance":-0.182386,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":0.356255},"context":{"vwap":10.830068,"price_vs_vwap_pct":1.338233,"ema9":10.945996,"ema20":10.936832,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.49864,"dist_to_hod_atr":1.943342,"atr":0.028302,"spread_atr":0.353335,"own_change_pct":0.069406,"rel_strength_pct":{"SPY":0.052519,"IWM":0.023929}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.03581},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e0ddff3493f1","ts":"2026-09-21T15:35:00.476000+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1367.8s, plan says PASS; stop 8.60, target 9.94 (range_20d_high), R:R 12.12; target 1.23 away > ~0.17 reachable in 260 min","plan":{"state":"PASS","setup":"","stop":8.6031,"target":9.94,"target_label":"range_20d_high","reward_risk":12.12,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.87},"price":8.705,"vwap":8.6106,"ext_from_open_pct":0.99,"max_ext_allowed_pct":4.0,"volume_pace":1.105,"trend":"flat","recent_slope_pct":0.126,"volatility":"medium"},"price":8.705,"volume":{"bars":124,"last_bar_volume":5229.0,"baseline_avg":8674.5,"bar_rvol":0.602801,"raw_accel":-0.96155,"smooth_accel":74.523985,"accel_momentum":-6.33012,"rvol_3bar":[0.998656,64.093126,0.602801],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2307.0,"sell_vol":1446.0,"unclassified_vol":0.0,"imbalance":0.229416,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":0.183317},"context":{"vwap":8.61,"price_vs_vwap_pct":1.103369,"ema9":8.67585,"ema20":8.667142,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.514286,"dist_to_hod_atr":2.016283,"atr":0.022318,"spread_atr":0.448063,"own_change_pct":0.462787,"rel_strength_pct":{"SPY":0.462293,"IWM":0.469781}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.138293},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a47fed182d7e","ts":"2026-09-21T15:35:10.686521+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 789.3s, plan says PASS; stop 10.82, target 11.03 (ceiling), R:R 0.61; R:R 0.61 < 2.0 at 10.95; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.8226,"target":11.03,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":107.6,"room_to_5d_high_atr":-0.18},"price":10.9516,"vwap":10.8312,"ext_from_open_pct":-0.26,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":0.029,"volatility":"medium"},"price":10.9516,"volume":{"bars":125,"last_bar_volume":308034.0,"baseline_avg":349077.4,"bar_rvol":0.882423,"raw_accel":2.529693,"smooth_accel":-0.761577,"accel_momentum":0.077314,"rvol_3bar":[0.931246,0.196341,0.882423],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":174,"trade_rate":5.8,"buy_vol":50275.0,"sell_vol":88275.0,"unclassified_vol":0.0,"imbalance":-0.274269,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":2.35359},"context":{"vwap":10.831097,"price_vs_vwap_pct":1.112566,"ema9":10.951797,"ema20":10.940467,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.710789,"dist_to_hod_atr":2.745902,"atr":0.028552,"spread_atr":0.350243,"own_change_pct":0.228311,"rel_strength_pct":{"SPY":0.227817,"IWM":0.235305}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.242022},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2a70eaf56789","ts":"2026-09-21T15:35:15.743611+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1383.1s, plan says WATCH; stop 8.60, target 8.75 (ceiling), R:R 0.49; R:R 0.49 < 2.0 at 8.70; pullback: buy 8.66-8.69 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5982,"target":8.75,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":127.3,"room_to_5d_high_atr":-0.86},"price":8.7001,"vwap":8.6111,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":1.109,"trend":"flat","recent_slope_pct":0.1078,"volatility":"medium"},"price":8.7001,"volume":{"bars":125,"last_bar_volume":5237.0,"baseline_avg":8895.2,"bar_rvol":0.588744,"raw_accel":0.00153,"smooth_accel":51.589587,"accel_momentum":-22.934398,"rvol_3bar":[64.093126,0.602801,0.588744],"trend_3bar":"DECELERATING","projected_rvol":1.626363},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":5536.0,"sell_vol":1071.0,"unclassified_vol":0.0,"imbalance":0.675798,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":1.607658},"context":{"vwap":8.61064,"price_vs_vwap_pct":1.038951,"ema9":8.68168,"ema20":8.670747,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.570286,"dist_to_hod_atr":2.168637,"atr":0.02301,"spread_atr":0.434597,"own_change_pct":0.423382,"rel_strength_pct":{"SPY":0.422888,"IWM":0.430376}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.397873},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"769590e1001a","ts":"2026-09-21T15:35:15.743611+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 794.4s, plan says WATCH; stop 10.85, target 11.14 (premarket_high), R:R 1.28; R:R 1.28 < 2.0 at 10.97; breakout: 1-min close > 11.04 on >= 389189 sh","plan":{"state":"WATCH","setup":"","stop":10.846,"target":11.14,"target_label":"premarket_high","reward_risk":1.28,"pos_in_5d_range_pct":109.5,"room_to_5d_high_atr":-0.22},"price":10.975,"vwap":10.8312,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":0.0717,"volatility":"medium"},"price":10.975,"volume":{"bars":125,"last_bar_volume":308034.0,"baseline_avg":349077.4,"bar_rvol":0.882423,"raw_accel":2.529693,"smooth_accel":-0.761577,"accel_momentum":0.077314,"rvol_3bar":[0.931246,0.196341,0.882423],"trend_3bar":"MIXED","projected_rvol":0.229869},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":40179.0,"sell_vol":47608.0,"unclassified_vol":0.0,"imbalance":-0.084625,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":1.367545},"context":{"vwap":10.831097,"price_vs_vwap_pct":1.328611,"ema9":10.951797,"ema20":10.940467,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.49864,"dist_to_hod_atr":1.926335,"atr":0.028552,"spread_atr":0.350243,"own_change_pct":0.228311,"rel_strength_pct":{"SPY":0.227817,"IWM":0.235305}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.074675},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"686778fe8633","ts":"2026-09-21T15:35:20.795635+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1388.2s, plan says PASS; stop 8.61, target 9.94 (range_20d_high), R:R 12.07; target 1.23 away > ~0.17 reachable in 260 min","plan":{"state":"PASS","setup":"","stop":8.608,"target":9.94,"target_label":"range_20d_high","reward_risk":12.07,"pos_in_5d_range_pct":128.0,"room_to_5d_high_atr":-0.88},"price":8.7099,"vwap":8.6112,"ext_from_open_pct":1.04,"max_ext_allowed_pct":3.0,"volume_pace":1.108,"trend":"flat","recent_slope_pct":0.1303,"volatility":"medium"},"price":8.7099,"volume":{"bars":125,"last_bar_volume":5237.0,"baseline_avg":8895.2,"bar_rvol":0.588744,"raw_accel":0.00153,"smooth_accel":51.589587,"accel_momentum":-22.934398,"rvol_3bar":[64.093126,0.602801,0.588744],"trend_3bar":"DECELERATING","projected_rvol":1.233854},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":4996.0,"sell_vol":851.0,"unclassified_vol":0.0,"imbalance":0.708911,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":6.659682},"context":{"vwap":8.61064,"price_vs_vwap_pct":1.152763,"ema9":8.68168,"ema20":8.670747,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.458286,"dist_to_hod_atr":1.742732,"atr":0.02301,"spread_atr":0.434597,"own_change_pct":0.423382,"rel_strength_pct":{"SPY":0.422888,"IWM":0.430376}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.417367},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"4b705ffc8953","ts":"2026-09-21T15:35:30.897308+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.02 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.1299,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0161,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.213,"trend":"flat","recent_slope_pct":-0.042,"volatility":"medium"},"price":9.015,"volume":{"bars":125,"last_bar_volume":8744.0,"baseline_avg":13684.45,"bar_rvol":0.638973,"raw_accel":-0.032315,"smooth_accel":0.295185,"accel_momentum":0.038795,"rvol_3bar":[1.462251,0.674555,0.638973],"trend_3bar":"DECELERATING","projected_rvol":3.59677},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":2507.0,"sell_vol":22037.0,"unclassified_vol":0.0,"imbalance":-0.795714,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":1.640011},"context":{"vwap":9.016056,"price_vs_vwap_pct":-0.011717,"ema9":9.031194,"ema20":9.034595,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":4.789239,"atr":0.023991,"spread_atr":0.416818,"own_change_pct":-0.12509,"rel_strength_pct":{"SPY":-0.125584,"IWM":-0.118095}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.50844},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"ae1d21aefa5c","ts":"2026-09-21T15:35:30.897308+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1398.3s, plan says WATCH; stop 8.57, target 8.75 (ceiling), R:R 0.73; imbalance -69% still heavy selling; no reclaim yet (needs a close > 8.71); R:R 0.73 < 2.0 at 8.68; pullback: buy 8.66-8.69 ho","plan":{"state":"WATCH","setup":"","stop":8.5737,"target":8.75,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":125.4,"room_to_5d_high_atr":-0.8},"price":8.6756,"vwap":8.6111,"ext_from_open_pct":0.65,"max_ext_allowed_pct":3.0,"volume_pace":1.107,"trend":"flat","recent_slope_pct":0.0515,"volatility":"medium"},"price":8.6756,"volume":{"bars":125,"last_bar_volume":5237.0,"baseline_avg":8895.2,"bar_rvol":0.588744,"raw_accel":0.00153,"smooth_accel":51.589587,"accel_momentum":-22.934398,"rvol_3bar":[64.093126,0.602801,0.588744],"trend_3bar":"DECELERATING","projected_rvol":0.837221},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":3792.0,"sell_vol":43.0,"unclassified_vol":0.0,"imbalance":0.977575,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":7.797443},"context":{"vwap":8.61064,"price_vs_vwap_pct":0.754419,"ema9":8.68168,"ema20":8.670747,"ema_stack":false,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.850286,"dist_to_hod_atr":3.233398,"atr":0.02301,"spread_atr":0.434597,"own_change_pct":0.423382,"rel_strength_pct":{"SPY":0.422888,"IWM":0.430376}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.575542},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"37111b9fbb9e","ts":"2026-09-21T15:35:30.897308+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.30x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.9571,"target":13.2,"target_label":"ceiling","reward_risk":1.48,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":3.02},"price":13.055,"vwap":13.0337,"ext_from_open_pct":-1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.303,"trend":"flat","recent_slope_pct":0.0642,"volatility":"medium"},"price":13.055,"volume":{"bars":125,"last_bar_volume":7426.0,"baseline_avg":2510.2,"bar_rvol":2.95833,"raw_accel":4.504818,"smooth_accel":0.293956,"accel_momentum":-1.335432,"rvol_3bar":[0.353982,0.461765,2.95833],"trend_3bar":"ACCELERATING","projected_rvol":10.279735},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":6332.0,"sell_vol":6901.0,"unclassified_vol":0.0,"imbalance":-0.042999,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":1.898979},"context":{"vwap":13.033544,"price_vs_vwap_pct":0.164619,"ema9":13.016143,"ema20":13.006503,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-2.136432,"dist_to_hod_atr":13.010635,"atr":0.021905,"spread_atr":0.456513,"own_change_pct":0.076834,"rel_strength_pct":{"SPY":0.076341,"IWM":0.083829}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.127204},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"926ba6775a41","ts":"2026-09-21T15:35:51.226819+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":12.9544,"target":13.2,"target_label":"ceiling","reward_risk":1.51,"pos_in_5d_range_pct":-1.5,"room_to_5d_high_atr":3.03},"price":13.0523,"vwap":13.0337,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.302,"trend":"flat","recent_slope_pct":0.06,"volatility":"medium"},"price":13.0523,"volume":{"bars":125,"last_bar_volume":7426.0,"baseline_avg":2510.2,"bar_rvol":2.95833,"raw_accel":4.504818,"smooth_accel":0.293956,"accel_momentum":-1.335432,"rvol_3bar":[0.353982,0.461765,2.95833],"trend_3bar":"ACCELERATING","projected_rvol":6.315443},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":4684.0,"sell_vol":3820.0,"unclassified_vol":0.0,"imbalance":0.101599,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":3.891378},"context":{"vwap":13.033544,"price_vs_vwap_pct":0.143903,"ema9":13.016143,"ema20":13.006503,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-2.156672,"dist_to_hod_atr":13.133893,"atr":0.021905,"spread_atr":0.456513,"own_change_pct":0.076834,"rel_strength_pct":{"SPY":0.076341,"IWM":0.083829}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.300564},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"da68a29b0542","ts":"2026-09-21T15:35:56.313794+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9325,"target":9.1299,"target_label":"ceiling","reward_risk":1.28,"pos_in_5d_range_pct":126.3,"room_to_5d_high_atr":-0.84},"price":9.019,"vwap":9.016,"ext_from_open_pct":-0.01,"max_ext_allowed_pct":3.0,"volume_pace":1.215,"trend":"flat","recent_slope_pct":-0.0331,"volatility":"medium"},"price":9.019,"volume":{"bars":125,"last_bar_volume":8744.0,"baseline_avg":13684.45,"bar_rvol":0.638973,"raw_accel":-0.032315,"smooth_accel":0.295185,"accel_momentum":0.038795,"rvol_3bar":[1.462251,0.674555,0.638973],"trend_3bar":"DECELERATING","projected_rvol":3.325049},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":2340.0,"sell_vol":22269.0,"unclassified_vol":0.0,"imbalance":-0.809826,"bid":8.99,"ask":9.0,"spread_pct":0.111173,"quote_size_imbalance":null,"quote_age_s":4.879487},"context":{"vwap":9.016056,"price_vs_vwap_pct":0.032649,"ema9":9.031194,"ema20":9.034595,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.21469,"dist_to_hod_atr":4.622512,"atr":0.023991,"spread_atr":0.416818,"own_change_pct":-0.12509,"rel_strength_pct":{"SPY":-0.125584,"IWM":-0.118095}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.517457},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"0e09b9c16b2b","ts":"2026-09-21T15:35:56.313794+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7566,"target":9.21,"target_label":"prev_day_high","reward_risk":4.13,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7498,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.653,"trend":"flat","recent_slope_pct":0.1242,"volatility":"unknown"},"price":8.845,"volume":{"bars":125,"last_bar_volume":109692.0,"baseline_avg":98951.1,"bar_rvol":1.108548,"raw_accel":-0.216256,"smooth_accel":0.655974,"accel_momentum":0.33154,"rvol_3bar":[0.412496,1.444459,1.108548],"trend_3bar":"MIXED","projected_rvol":1.216838},"flow":{"window_s":30,"trades":299,"trade_rate":9.966667,"buy_vol":59840.0,"sell_vol":42536.0,"unclassified_vol":0.0,"imbalance":0.169024,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.049456},"context":{"vwap":8.749022,"price_vs_vwap_pct":1.09702,"ema9":8.849104,"ema20":8.843038,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.007275,"dist_to_hod_atr":1.567619,"atr":0.057412,"spread_atr":0.17418,"own_change_pct":-0.350005,"rel_strength_pct":{"SPY":-0.350498,"IWM":-0.34301}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.187371},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"12ef6f7b1f9c","ts":"2026-09-21T15:36:01.409414+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":8.9395,"target":9.1299,"target_label":"ceiling","reward_risk":1.2,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.86},"price":9.026,"vwap":9.0159,"ext_from_open_pct":0.07,"max_ext_allowed_pct":3.0,"volume_pace":1.214,"trend":"flat","recent_slope_pct":-0.0224,"volatility":"medium"},"price":9.026,"volume":{"bars":126,"last_bar_volume":42729.0,"baseline_avg":10573.4,"bar_rvol":4.041179,"raw_accel":3.886665,"smooth_accel":0.547426,"accel_momentum":0.252241,"rvol_3bar":[0.674555,0.638973,4.041179],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":2208.0,"sell_vol":15275.0,"unclassified_vol":0.0,"imbalance":-0.747412,"bid":8.99,"ask":9.0,"spread_pct":0.111173,"quote_size_imbalance":null,"quote_age_s":9.975107},"context":{"vwap":9.01594,"price_vs_vwap_pct":0.111576,"ema9":9.023955,"ema20":9.030824,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.138019,"dist_to_hod_atr":4.110355,"atr":0.025278,"spread_atr":0.395607,"own_change_pct":-0.313632,"rel_strength_pct":{"SPY":-0.303892,"IWM":-0.278417}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.020425},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"39f889ecf450","ts":"2026-09-21T15:36:06.629252+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1434.0s, plan says PASS; stop 8.62, target 9.94 (range_20d_high), R:R 11.99; target 1.22 away > ~0.17 reachable in 259 min","plan":{"state":"PASS","setup":"","stop":8.6161,"target":9.94,"target_label":"range_20d_high","reward_risk":11.99,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-0.9},"price":8.718,"vwap":8.6113,"ext_from_open_pct":1.14,"max_ext_allowed_pct":3.0,"volume_pace":1.104,"trend":"flat","recent_slope_pct":0.0695,"volatility":"medium"},"price":8.718,"volume":{"bars":126,"last_bar_volume":3938.0,"baseline_avg":9054.3,"bar_rvol":0.434931,"raw_accel":-0.248043,"smooth_accel":-0.896059,"accel_momentum":-52.485646,"rvol_3bar":[0.602801,0.588744,0.434931],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1400.0,"sell_vol":399.0,"unclassified_vol":0.0,"imbalance":0.55642,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":0.928099},"context":{"vwap":8.61107,"price_vs_vwap_pct":1.241777,"ema9":8.680464,"ema20":8.671209,"ema_stack":true,"ema_warm":true,"hod":8.75,"dist_to_hod_pct":-0.365714,"dist_to_hod_atr":1.343216,"atr":0.023823,"spread_atr":0.419755,"own_change_pct":0.08537,"rel_strength_pct":{"SPY":0.09511,"IWM":0.120585}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.242005},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"5af51df99403","ts":"2026-09-21T15:36:42.592662+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.9571,"target":13.2,"target_label":"ceiling","reward_risk":1.48,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":3.02},"price":13.055,"vwap":13.0343,"ext_from_open_pct":-1.32,"max_ext_allowed_pct":4.0,"volume_pace":0.318,"trend":"flat","recent_slope_pct":0.0942,"volatility":"medium"},"price":13.055,"volume":{"bars":126,"last_bar_volume":13535.0,"baseline_avg":2804.85,"bar_rvol":4.82557,"raw_accel":0.82265,"smooth_accel":1.889896,"accel_momentum":1.595941,"rvol_3bar":[0.461765,2.95833,4.82557],"trend_3bar":"ACCELERATING","projected_rvol":25.717939},"flow":{"window_s":30,"trades":119,"trade_rate":3.966667,"buy_vol":35810.0,"sell_vol":1069.0,"unclassified_vol":0.0,"imbalance":0.942027,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":1.885067},"context":{"vwap":13.033666,"price_vs_vwap_pct":0.163685,"ema9":13.023374,"ema20":13.010865,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-2.136432,"dist_to_hod_atr":12.342737,"atr":0.023091,"spread_atr":0.433078,"own_change_pct":0.325135,"rel_strength_pct":{"SPY":0.334875,"IWM":0.36035}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":4.545815},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ac5625c0d06a","ts":"2026-09-21T15:36:47.712044+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 886.3s, plan says PASS; stop 10.84, target 11.03 (ceiling), R:R 0.50; R:R 0.50 < 2.0 at 10.96; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.836,"target":11.03,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":108.7,"room_to_5d_high_atr":-0.2},"price":10.965,"vwap":10.8318,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.788,"trend":"flat","recent_slope_pct":0.0389,"volatility":"medium"},"price":10.965,"volume":{"bars":126,"last_bar_volume":165077.0,"baseline_avg":357428.95,"bar_rvol":0.461846,"raw_accel":-0.464095,"smooth_accel":-0.229593,"accel_momentum":0.531984,"rvol_3bar":[0.196341,0.882423,0.461846],"trend_3bar":"MIXED","projected_rvol":0.181101},"flow":{"window_s":30,"trades":129,"trade_rate":4.3,"buy_vol":15685.0,"sell_vol":25920.0,"unclassified_vol":0.0,"imbalance":-0.246004,"bid":10.96,"ask":10.97,"spread_pct":0.091199,"quote_size_imbalance":null,"quote_age_s":0.182622},"context":{"vwap":10.831638,"price_vs_vwap_pct":1.231228,"ema9":10.955497,"ema20":10.943309,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.589302,"dist_to_hod_atr":2.268358,"atr":0.028655,"spread_atr":0.348978,"own_change_pct":0.231156,"rel_strength_pct":{"SPY":0.240896,"IWM":0.266372}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.113616},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6e4dcd464d98","ts":"2026-09-21T15:36:47.712044+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.9469,"target":13.2,"target_label":"ceiling","reward_risk":1.58,"pos_in_5d_range_pct":-2.2,"room_to_5d_high_atr":3.05},"price":13.0448,"vwap":13.0342,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.32,"trend":"flat","recent_slope_pct":0.0786,"volatility":"medium"},"price":13.0448,"volume":{"bars":126,"last_bar_volume":13535.0,"baseline_avg":2804.85,"bar_rvol":4.82557,"raw_accel":0.82265,"smooth_accel":1.889896,"accel_momentum":1.595941,"rvol_3bar":[0.461765,2.95833,4.82557],"trend_3bar":"ACCELERATING","projected_rvol":25.614472},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":35810.0,"sell_vol":6987.0,"unclassified_vol":0.0,"imbalance":0.673482,"bid":13.04,"ask":13.05,"spread_pct":0.076658,"quote_size_imbalance":null,"quote_age_s":0.312569},"context":{"vwap":13.033666,"price_vs_vwap_pct":0.085426,"ema9":13.023374,"ema20":13.010865,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-2.212894,"dist_to_hod_atr":12.784477,"atr":0.023091,"spread_atr":0.433078,"own_change_pct":0.325135,"rel_strength_pct":{"SPY":0.334875,"IWM":0.36035}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.249933},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6b23a31a377b","ts":"2026-09-21T15:37:02.991781+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 901.6s, plan says WATCH; stop 10.85, target 11.14 (premarket_high), R:R 1.28; R:R 1.28 < 2.0 at 10.97; breakout: 1-min close > 11.04 on >= 377785 sh","plan":{"state":"WATCH","setup":"","stop":10.846,"target":11.14,"target_label":"premarket_high","reward_risk":1.28,"pos_in_5d_range_pct":109.5,"room_to_5d_high_atr":-0.22},"price":10.975,"vwap":10.832,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.788,"trend":"flat","recent_slope_pct":0.024,"volatility":"medium"},"price":10.975,"volume":{"bars":127,"last_bar_volume":86092.0,"baseline_avg":362181.05,"bar_rvol":0.237704,"raw_accel":-0.478474,"smooth_accel":0.099925,"accel_momentum":0.329518,"rvol_3bar":[0.882423,0.461846,0.237704],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":208,"trade_rate":6.933333,"buy_vol":50367.0,"sell_vol":48282.0,"unclassified_vol":0.0,"imbalance":0.021136,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":1.1958},"context":{"vwap":10.831918,"price_vs_vwap_pct":1.320929,"ema9":10.957738,"ema20":10.945536,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.49864,"dist_to_hod_atr":1.928297,"atr":0.028523,"spread_atr":0.350599,"own_change_pct":0.168978,"rel_strength_pct":{"SPY":0.140403,"IWM":0.169257}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.005024},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"2092fc6ba4ea","ts":"2026-09-21T15:37:02.991781+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.9621,"target":13.2,"target_label":"ceiling","reward_risk":1.43,"pos_in_5d_range_pct":-0.9,"room_to_5d_high_atr":3.01},"price":13.06,"vwap":13.0346,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.32,"trend":"flat","recent_slope_pct":0.1019,"volatility":"low"},"price":13.06,"volume":{"bars":126,"last_bar_volume":13535.0,"baseline_avg":2804.85,"bar_rvol":4.82557,"raw_accel":0.82265,"smooth_accel":1.889896,"accel_momentum":1.595941,"rvol_3bar":[0.461765,2.95833,4.82557],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":4138.0,"sell_vol":7021.0,"unclassified_vol":0.0,"imbalance":-0.258356,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":3.436317},"context":{"vwap":13.033666,"price_vs_vwap_pct":0.202047,"ema9":13.023374,"ema20":13.010865,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-2.098951,"dist_to_hod_atr":12.126197,"atr":0.023091,"spread_atr":0.433078,"own_change_pct":0.325135,"rel_strength_pct":{"SPY":0.29656,"IWM":0.325414}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-1.246717},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"464abfd5bc72","ts":"2026-09-21T15:37:02.991781+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7554,"target":9.21,"target_label":"prev_day_high","reward_risk":4.14,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8438,"vwap":8.7502,"ext_from_open_pct":3.8,"max_ext_allowed_pct":3.0,"volume_pace":0.65,"trend":"flat","recent_slope_pct":0.015,"volatility":"unknown"},"price":8.8438,"volume":{"bars":127,"last_bar_volume":36914.0,"baseline_avg":105165.25,"bar_rvol":0.351009,"raw_accel":-0.699429,"smooth_accel":0.144491,"accel_momentum":-1.480435,"rvol_3bar":[1.108548,1.190195,0.351009],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":9499.0,"sell_vol":3714.0,"unclassified_vol":0.0,"imbalance":0.437826,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.637061},"context":{"vwap":8.750183,"price_vs_vwap_pct":1.069884,"ema9":8.848547,"ema20":8.843832,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.020705,"dist_to_hod_atr":1.695182,"atr":0.0538,"spread_atr":0.185875,"own_change_pct":0.450629,"rel_strength_pct":{"SPY":0.422055,"IWM":0.450909}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.153681},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"564e033c5e4a","ts":"2026-09-21T15:37:48.801377+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.5915,"target":9.74,"target_label":"premarket_high","reward_risk":0.51,"pos_in_5d_range_pct":105.0,"room_to_5d_high_atr":-0.05},"price":9.69,"vwap":9.682,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.758,"trend":"flat","recent_slope_pct":-0.0857,"volatility":"medium"},"price":9.69,"volume":{"bars":127,"last_bar_volume":2693.0,"baseline_avg":10004.0,"bar_rvol":0.269192,"raw_accel":0.076769,"smooth_accel":-0.709522,"accel_momentum":-0.213985,"rvol_3bar":[0.321257,0.199674,0.269192],"trend_3bar":"MIXED","projected_rvol":0.3172},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":862.0,"sell_vol":910.0,"unclassified_vol":0.0,"imbalance":-0.027088,"bid":9.68,"ask":9.69,"spread_pct":0.103252,"quote_size_imbalance":null,"quote_age_s":0.135085},"context":{"vwap":9.681944,"price_vs_vwap_pct":0.083201,"ema9":9.71263,"ema20":9.716364,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.424212,"dist_to_hod_atr":4.256764,"atr":0.032889,"spread_atr":0.304055,"own_change_pct":0.154799,"rel_strength_pct":{"SPY":0.126224,"IWM":0.155079}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.007292},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"748da140afaf","ts":"2026-09-21T15:38:03.956968+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.5865,"target":9.74,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":103.8,"room_to_5d_high_atr":-0.04},"price":9.685,"vwap":9.682,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":-0.0994,"volatility":"medium"},"price":9.685,"volume":{"bars":128,"last_bar_volume":3542.0,"baseline_avg":9772.5,"bar_rvol":0.362446,"raw_accel":0.315262,"smooth_accel":-0.566489,"accel_momentum":0.143032,"rvol_3bar":[0.199674,0.269192,0.362446],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1212.0,"sell_vol":910.0,"unclassified_vol":0.0,"imbalance":0.142319,"bid":9.68,"ask":9.69,"spread_pct":0.103252,"quote_size_imbalance":null,"quote_age_s":0.220994},"context":{"vwap":9.68197,"price_vs_vwap_pct":0.031291,"ema9":9.707104,"ema20":9.713377,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.475076,"dist_to_hod_atr":4.47181,"atr":0.032425,"spread_atr":0.308401,"own_change_pct":-0.057788,"rel_strength_pct":{"SPY":-0.099348,"IWM":-0.052542}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.051583},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"190013c72477","ts":"2026-09-21T15:38:09.040477+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6014,"target":9.74,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":107.5,"room_to_5d_high_atr":-0.08},"price":9.6999,"vwap":9.682,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":-0.0686,"volatility":"medium"},"price":9.6999,"volume":{"bars":128,"last_bar_volume":3542.0,"baseline_avg":9772.5,"bar_rvol":0.362446,"raw_accel":0.315262,"smooth_accel":-0.566489,"accel_momentum":0.143032,"rvol_3bar":[0.199674,0.269192,0.362446],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1275.0,"sell_vol":1100.0,"unclassified_vol":0.0,"imbalance":0.073684,"bid":9.68,"ask":9.69,"spread_pct":0.103252,"quote_size_imbalance":null,"quote_age_s":0.53416},"context":{"vwap":9.68197,"price_vs_vwap_pct":0.185185,"ema9":9.707104,"ema20":9.713377,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.323499,"dist_to_hod_atr":4.012293,"atr":0.032425,"spread_atr":0.308401,"own_change_pct":-0.057788,"rel_strength_pct":{"SPY":-0.099348,"IWM":-0.052542}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.026707},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e2856319646d","ts":"2026-09-21T15:38:09.040477+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7714,"target":9.21,"target_label":"prev_day_high","reward_risk":3.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.86,"vwap":8.7513,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.651,"trend":"flat","recent_slope_pct":0.0138,"volatility":"unknown"},"price":8.86,"volume":{"bars":128,"last_bar_volume":129341.0,"baseline_avg":100719.15,"bar_rvol":1.284175,"raw_accel":2.503847,"smooth_accel":-0.004916,"accel_momentum":-0.149407,"rvol_3bar":[1.190195,0.351009,1.284175],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":42538.0,"sell_vol":16502.0,"unclassified_vol":0.0,"imbalance":0.440989,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.800627},"context":{"vwap":8.751186,"price_vs_vwap_pct":1.24342,"ema9":8.848077,"ema20":8.844057,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.839396,"dist_to_hod_atr":1.427418,"atr":0.052542,"spread_atr":0.190322,"own_change_pct":0.353942,"rel_strength_pct":{"SPY":0.312382,"IWM":0.359188}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.566307},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"25746d769a04","ts":"2026-09-21T15:38:14.158401+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 972.8s, plan says PASS; stop 10.83, target 11.03 (ceiling), R:R 0.57; R:R 0.57 < 2.0 at 10.96; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.8272,"target":11.03,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":108.0,"room_to_5d_high_atr":-0.19},"price":10.9562,"vwap":10.8326,"ext_from_open_pct":-0.22,"max_ext_allowed_pct":3.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":-0.0254,"volatility":"medium"},"price":10.9562,"volume":{"bars":128,"last_bar_volume":206334.0,"baseline_avg":364568.45,"bar_rvol":0.565968,"raw_accel":1.263871,"smooth_accel":-0.343917,"accel_momentum":-0.443842,"rvol_3bar":[0.461846,0.237704,0.565968],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":12573.0,"sell_vol":25503.0,"unclassified_vol":0.0,"imbalance":-0.339584,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":1.101423},"context":{"vwap":10.83261,"price_vs_vwap_pct":1.140905,"ema9":10.96219,"ema20":10.948819,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.669084,"dist_to_hod_atr":2.612432,"atr":0.02825,"spread_atr":0.353988,"own_change_pct":0.273973,"rel_strength_pct":{"SPY":0.232413,"IWM":0.279219}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.192194},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f9071e4c70fa","ts":"2026-09-21T15:38:14.158401+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7781,"target":9.21,"target_label":"prev_day_high","reward_risk":3.87,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8668,"vwap":8.7513,"ext_from_open_pct":4.07,"max_ext_allowed_pct":4.0,"volume_pace":0.65,"trend":"flat","recent_slope_pct":0.0291,"volatility":"unknown"},"price":8.8668,"volume":{"bars":128,"last_bar_volume":129341.0,"baseline_avg":100719.15,"bar_rvol":1.284175,"raw_accel":2.503847,"smooth_accel":-0.004916,"accel_momentum":-0.149407,"rvol_3bar":[1.190195,0.351009,1.284175],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":29443.0,"sell_vol":15911.0,"unclassified_vol":0.0,"imbalance":0.298364,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.782118},"context":{"vwap":8.751186,"price_vs_vwap_pct":1.321124,"ema9":8.848077,"ema20":8.844057,"ema_stack":true,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.76329,"dist_to_hod_atr":1.297999,"atr":0.052542,"spread_atr":0.190322,"own_change_pct":0.353942,"rel_strength_pct":{"SPY":0.312382,"IWM":0.359188}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.383152},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"076df017c28b","ts":"2026-09-21T15:38:19.249094+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.0038,"target":11.275,"target_label":"range_20d_high","reward_risk":1.44,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.115,"vwap":10.9627,"ext_from_open_pct":3.88,"max_ext_allowed_pct":4.0,"volume_pace":0.791,"trend":"flat","recent_slope_pct":-0.0538,"volatility":"unknown"},"price":11.115,"volume":{"bars":128,"last_bar_volume":48438.0,"baseline_avg":101978.6,"bar_rvol":0.474982,"raw_accel":-0.275986,"smooth_accel":2.981906,"accel_momentum":-0.30108,"rvol_3bar":[3.920247,0.643525,0.474982],"trend_3bar":"DECELERATING","projected_rvol":0.464352},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":12274.0,"sell_vol":21853.0,"unclassified_vol":0.0,"imbalance":-0.280687,"bid":11.11,"ask":11.12,"spread_pct":0.089969,"quote_size_imbalance":null,"quote_age_s":0.82169},"context":{"vwap":10.96259,"price_vs_vwap_pct":1.39027,"ema9":11.127347,"ema20":11.088335,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.263708,"dist_to_hod_atr":5.127969,"atr":0.073128,"spread_atr":0.136746,"own_change_pct":0.405954,"rel_strength_pct":{"SPY":0.364394,"IWM":0.4112}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.133321},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"00aa80b33490","ts":"2026-09-21T15:38:19.249094+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 977.9s, plan says WATCH; stop 10.85, target 11.14 (premarket_high), R:R 1.28; R:R 1.28 < 2.0 at 10.97; breakout: 1-min close > 11.04 on >= 376621 sh","plan":{"state":"WATCH","setup":"","stop":10.846,"target":11.14,"target_label":"premarket_high","reward_risk":1.28,"pos_in_5d_range_pct":109.5,"room_to_5d_high_atr":-0.22},"price":10.975,"vwap":10.8326,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":0.0088,"volatility":"medium"},"price":10.975,"volume":{"bars":128,"last_bar_volume":206334.0,"baseline_avg":364568.45,"bar_rvol":0.565968,"raw_accel":1.263871,"smooth_accel":-0.343917,"accel_momentum":-0.443842,"rvol_3bar":[0.461846,0.237704,0.565968],"trend_3bar":"MIXED","projected_rvol":0.065629},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":13505.0,"sell_vol":4996.0,"unclassified_vol":0.0,"imbalance":0.459921,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":3.082465},"context":{"vwap":10.83261,"price_vs_vwap_pct":1.314456,"ema9":10.96219,"ema20":10.948819,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.49864,"dist_to_hod_atr":1.946934,"atr":0.02825,"spread_atr":0.353988,"own_change_pct":0.273973,"rel_strength_pct":{"SPY":0.232413,"IWM":0.279219}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.260301},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fafe2aab2985","ts":"2026-09-21T15:38:24.343705+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":11.0399,"target":11.275,"target_label":"range_20d_high","reward_risk":1.11,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.1514,"vwap":10.9629,"ext_from_open_pct":4.22,"max_ext_allowed_pct":4.0,"volume_pace":0.792,"trend":"flat","recent_slope_pct":0.0115,"volatility":"unknown"},"price":11.1514,"volume":{"bars":128,"last_bar_volume":48438.0,"baseline_avg":101978.6,"bar_rvol":0.474982,"raw_accel":-0.275986,"smooth_accel":2.981906,"accel_momentum":-0.30108,"rvol_3bar":[3.920247,0.643525,0.474982],"trend_3bar":"DECELERATING","projected_rvol":0.803565},"flow":{"window_s":30,"trades":225,"trade_rate":7.5,"buy_vol":24442.0,"sell_vol":27625.0,"unclassified_vol":0.0,"imbalance":-0.061133,"bid":11.13,"ask":11.14,"spread_pct":0.089807,"quote_size_imbalance":null,"quote_age_s":1.495962},"context":{"vwap":10.96259,"price_vs_vwap_pct":1.722308,"ema9":11.127347,"ema20":11.088335,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-2.94691,"dist_to_hod_atr":4.630214,"atr":0.073128,"spread_atr":0.136746,"own_change_pct":0.405954,"rel_strength_pct":{"SPY":0.364394,"IWM":0.4112}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.029037},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ae232bba571c","ts":"2026-09-21T15:39:36.543695+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.9821,"target":13.42,"target_label":"prev_day_high","reward_risk":3.47,"pos_in_5d_range_pct":0.9,"room_to_5d_high_atr":2.96},"price":13.08,"vwap":13.035,"ext_from_open_pct":-1.13,"max_ext_allowed_pct":3.0,"volume_pace":0.317,"trend":"flat","recent_slope_pct":0.0291,"volatility":"low"},"price":13.08,"volume":{"bars":129,"last_bar_volume":1736.0,"baseline_avg":6289.1,"bar_rvol":0.276033,"raw_accel":0.104133,"smooth_accel":1.766024,"accel_momentum":-4.682451,"rvol_3bar":[17.147069,0.195903,0.276033],"trend_3bar":"MIXED","projected_rvol":2.019345},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":3211.0,"sell_vol":1484.0,"unclassified_vol":0.0,"imbalance":0.367838,"bid":13.08,"ask":13.09,"spread_pct":0.076423,"quote_size_imbalance":null,"quote_age_s":2.557979},"context":{"vwap":13.034694,"price_vs_vwap_pct":0.347581,"ema9":13.036968,"ema20":13.021521,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-1.949025,"dist_to_hod_atr":11.318599,"atr":0.022971,"spread_atr":0.435331,"own_change_pct":0.177426,"rel_strength_pct":{"SPY":0.124177,"IWM":0.219386}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.101536},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1e55c76b5321","ts":"2026-09-21T15:39:52.183495+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.9513,"target":13.15,"target_label":"ceiling","reward_risk":1.03,"pos_in_5d_range_pct":-1.8,"room_to_5d_high_atr":3.04},"price":13.0492,"vwap":13.0349,"ext_from_open_pct":-1.37,"max_ext_allowed_pct":3.0,"volume_pace":0.317,"trend":"flat","recent_slope_pct":-0.0181,"volatility":"medium"},"price":13.0492,"volume":{"bars":129,"last_bar_volume":1736.0,"baseline_avg":6289.1,"bar_rvol":0.276033,"raw_accel":0.104133,"smooth_accel":1.766024,"accel_momentum":-4.682451,"rvol_3bar":[17.147069,0.195903,0.276033],"trend_3bar":"MIXED","projected_rvol":1.658931},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":3144.0,"sell_vol":2570.0,"unclassified_vol":0.0,"imbalance":0.100455,"bid":13.07,"ask":13.08,"spread_pct":0.076482,"quote_size_imbalance":null,"quote_age_s":8.170781},"context":{"vwap":13.034694,"price_vs_vwap_pct":0.111289,"ema9":13.036968,"ema20":13.021521,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-2.17991,"dist_to_hod_atr":12.659418,"atr":0.022971,"spread_atr":0.435331,"own_change_pct":0.177426,"rel_strength_pct":{"SPY":0.124177,"IWM":0.219386}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.027729},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3e0881d263be","ts":"2026-09-21T15:40:54.395878+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.29x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.5805,"target":12.0,"target_label":"premarket_high","reward_risk":1.05,"pos_in_5d_range_pct":119.6,"room_to_5d_high_atr":-0.87},"price":11.785,"vwap":11.564,"ext_from_open_pct":0.99,"max_ext_allowed_pct":3.0,"volume_pace":0.289,"trend":"flat","recent_slope_pct":0.2638,"volatility":"high"},"price":11.785,"volume":{"bars":130,"last_bar_volume":10408.0,"baseline_avg":6623.8,"bar_rvol":1.571303,"raw_accel":4.873589,"smooth_accel":0.441361,"accel_momentum":0.9007,"rvol_3bar":[0.589876,0.266723,1.571303],"trend_3bar":"MIXED","projected_rvol":6.013865},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":6141.0,"sell_vol":6458.0,"unclassified_vol":0.0,"imbalance":-0.025161,"bid":11.77,"ask":11.81,"spread_pct":0.339271,"quote_size_imbalance":null,"quote_age_s":0.095289},"context":{"vwap":11.560502,"price_vs_vwap_pct":1.941939,"ema9":11.676433,"ema20":11.666915,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.627713,"dist_to_hod_atr":5.017906,"atr":0.038861,"spread_atr":1.029314,"own_change_pct":0.342759,"rel_strength_pct":{"SPY":0.26142,"IWM":0.353252}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.039535},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4e7259f4a22f","ts":"2026-09-21T15:40:59.486389+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.29x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.5155,"target":12.0,"target_label":"premarket_high","reward_risk":1.37,"pos_in_5d_range_pct":117.9,"room_to_5d_high_atr":-0.79},"price":11.72,"vwap":11.5642,"ext_from_open_pct":0.43,"max_ext_allowed_pct":3.0,"volume_pace":0.29,"trend":"flat","recent_slope_pct":0.1529,"volatility":"high"},"price":11.72,"volume":{"bars":130,"last_bar_volume":10408.0,"baseline_avg":6623.8,"bar_rvol":1.571303,"raw_accel":4.873589,"smooth_accel":0.441361,"accel_momentum":0.9007,"rvol_3bar":[0.589876,0.266723,1.571303],"trend_3bar":"MIXED","projected_rvol":6.737374},"flow":{"window_s":30,"trades":132,"trade_rate":4.4,"buy_vol":7753.0,"sell_vol":11926.0,"unclassified_vol":0.0,"imbalance":-0.212053,"bid":11.72,"ask":11.74,"spread_pct":0.170503,"quote_size_imbalance":null,"quote_age_s":1.362073},"context":{"vwap":11.560502,"price_vs_vwap_pct":1.37968,"ema9":11.676433,"ema20":11.666915,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-2.170284,"dist_to_hod_atr":6.690542,"atr":0.038861,"spread_atr":0.514657,"own_change_pct":0.342759,"rel_strength_pct":{"SPY":0.26142,"IWM":0.353252}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.3332},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9700d16fa786","ts":"2026-09-21T15:40:59.486389+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.31x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.9771,"target":13.42,"target_label":"prev_day_high","reward_risk":3.52,"pos_in_5d_range_pct":0.4,"room_to_5d_high_atr":2.97},"price":13.075,"vwap":13.035,"ext_from_open_pct":-1.17,"max_ext_allowed_pct":3.0,"volume_pace":0.315,"trend":"flat","recent_slope_pct":0.0185,"volatility":"low"},"price":13.075,"volume":{"bars":130,"last_bar_volume":9074.0,"baseline_avg":6312.3,"bar_rvol":1.437511,"raw_accel":4.226959,"smooth_accel":-0.848957,"accel_momentum":-2.614982,"rvol_3bar":[0.195903,0.276033,1.437511],"trend_3bar":"ACCELERATING","projected_rvol":0.135341},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":3.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":13.07,"ask":13.08,"spread_pct":0.076482,"quote_size_imbalance":null,"quote_age_s":4.942864},"context":{"vwap":13.034946,"price_vs_vwap_pct":0.307283,"ema9":13.039414,"ema20":13.024157,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-1.986507,"dist_to_hod_atr":10.875826,"atr":0.024366,"spread_atr":0.410409,"own_change_pct":0.185797,"rel_strength_pct":{"SPY":0.104457,"IWM":0.196289}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.437511},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"184bd627a114","ts":"2026-09-21T15:41:55.723088+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7155,"target":8.88,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":87.6,"room_to_5d_high_atr":0.21},"price":8.8244,"vwap":8.6614,"ext_from_open_pct":1.2,"max_ext_allowed_pct":3.0,"volume_pace":0.858,"trend":"flat","recent_slope_pct":-0.0304,"volatility":"medium"},"price":8.8244,"volume":{"bars":131,"last_bar_volume":2937.0,"baseline_avg":13261.3,"bar_rvol":0.221471,"raw_accel":-0.855519,"smooth_accel":0.121634,"accel_momentum":-0.670695,"rvol_3bar":[0.549768,1.395349,0.221471],"trend_3bar":"MIXED","projected_rvol":0.857258},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":1037.0,"sell_vol":3581.0,"unclassified_vol":0.0,"imbalance":-0.550888,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":2.378014},"context":{"vwap":8.660823,"price_vs_vwap_pct":1.888701,"ema9":8.829786,"ema20":8.828554,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":-0.626126,"dist_to_hod_atr":1.646011,"atr":0.033779,"spread_atr":0.296045,"own_change_pct":-0.073571,"rel_strength_pct":{"SPY":-0.136566,"IWM":-0.084066}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.122006},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dc3ac48ae081","ts":"2026-09-21T15:42:00.808520+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7135,"target":8.88,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":87.3,"room_to_5d_high_atr":0.21},"price":8.8224,"vwap":8.6614,"ext_from_open_pct":1.17,"max_ext_allowed_pct":3.0,"volume_pace":0.858,"trend":"flat","recent_slope_pct":-0.0433,"volatility":"medium"},"price":8.8224,"volume":{"bars":132,"last_bar_volume":11144.0,"baseline_avg":12730.8,"bar_rvol":0.875357,"raw_accel":2.50143,"smooth_accel":0.275683,"accel_momentum":0.154049,"rvol_3bar":[1.395349,0.221471,0.875357],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":1053.0,"sell_vol":3829.0,"unclassified_vol":0.0,"imbalance":-0.568619,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.664732},"context":{"vwap":8.661368,"price_vs_vwap_pct":1.859198,"ema9":8.826369,"ema20":8.827044,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":-0.648649,"dist_to_hod_atr":1.756395,"atr":0.032794,"spread_atr":0.30493,"own_change_pct":-0.124664,"rel_strength_pct":{"SPY":-0.166215,"IWM":-0.145648}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.497745},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9ced75b865d1","ts":"2026-09-21T15:42:00.808520+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.31x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.9496,"target":13.13,"target_label":"ceiling","reward_risk":0.84,"pos_in_5d_range_pct":-1.9,"room_to_5d_high_atr":3.04},"price":13.0475,"vwap":13.035,"ext_from_open_pct":-1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.313,"trend":"flat","recent_slope_pct":0.0133,"volatility":"medium"},"price":13.0475,"volume":{"bars":131,"last_bar_volume":847.0,"baseline_avg":6747.55,"bar_rvol":0.125527,"raw_accel":-0.906656,"smooth_accel":-0.841421,"accel_momentum":0.007537,"rvol_3bar":[0.276033,1.437511,0.125527],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":528.0,"sell_vol":714.0,"unclassified_vol":0.0,"imbalance":-0.149758,"bid":13.07,"ask":13.08,"spread_pct":0.076482,"quote_size_imbalance":null,"quote_age_s":26.9737},"context":{"vwap":13.034973,"price_vs_vwap_pct":0.096102,"ema9":13.046531,"ema20":13.028999,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-2.192654,"dist_to_hod_atr":11.805999,"atr":0.024776,"spread_atr":0.403624,"own_change_pct":0.173916,"rel_strength_pct":{"SPY":0.132365,"IWM":0.152932}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.018799},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"18a5f95db845","ts":"2026-09-21T15:42:05.907210+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.655,"target":9.94,"target_label":"range_20d_high","reward_risk":11.24,"pos_in_5d_range_pct":132.0,"room_to_5d_high_atr":-1.01},"price":8.76,"vwap":8.6141,"ext_from_open_pct":1.62,"max_ext_allowed_pct":4.0,"volume_pace":1.078,"trend":"flat","recent_slope_pct":-0.0257,"volatility":"medium"},"price":8.76,"volume":{"bars":132,"last_bar_volume":3205.0,"baseline_avg":8923.75,"bar_rvol":0.359154,"raw_accel":0.436616,"smooth_accel":-0.66003,"accel_momentum":-0.003842,"rvol_3bar":[0.015319,0.080977,0.359154],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1246.0,"sell_vol":278.0,"unclassified_vol":0.0,"imbalance":0.635171,"bid":8.75,"ask":8.76,"spread_pct":0.11422,"quote_size_imbalance":null,"quote_age_s":0.39474},"context":{"vwap":8.613872,"price_vs_vwap_pct":1.696422,"ema9":8.734836,"ema20":8.707393,"ema_stack":true,"ema_warm":true,"hod":8.78,"dist_to_hod_pct":-0.22779,"dist_to_hod_atr":0.641316,"atr":0.031186,"spread_atr":0.320658,"own_change_pct":0.464476,"rel_strength_pct":{"SPY":0.422925,"IWM":0.443492}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.228124},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"da408e58bc57","ts":"2026-09-21T15:42:05.907210+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.31x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.9669,"target":13.42,"target_label":"prev_day_high","reward_risk":3.63,"pos_in_5d_range_pct":-0.4,"room_to_5d_high_atr":3.0},"price":13.0648,"vwap":13.035,"ext_from_open_pct":-1.25,"max_ext_allowed_pct":3.0,"volume_pace":0.313,"trend":"flat","recent_slope_pct":0.0327,"volatility":"low"},"price":13.0648,"volume":{"bars":132,"last_bar_volume":2719.0,"baseline_avg":6689.7,"bar_rvol":0.406446,"raw_accel":0.625783,"smooth_accel":-0.795171,"accel_momentum":0.04625,"rvol_3bar":[1.437511,0.125527,0.406446],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":477.0,"sell_vol":814.0,"unclassified_vol":0.0,"imbalance":-0.261038,"bid":13.07,"ask":13.08,"spread_pct":0.076482,"quote_size_imbalance":null,"quote_age_s":32.07239},"context":{"vwap":13.035041,"price_vs_vwap_pct":0.228299,"ema9":13.046725,"ema20":13.030761,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-2.062969,"dist_to_hod_atr":10.865751,"atr":0.025327,"spread_atr":0.394831,"own_change_pct":-0.095712,"rel_strength_pct":{"SPY":-0.137263,"IWM":-0.116696}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.106098},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"17e070665679","ts":"2026-09-21T15:42:11.000086+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.5813,"target":8.76,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":126.0,"room_to_5d_high_atr":-0.82},"price":8.6832,"vwap":8.6141,"ext_from_open_pct":0.73,"max_ext_allowed_pct":4.0,"volume_pace":1.078,"trend":"flat","recent_slope_pct":-0.2013,"volatility":"medium"},"price":8.6832,"volume":{"bars":132,"last_bar_volume":3205.0,"baseline_avg":8923.75,"bar_rvol":0.359154,"raw_accel":0.436616,"smooth_accel":-0.66003,"accel_momentum":-0.003842,"rvol_3bar":[0.015319,0.080977,0.359154],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1247.0,"sell_vol":338.0,"unclassified_vol":0.0,"imbalance":0.573502,"bid":8.75,"ask":8.76,"spread_pct":0.11422,"quote_size_imbalance":null,"quote_age_s":1.511798},"context":{"vwap":8.613872,"price_vs_vwap_pct":0.804837,"ema9":8.734836,"ema20":8.707393,"ema_stack":false,"ema_warm":true,"hod":8.78,"dist_to_hod_pct":-1.102506,"dist_to_hod_atr":3.103972,"atr":0.031186,"spread_atr":0.320658,"own_change_pct":0.464476,"rel_strength_pct":{"SPY":0.422925,"IWM":0.443492}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.205975},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a1c0797f9685","ts":"2026-09-21T15:42:11.000086+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.77 below VWAP $10.84","plan":{"state":"PASS","setup":"","stop":10.56,"target":10.86,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":92.6,"room_to_5d_high_atr":0.17},"price":10.77,"vwap":10.8363,"ext_from_open_pct":-1.91,"max_ext_allowed_pct":3.0,"volume_pace":0.779,"trend":"flat","recent_slope_pct":-0.3783,"volatility":"medium"},"price":10.77,"volume":{"bars":132,"last_bar_volume":139697.0,"baseline_avg":385314.0,"bar_rvol":0.362554,"raw_accel":0.450215,"smooth_accel":0.363587,"accel_momentum":-0.563439,"rvol_3bar":[1.444426,0.195785,0.362554],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":6251.0,"sell_vol":24311.0,"unclassified_vol":0.0,"imbalance":-0.59093,"bid":10.99,"ask":11.0,"spread_pct":0.09095,"quote_size_imbalance":null,"quote_age_s":0.50609},"context":{"vwap":10.836268,"price_vs_vwap_pct":-0.611542,"ema9":10.983284,"ema20":10.964704,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-2.357208,"dist_to_hod_atr":8.376632,"atr":0.031039,"spread_atr":0.322178,"own_change_pct":0.28085,"rel_strength_pct":{"SPY":0.239299,"IWM":0.259866}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.214244},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1993cf373cc5","ts":"2026-09-21T15:42:11.000086+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.21 below VWAP $6.31","plan":{"state":"PASS","setup":"","stop":6.1479,"target":6.34,"target_label":"premarket_high","reward_risk":2.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.21,"vwap":6.3094,"ext_from_open_pct":-1.27,"max_ext_allowed_pct":3.0,"volume_pace":1.328,"trend":"flat","recent_slope_pct":-0.7728,"volatility":"unknown"},"price":6.21,"volume":{"bars":132,"last_bar_volume":118506.0,"baseline_avg":81773.8,"bar_rvol":1.449193,"raw_accel":2.433265,"smooth_accel":0.003418,"accel_momentum":-1.246001,"rvol_3bar":[1.63163,0.4126,1.449193],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":340,"trade_rate":11.333333,"buy_vol":24043.0,"sell_vol":80922.0,"unclassified_vol":0.0,"imbalance":-0.541885,"bid":6.42,"ask":6.43,"spread_pct":0.155642,"quote_size_imbalance":null,"quote_age_s":0.197153},"context":{"vwap":6.309587,"price_vs_vwap_pct":-1.578348,"ema9":6.444315,"ema20":6.426301,"ema_stack":false,"ema_warm":true,"hod":6.4699,"dist_to_hod_pct":-4.017064,"dist_to_hod_atr":9.922984,"atr":0.026192,"spread_atr":0.3818,"own_change_pct":0.2331,"rel_strength_pct":{"SPY":0.191549,"IWM":0.212116}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.785296},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"578da4dce03a","ts":"2026-09-21T15:42:16.049207+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.8678,"target":11.14,"target_label":"premarket_high","reward_risk":1.11,"pos_in_5d_range_pct":111.3,"room_to_5d_high_atr":-0.27},"price":10.9968,"vwap":10.8363,"ext_from_open_pct":0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.778,"trend":"flat","recent_slope_pct":0.0357,"volatility":"medium"},"price":10.9968,"volume":{"bars":132,"last_bar_volume":139697.0,"baseline_avg":385314.0,"bar_rvol":0.362554,"raw_accel":0.450215,"smooth_accel":0.363587,"accel_momentum":-0.563439,"rvol_3bar":[1.444426,0.195785,0.362554],"trend_3bar":"MIXED","projected_rvol":0.07011},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":6166.0,"sell_vol":24848.0,"unclassified_vol":0.0,"imbalance":-0.602373,"bid":10.99,"ask":11.0,"spread_pct":0.09095,"quote_size_imbalance":null,"quote_age_s":0.41038},"context":{"vwap":10.836268,"price_vs_vwap_pct":1.48143,"ema9":10.983284,"ema20":10.964704,"ema_stack":true,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-0.300997,"dist_to_hod_atr":1.069631,"atr":0.031039,"spread_atr":0.322178,"own_change_pct":0.28085,"rel_strength_pct":{"SPY":0.239299,"IWM":0.259866}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.218393},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"878c5fec63fa","ts":"2026-09-21T15:42:16.049207+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.27,"target":6.4699,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.425,"vwap":6.31,"ext_from_open_pct":2.15,"max_ext_allowed_pct":3.0,"volume_pace":1.328,"trend":"flat","recent_slope_pct":-0.1008,"volatility":"unknown"},"price":6.425,"volume":{"bars":132,"last_bar_volume":118506.0,"baseline_avg":81773.8,"bar_rvol":1.449193,"raw_accel":2.433265,"smooth_accel":0.003418,"accel_momentum":-1.246001,"rvol_3bar":[1.63163,0.4126,1.449193],"trend_3bar":"MIXED","projected_rvol":3.582066},"flow":{"window_s":30,"trades":337,"trade_rate":11.233333,"buy_vol":22561.0,"sell_vol":57954.0,"unclassified_vol":0.0,"imbalance":-0.439583,"bid":6.42,"ask":6.43,"spread_pct":0.155642,"quote_size_imbalance":null,"quote_age_s":1.785144},"context":{"vwap":6.309587,"price_vs_vwap_pct":1.829165,"ema9":6.444315,"ema20":6.426301,"ema_stack":false,"ema_warm":true,"hod":6.4699,"dist_to_hod_pct":-0.693983,"dist_to_hod_atr":1.714282,"atr":0.026192,"spread_atr":0.3818,"own_change_pct":0.2331,"rel_strength_pct":{"SPY":0.191549,"IWM":0.212116}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.63704},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3dfdf288440d","ts":"2026-09-21T15:42:21.131846+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.655,"target":9.94,"target_label":"range_20d_high","reward_risk":11.24,"pos_in_5d_range_pct":132.0,"room_to_5d_high_atr":-1.01},"price":8.76,"vwap":8.6141,"ext_from_open_pct":1.62,"max_ext_allowed_pct":4.0,"volume_pace":1.076,"trend":"flat","recent_slope_pct":-0.0257,"volatility":"medium"},"price":8.76,"volume":{"bars":132,"last_bar_volume":3205.0,"baseline_avg":8923.75,"bar_rvol":0.359154,"raw_accel":0.436616,"smooth_accel":-0.66003,"accel_momentum":-0.003842,"rvol_3bar":[0.015319,0.080977,0.359154],"trend_3bar":"ACCELERATING","projected_rvol":0.491899},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1249.0,"sell_vol":397.0,"unclassified_vol":0.0,"imbalance":0.517618,"bid":8.75,"ask":8.76,"spread_pct":0.11422,"quote_size_imbalance":null,"quote_age_s":3.473889},"context":{"vwap":8.613872,"price_vs_vwap_pct":1.696422,"ema9":8.734836,"ema20":8.707393,"ema_stack":true,"ema_warm":true,"hod":8.78,"dist_to_hod_pct":-0.22779,"dist_to_hod_atr":0.641316,"atr":0.031186,"spread_atr":0.320658,"own_change_pct":0.464476,"rel_strength_pct":{"SPY":0.422925,"IWM":0.443492}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.185905},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f0a2c95e217b","ts":"2026-09-21T15:42:31.262355+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.80 below VWAP $12.82","plan":{"state":"PASS","setup":"","stop":12.4082,"target":13.23,"target_label":"ceiling","reward_risk":1.1,"pos_in_5d_range_pct":147.9,"room_to_5d_high_atr":-1.43},"price":12.8,"vwap":12.821,"ext_from_open_pct":-1.61,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.2543,"volatility":"high"},"price":12.8,"volume":{"bars":132,"last_bar_volume":15178.0,"baseline_avg":16108.9,"bar_rvol":0.942212,"raw_accel":-0.247048,"smooth_accel":0.658975,"accel_momentum":0.17538,"rvol_3bar":[0.866311,1.291873,0.942212],"trend_3bar":"MIXED","projected_rvol":1.288994},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":2802.0,"sell_vol":8017.0,"unclassified_vol":0.0,"imbalance":-0.482022,"bid":13.12,"ask":13.15,"spread_pct":0.228397,"quote_size_imbalance":null,"quote_age_s":0.564191},"context":{"vwap":12.821023,"price_vs_vwap_pct":-0.163974,"ema9":13.022714,"ema20":12.974897,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-7.246377,"dist_to_hod_atr":11.799945,"atr":0.084746,"spread_atr":0.353998,"own_change_pct":1.622875,"rel_strength_pct":{"SPY":1.581324,"IWM":1.601891}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.454167},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3780fbb2e4c4","ts":"2026-09-21T15:42:31.262355+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.05,"target":9.4,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":137.6,"room_to_5d_high_atr":-1.0},"price":9.24,"vwap":9.1765,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":3.0,"volume_pace":0.742,"trend":"flat","recent_slope_pct":0.4078,"volatility":"high"},"price":9.24,"volume":{"bars":132,"last_bar_volume":1320.0,"baseline_avg":3318.05,"bar_rvol":0.397824,"raw_accel":-0.54748,"smooth_accel":1.413844,"accel_momentum":1.24044,"rvol_3bar":[0.707322,0.907056,0.397824],"trend_3bar":"MIXED","projected_rvol":0.124361},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":114.0,"sell_vol":101.0,"unclassified_vol":0.0,"imbalance":0.060465,"bid":9.01,"ask":9.04,"spread_pct":0.33241,"quote_size_imbalance":null,"quote_age_s":1.263535},"context":{"vwap":9.176487,"price_vs_vwap_pct":0.692131,"ema9":9.049949,"ema20":9.077446,"ema_stack":false,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-2.531646,"dist_to_hod_atr":5.758152,"atr":0.04168,"spread_atr":0.719769,"own_change_pct":-0.983571,"rel_strength_pct":{"SPY":-1.025121,"IWM":-1.004555}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.024054},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6305d383b706","ts":"2026-09-21T15:42:31.262355+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.29x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.64,"target":12.0,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":122.7,"room_to_5d_high_atr":-1.01},"price":11.8976,"vwap":11.5675,"ext_from_open_pct":1.95,"max_ext_allowed_pct":3.0,"volume_pace":0.292,"trend":"flat","recent_slope_pct":0.3833,"volatility":"high"},"price":11.8976,"volume":{"bars":132,"last_bar_volume":39615.0,"baseline_avg":7828.75,"bar_rvol":5.060195,"raw_accel":-0.104645,"smooth_accel":12.969769,"accel_momentum":9.767415,"rvol_3bar":[1.571303,7.2189,5.060195],"trend_3bar":"MIXED","projected_rvol":0.405728},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":239.0,"sell_vol":1416.0,"unclassified_vol":0.0,"imbalance":-0.711178,"bid":11.71,"ask":11.74,"spread_pct":0.255864,"quote_size_imbalance":null,"quote_age_s":1.063904},"context":{"vwap":11.567266,"price_vs_vwap_pct":2.855765,"ema9":11.693117,"ema20":11.677021,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-0.687813,"dist_to_hod_atr":1.909848,"atr":0.043145,"spread_atr":0.695333,"own_change_pct":0.551425,"rel_strength_pct":{"SPY":0.509874,"IWM":0.530441}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.5987},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"62214a67ca69","ts":"2026-09-21T15:42:31.262355+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $8.72 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.8,"target":9.3,"target_label":"premarket_high","reward_risk":1.43,"pos_in_5d_range_pct":112.4,"room_to_5d_high_atr":-0.21},"price":9.0057,"vwap":8.6622,"ext_from_open_pct":3.28,"max_ext_allowed_pct":3.0,"volume_pace":0.857,"trend":"flat","recent_slope_pct":0.3706,"volatility":"medium"},"price":9.0057,"volume":{"bars":132,"last_bar_volume":11144.0,"baseline_avg":12730.8,"bar_rvol":0.875357,"raw_accel":2.50143,"smooth_accel":0.275683,"accel_momentum":0.154049,"rvol_3bar":[1.395349,0.221471,0.875357],"trend_3bar":"MIXED","projected_rvol":1.371576},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":5629.0,"sell_vol":3465.0,"unclassified_vol":0.0,"imbalance":0.237959,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":1.682954},"context":{"vwap":8.661368,"price_vs_vwap_pct":3.975492,"ema9":8.826369,"ema20":8.827044,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":1.415541,"dist_to_hod_atr":-3.832966,"atr":0.032794,"spread_atr":0.30493,"own_change_pct":-0.124664,"rel_strength_pct":{"SPY":-0.166215,"IWM":-0.145648}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.208299},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"571d4158c53f","ts":"2026-09-21T15:42:31.262355+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":13.47,"target":14.0107,"target_label":"premarket_high","reward_risk":0.51,"pos_in_5d_range_pct":120.0,"room_to_5d_high_atr":-0.61},"price":13.829,"vwap":13.5709,"ext_from_open_pct":-0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":0.5076,"volatility":"high"},"price":13.829,"volume":{"bars":132,"last_bar_volume":55157.0,"baseline_avg":84238.9,"bar_rvol":0.654769,"raw_accel":1.453931,"smooth_accel":-0.360128,"accel_momentum":0.235041,"rvol_3bar":[0.37863,0.258395,0.654769],"trend_3bar":"MIXED","projected_rvol":0.453456},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":11502.0,"sell_vol":8401.0,"unclassified_vol":0.0,"imbalance":0.155806,"bid":13.48,"ask":13.49,"spread_pct":0.074156,"quote_size_imbalance":null,"quote_age_s":0.306814},"context":{"vwap":13.570811,"price_vs_vwap_pct":1.902535,"ema9":13.489987,"ema20":13.498083,"ema_stack":false,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-1.080114,"dist_to_hod_atr":3.862688,"atr":0.039092,"spread_atr":0.255807,"own_change_pct":-0.148093,"rel_strength_pct":{"SPY":-0.189644,"IWM":-0.169077}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.102017},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6b546579f3dc","ts":"2026-09-21T15:42:31.262355+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.27 below VWAP $6.31","plan":{"state":"PASS","setup":"","stop":6.18,"target":6.34,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.2695,"vwap":6.3096,"ext_from_open_pct":-0.33,"max_ext_allowed_pct":3.0,"volume_pace":1.329,"trend":"flat","recent_slope_pct":-0.586,"volatility":"unknown"},"price":6.2695,"volume":{"bars":132,"last_bar_volume":118506.0,"baseline_avg":81773.8,"bar_rvol":1.449193,"raw_accel":2.433265,"smooth_accel":0.003418,"accel_momentum":-1.246001,"rvol_3bar":[1.63163,0.4126,1.449193],"trend_3bar":"MIXED","projected_rvol":2.548503},"flow":{"window_s":30,"trades":344,"trade_rate":11.466667,"buy_vol":24832.0,"sell_vol":60201.0,"unclassified_vol":0.0,"imbalance":-0.415944,"bid":6.42,"ask":6.43,"spread_pct":0.155642,"quote_size_imbalance":null,"quote_age_s":0.82581},"context":{"vwap":6.309587,"price_vs_vwap_pct":-0.635338,"ema9":6.444315,"ema20":6.426301,"ema_stack":false,"ema_warm":true,"hod":6.4699,"dist_to_hod_pct":-3.09742,"dist_to_hod_atr":7.651274,"atr":0.026192,"spread_atr":0.3818,"own_change_pct":0.2331,"rel_strength_pct":{"SPY":0.191549,"IWM":0.212116}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.602784},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"89d02c5e7044","ts":"2026-09-21T15:42:36.323831+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7513,"target":13.23,"target_label":"ceiling","reward_risk":0.22,"pos_in_5d_range_pct":155.2,"room_to_5d_high_atr":-1.65},"price":13.1431,"vwap":12.8213,"ext_from_open_pct":1.02,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":0.2708,"volatility":"high"},"price":13.1431,"volume":{"bars":132,"last_bar_volume":15178.0,"baseline_avg":16108.9,"bar_rvol":0.942212,"raw_accel":-0.247048,"smooth_accel":0.658975,"accel_momentum":0.17538,"rvol_3bar":[0.866311,1.291873,0.942212],"trend_3bar":"MIXED","projected_rvol":1.222996},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":3605.0,"sell_vol":6478.0,"unclassified_vol":0.0,"imbalance":-0.284935,"bid":13.12,"ask":13.15,"spread_pct":0.228397,"quote_size_imbalance":null,"quote_age_s":5.625667},"context":{"vwap":12.821023,"price_vs_vwap_pct":2.512099,"ema9":13.022714,"ema20":12.974897,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.760145,"dist_to_hod_atr":7.751384,"atr":0.084746,"spread_atr":0.353998,"own_change_pct":1.622875,"rel_strength_pct":{"SPY":1.581324,"IWM":1.601891}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.268469},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d1739ea1e50d","ts":"2026-09-21T15:42:36.323831+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.655,"target":9.94,"target_label":"range_20d_high","reward_risk":10.68,"pos_in_5d_range_pct":132.3,"room_to_5d_high_atr":-1.02},"price":8.765,"vwap":8.6146,"ext_from_open_pct":1.68,"max_ext_allowed_pct":4.0,"volume_pace":1.076,"trend":"flat","recent_slope_pct":-0.0143,"volatility":"medium"},"price":8.765,"volume":{"bars":132,"last_bar_volume":3205.0,"baseline_avg":8923.75,"bar_rvol":0.359154,"raw_accel":0.436616,"smooth_accel":-0.66003,"accel_momentum":-0.003842,"rvol_3bar":[0.015319,0.080977,0.359154],"trend_3bar":"ACCELERATING","projected_rvol":0.500332},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":901.0,"sell_vol":381.0,"unclassified_vol":0.0,"imbalance":0.405616,"bid":8.76,"ask":8.77,"spread_pct":0.11409,"quote_size_imbalance":null,"quote_age_s":0.296829},"context":{"vwap":8.613872,"price_vs_vwap_pct":1.754468,"ema9":8.734836,"ema20":8.707393,"ema_stack":true,"ema_warm":true,"hod":8.78,"dist_to_hod_pct":-0.170843,"dist_to_hod_atr":0.480987,"atr":0.031186,"spread_atr":0.320658,"own_change_pct":0.464476,"rel_strength_pct":{"SPY":0.422925,"IWM":0.443492}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.145679},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b2477345200e","ts":"2026-09-21T15:42:36.323831+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7061,"target":8.88,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":86.3,"room_to_5d_high_atr":0.23},"price":8.815,"vwap":8.6621,"ext_from_open_pct":1.09,"max_ext_allowed_pct":3.0,"volume_pace":0.857,"trend":"flat","recent_slope_pct":-0.0601,"volatility":"medium"},"price":8.815,"volume":{"bars":132,"last_bar_volume":11144.0,"baseline_avg":12730.8,"bar_rvol":0.875357,"raw_accel":2.50143,"smooth_accel":0.275683,"accel_momentum":0.154049,"rvol_3bar":[1.395349,0.221471,0.875357],"trend_3bar":"MIXED","projected_rvol":1.510537},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":5441.0,"sell_vol":5577.0,"unclassified_vol":0.0,"imbalance":-0.012343,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":2.179575},"context":{"vwap":8.661368,"price_vs_vwap_pct":1.773761,"ema9":8.826369,"ema20":8.827044,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":-0.731982,"dist_to_hod_atr":1.982043,"atr":0.032794,"spread_atr":0.30493,"own_change_pct":-0.124664,"rel_strength_pct":{"SPY":-0.166215,"IWM":-0.145648}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.010805},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"21580a529406","ts":"2026-09-21T15:42:36.323831+00:00","symbol":"ABSI","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.5702,"target":9.9,"target_label":"range_20d_high","reward_risk":0.1,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.07},"price":9.87,"vwap":9.7743,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":4.0,"volume_pace":0.508,"trend":"flat","recent_slope_pct":0.4463,"volatility":"medium"},"price":9.87,"volume":{"bars":132,"last_bar_volume":1916.0,"baseline_avg":4234.15,"bar_rvol":0.452511,"raw_accel":-0.618555,"smooth_accel":0.230217,"accel_momentum":0.208118,"rvol_3bar":[0.07578,1.150139,0.452511],"trend_3bar":"MIXED","projected_rvol":0.104161},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":61.0,"sell_vol":106.0,"unclassified_vol":0.0,"imbalance":-0.269461,"bid":9.64,"ask":9.65,"spread_pct":0.103681,"quote_size_imbalance":null,"quote_age_s":3.402096},"context":{"vwap":9.7743,"price_vs_vwap_pct":0.979099,"ema9":9.652134,"ema20":9.638775,"ema_stack":true,"ema_warm":true,"hod":10.15,"dist_to_hod_pct":-2.758621,"dist_to_hod_atr":7.126588,"atr":0.039289,"spread_atr":0.254521,"own_change_pct":0.022786,"rel_strength_pct":{"SPY":-0.018765,"IWM":0.001802}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.121934},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c27a98c122c4","ts":"2026-09-21T15:42:36.323831+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.48 below VWAP $13.57","plan":{"state":"PASS","setup":"","stop":13.276,"target":13.8,"target_label":"ceiling","reward_risk":1.51,"pos_in_5d_range_pct":106.5,"room_to_5d_high_atr":-0.2},"price":13.4844,"vwap":13.5709,"ext_from_open_pct":-3.06,"max_ext_allowed_pct":3.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":-0.0009,"volatility":"high"},"price":13.4844,"volume":{"bars":132,"last_bar_volume":55157.0,"baseline_avg":84238.9,"bar_rvol":0.654769,"raw_accel":1.453931,"smooth_accel":-0.360128,"accel_momentum":0.235041,"rvol_3bar":[0.37863,0.258395,0.654769],"trend_3bar":"MIXED","projected_rvol":0.689635},"flow":{"window_s":30,"trades":181,"trade_rate":6.033333,"buy_vol":8684.0,"sell_vol":18004.0,"unclassified_vol":0.0,"imbalance":-0.349221,"bid":13.47,"ask":13.48,"spread_pct":0.074212,"quote_size_imbalance":null,"quote_age_s":0.342644},"context":{"vwap":13.570811,"price_vs_vwap_pct":-0.636739,"ema9":13.489987,"ema20":13.498083,"ema_stack":false,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-3.545064,"dist_to_hod_atr":12.677802,"atr":0.039092,"spread_atr":0.255807,"own_change_pct":-0.148093,"rel_strength_pct":{"SPY":-0.189644,"IWM":-0.169077}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.228659},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5a55e346867d","ts":"2026-09-21T15:42:41.368135+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.29x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.5539,"target":12.0,"target_label":"premarket_high","reward_risk":1.18,"pos_in_5d_range_pct":118.9,"room_to_5d_high_atr":-0.84},"price":11.7584,"vwap":11.569,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":0.294,"trend":"flat","recent_slope_pct":0.1466,"volatility":"high"},"price":11.7584,"volume":{"bars":132,"last_bar_volume":39615.0,"baseline_avg":7828.75,"bar_rvol":5.060195,"raw_accel":-0.104645,"smooth_accel":12.969769,"accel_momentum":9.767415,"rvol_3bar":[1.571303,7.2189,5.060195],"trend_3bar":"MIXED","projected_rvol":2.991656},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":4992.0,"sell_vol":11156.0,"unclassified_vol":0.0,"imbalance":-0.381719,"bid":11.71,"ask":11.74,"spread_pct":0.255864,"quote_size_imbalance":null,"quote_age_s":4.109646},"context":{"vwap":11.567266,"price_vs_vwap_pct":1.652369,"ema9":11.693117,"ema20":11.677021,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.84975,"dist_to_hod_atr":5.136193,"atr":0.043145,"spread_atr":0.695333,"own_change_pct":0.551425,"rel_strength_pct":{"SPY":0.509874,"IWM":0.530441}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.931573},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5452538ec462","ts":"2026-09-21T15:42:41.368135+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.27,"target":6.4699,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4225,"vwap":6.3102,"ext_from_open_pct":2.11,"max_ext_allowed_pct":3.0,"volume_pace":1.329,"trend":"flat","recent_slope_pct":-0.1086,"volatility":"unknown"},"price":6.4225,"volume":{"bars":132,"last_bar_volume":118506.0,"baseline_avg":81773.8,"bar_rvol":1.449193,"raw_accel":2.433265,"smooth_accel":0.003418,"accel_momentum":-1.246001,"rvol_3bar":[1.63163,0.4126,1.449193],"trend_3bar":"MIXED","projected_rvol":2.185419},"flow":{"window_s":30,"trades":229,"trade_rate":7.633333,"buy_vol":13262.0,"sell_vol":32472.0,"unclassified_vol":0.0,"imbalance":-0.420038,"bid":6.42,"ask":6.43,"spread_pct":0.155642,"quote_size_imbalance":null,"quote_age_s":1.899221},"context":{"vwap":6.309587,"price_vs_vwap_pct":1.789543,"ema9":6.444315,"ema20":6.426301,"ema_stack":false,"ema_warm":true,"hod":6.4699,"dist_to_hod_pct":-0.732623,"dist_to_hod_atr":1.809732,"atr":0.026192,"spread_atr":0.3818,"own_change_pct":0.2331,"rel_strength_pct":{"SPY":0.191549,"IWM":0.212116}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.608715},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1e817af21e4f","ts":"2026-09-21T15:42:46.459797+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.46 below VWAP $8.66","plan":{"state":"PASS","setup":"","stop":8.3497,"target":8.82,"target_label":"prev_day_high","reward_risk":3.32,"pos_in_5d_range_pct":37.5,"room_to_5d_high_atr":1.05},"price":8.4586,"vwap":8.6614,"ext_from_open_pct":-3.0,"max_ext_allowed_pct":3.0,"volume_pace":0.858,"trend":"flat","recent_slope_pct":-0.875,"volatility":"medium"},"price":8.4586,"volume":{"bars":132,"last_bar_volume":11144.0,"baseline_avg":12730.8,"bar_rvol":0.875357,"raw_accel":2.50143,"smooth_accel":0.275683,"accel_momentum":0.154049,"rvol_3bar":[1.395349,0.221471,0.875357],"trend_3bar":"MIXED","projected_rvol":1.835088},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":5744.0,"sell_vol":11633.0,"unclassified_vol":0.0,"imbalance":-0.338896,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.735442},"context":{"vwap":8.661368,"price_vs_vwap_pct":-2.341062,"ema9":8.826369,"ema20":8.827044,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":-4.745495,"dist_to_hod_atr":12.849738,"atr":0.032794,"spread_atr":0.30493,"own_change_pct":-0.124664,"rel_strength_pct":{"SPY":-0.166215,"IWM":-0.145648}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.296655},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e6f1762150f6","ts":"2026-09-21T15:42:46.459797+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.6501,"target":10.02,"target_label":"premarket_high","reward_risk":0.55,"pos_in_5d_range_pct":133.7,"room_to_5d_high_atr":-0.79},"price":9.8886,"vwap":9.8511,"ext_from_open_pct":-1.02,"max_ext_allowed_pct":4.0,"volume_pace":1.171,"trend":"flat","recent_slope_pct":0.4318,"volatility":"high"},"price":9.8886,"volume":{"bars":132,"last_bar_volume":5993.0,"baseline_avg":13690.2,"bar_rvol":0.437758,"raw_accel":0.518368,"smooth_accel":-0.636624,"accel_momentum":-0.344014,"rvol_3bar":[0.560656,0.281781,0.437758],"trend_3bar":"MIXED","projected_rvol":1.153788},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":6272.0,"sell_vol":3124.0,"unclassified_vol":0.0,"imbalance":0.335036,"bid":9.68,"ask":9.69,"spread_pct":0.103252,"quote_size_imbalance":null,"quote_age_s":0.190534},"context":{"vwap":9.851005,"price_vs_vwap_pct":0.381637,"ema9":9.67452,"ema20":9.688495,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.286561,"dist_to_hod_atr":7.948958,"atr":0.029111,"spread_atr":0.343516,"own_change_pct":-0.028947,"rel_strength_pct":{"SPY":-0.070498,"IWM":-0.049931}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.146665},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"14f3ae183e72","ts":"2026-09-21T15:42:46.459797+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":13.47,"target":14.0107,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.58},"price":13.8028,"vwap":13.5711,"ext_from_open_pct":-0.77,"max_ext_allowed_pct":3.0,"volume_pace":0.801,"trend":"flat","recent_slope_pct":0.4691,"volatility":"high"},"price":13.8028,"volume":{"bars":132,"last_bar_volume":55157.0,"baseline_avg":84238.9,"bar_rvol":0.654769,"raw_accel":1.453931,"smooth_accel":-0.360128,"accel_momentum":0.235041,"rvol_3bar":[0.37863,0.258395,0.654769],"trend_3bar":"MIXED","projected_rvol":0.761751},"flow":{"window_s":30,"trades":215,"trade_rate":7.166667,"buy_vol":9218.0,"sell_vol":26145.0,"unclassified_vol":0.0,"imbalance":-0.478664,"bid":13.47,"ask":13.48,"spread_pct":0.074212,"quote_size_imbalance":null,"quote_age_s":0.172271},"context":{"vwap":13.570811,"price_vs_vwap_pct":1.709473,"ema9":13.489987,"ema20":13.498083,"ema_stack":false,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-1.267525,"dist_to_hod_atr":4.532903,"atr":0.039092,"spread_atr":0.255807,"own_change_pct":-0.148093,"rel_strength_pct":{"SPY":-0.189644,"IWM":-0.169077}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.313414},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5a132eb40d6c","ts":"2026-09-21T15:42:46.459797+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.31x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":13.0,"target":13.42,"target_label":"prev_day_high","reward_risk":0.5,"pos_in_5d_range_pct":17.9,"room_to_5d_high_atr":2.45},"price":13.28,"vwap":13.0358,"ext_from_open_pct":0.38,"max_ext_allowed_pct":4.0,"volume_pace":0.312,"trend":"flat","recent_slope_pct":0.3612,"volatility":"low"},"price":13.28,"volume":{"bars":132,"last_bar_volume":2719.0,"baseline_avg":6689.7,"bar_rvol":0.406446,"raw_accel":0.625783,"smooth_accel":-0.795171,"accel_momentum":0.04625,"rvol_3bar":[1.437511,0.125527,0.406446],"trend_3bar":"MIXED","projected_rvol":0.727987},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":879.0,"sell_vol":2535.0,"unclassified_vol":0.0,"imbalance":-0.485062,"bid":13.08,"ask":13.09,"spread_pct":0.076423,"quote_size_imbalance":null,"quote_age_s":1.429186},"context":{"vwap":13.035041,"price_vs_vwap_pct":1.879233,"ema9":13.046725,"ema20":13.030761,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-0.449775,"dist_to_hod_atr":2.368986,"atr":0.025327,"spread_atr":0.394831,"own_change_pct":-0.095712,"rel_strength_pct":{"SPY":-0.137263,"IWM":-0.116696}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.197151},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5799c26e4653","ts":"2026-09-21T15:42:51.571844+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.03,"target":9.7633,"target_label":"clear air (typical 60-min move)","reward_risk":0.23,"pos_in_5d_range_pct":351.4,"room_to_5d_high_atr":-5.46},"price":9.6272,"vwap":9.1743,"ext_from_open_pct":10.78,"max_ext_allowed_pct":4.0,"volume_pace":9.509,"trend":"flat","recent_slope_pct":1.3375,"volatility":"medium"},"price":9.6272,"volume":{"bars":132,"last_bar_volume":107658.0,"baseline_avg":77519.15,"bar_rvol":1.388792,"raw_accel":1.08482,"smooth_accel":-0.24653,"accel_momentum":0.070294,"rvol_3bar":[1.238341,0.669112,1.388792],"trend_3bar":"MIXED","projected_rvol":2.093634},"flow":{"window_s":30,"trades":1521,"trade_rate":50.7,"buy_vol":44934.0,"sell_vol":75522.0,"unclassified_vol":0.0,"imbalance":-0.253935,"bid":9.14,"ask":9.15,"spread_pct":0.109349,"quote_size_imbalance":null,"quote_age_s":0.854411},"context":{"vwap":9.174237,"price_vs_vwap_pct":4.937336,"ema9":9.134503,"ema20":9.168217,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-0.13278,"dist_to_hod_atr":0.16289,"atr":0.078581,"spread_atr":0.127258,"own_change_pct":0.850366,"rel_strength_pct":{"SPY":0.808815,"IWM":0.829382}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.352663},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4f82a20a3895","ts":"2026-09-21T15:42:51.571844+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.15 below VWAP $9.18","plan":{"state":"PASS","setup":"","stop":9.0008,"target":9.2794,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":132.3,"room_to_5d_high_atr":-0.86},"price":9.1538,"vwap":9.1765,"ext_from_open_pct":-1.04,"max_ext_allowed_pct":4.0,"volume_pace":0.741,"trend":"flat","recent_slope_pct":0.2182,"volatility":"high"},"price":9.1538,"volume":{"bars":132,"last_bar_volume":1320.0,"baseline_avg":3318.05,"bar_rvol":0.397824,"raw_accel":-0.54748,"smooth_accel":1.413844,"accel_momentum":1.24044,"rvol_3bar":[0.707322,0.907056,0.397824],"trend_3bar":"MIXED","projected_rvol":0.777359},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1242.0,"sell_vol":873.0,"unclassified_vol":0.0,"imbalance":0.174468,"bid":9.03,"ask":9.05,"spread_pct":0.221239,"quote_size_imbalance":null,"quote_age_s":1.559088},"context":{"vwap":9.176487,"price_vs_vwap_pct":-0.247226,"ema9":9.049949,"ema20":9.077446,"ema_stack":false,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-3.440928,"dist_to_hod_atr":7.826288,"atr":0.04168,"spread_atr":0.479846,"own_change_pct":-0.983571,"rel_strength_pct":{"SPY":-1.025121,"IWM":-1.004555}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.069408},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b0bc0da421ef","ts":"2026-09-21T15:42:51.571844+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6411,"target":8.82,"target_label":"prev_day_high","reward_risk":0.64,"pos_in_5d_range_pct":77.4,"room_to_5d_high_atr":0.38},"price":8.75,"vwap":8.6618,"ext_from_open_pct":0.34,"max_ext_allowed_pct":3.0,"volume_pace":0.858,"trend":"flat","recent_slope_pct":-0.2077,"volatility":"medium"},"price":8.75,"volume":{"bars":132,"last_bar_volume":11144.0,"baseline_avg":12730.8,"bar_rvol":0.875357,"raw_accel":2.50143,"smooth_accel":0.275683,"accel_momentum":0.154049,"rvol_3bar":[1.395349,0.221471,0.875357],"trend_3bar":"MIXED","projected_rvol":1.724832},"flow":{"window_s":30,"trades":145,"trade_rate":4.833333,"buy_vol":5944.0,"sell_vol":12217.0,"unclassified_vol":0.0,"imbalance":-0.34541,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.629979},"context":{"vwap":8.661368,"price_vs_vwap_pct":1.023302,"ema9":8.826369,"ema20":8.827044,"ema_stack":false,"ema_warm":true,"hod":8.88,"dist_to_hod_pct":-1.463964,"dist_to_hod_atr":3.964086,"atr":0.032794,"spread_atr":0.30493,"own_change_pct":-0.124664,"rel_strength_pct":{"SPY":-0.166215,"IWM":-0.145648}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.302358},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bb24fe4181f2","ts":"2026-09-21T15:42:51.571844+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.5s, plan says PASS; stop 10.71, target 10.86 (prev_day_high), R:R 0.17; R:R 0.17 < 2.0 at 10.84; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.7096,"target":10.86,"target_label":"prev_day_high","reward_risk":0.17,"pos_in_5d_range_pct":98.2,"room_to_5d_high_atr":0.04},"price":10.8386,"vwap":10.8364,"ext_from_open_pct":-1.29,"max_ext_allowed_pct":3.0,"volume_pace":0.776,"trend":"flat","recent_slope_pct":-0.2527,"volatility":"medium"},"price":10.8386,"volume":{"bars":132,"last_bar_volume":139697.0,"baseline_avg":385314.0,"bar_rvol":0.362554,"raw_accel":0.450215,"smooth_accel":0.363587,"accel_momentum":-0.563439,"rvol_3bar":[1.444426,0.195785,0.362554],"trend_3bar":"MIXED","projected_rvol":0.162258},"flow":{"window_s":30,"trades":177,"trade_rate":5.9,"buy_vol":7545.0,"sell_vol":32920.0,"unclassified_vol":0.0,"imbalance":-0.627085,"bid":10.99,"ask":11.0,"spread_pct":0.09095,"quote_size_imbalance":null,"quote_age_s":1.888516},"context":{"vwap":10.836268,"price_vs_vwap_pct":0.021518,"ema9":10.983284,"ema20":10.964704,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-1.735267,"dist_to_hod_atr":6.16649,"atr":0.031039,"spread_atr":0.322178,"own_change_pct":0.28085,"rel_strength_pct":{"SPY":0.239299,"IWM":0.259866}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.227352},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4bff6799591f","ts":"2026-09-21T15:42:51.571844+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.31x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.9508,"target":13.42,"target_label":"prev_day_high","reward_risk":3.79,"pos_in_5d_range_pct":-1.8,"room_to_5d_high_atr":3.04},"price":13.0487,"vwap":13.0355,"ext_from_open_pct":-1.37,"max_ext_allowed_pct":4.0,"volume_pace":0.312,"trend":"flat","recent_slope_pct":0.008,"volatility":"medium"},"price":13.0487,"volume":{"bars":132,"last_bar_volume":2719.0,"baseline_avg":6689.7,"bar_rvol":0.406446,"raw_accel":0.625783,"smooth_accel":-0.795171,"accel_momentum":0.04625,"rvol_3bar":[1.437511,0.125527,0.406446],"trend_3bar":"MIXED","projected_rvol":0.662261},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":879.0,"sell_vol":2572.0,"unclassified_vol":0.0,"imbalance":-0.490582,"bid":13.08,"ask":13.09,"spread_pct":0.076423,"quote_size_imbalance":null,"quote_age_s":3.836435},"context":{"vwap":13.035041,"price_vs_vwap_pct":0.104786,"ema9":13.046725,"ema20":13.030761,"ema_stack":true,"ema_warm":true,"hod":13.34,"dist_to_hod_pct":-2.183658,"dist_to_hod_atr":11.501429,"atr":0.025327,"spread_atr":0.394831,"own_change_pct":-0.095712,"rel_strength_pct":{"SPY":-0.137263,"IWM":-0.116696}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.199395},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6cefe8cfc192","ts":"2026-09-21T15:42:51.571844+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"held 908.0s, plan says WATCH; stop 5.16, target 5.30 (prev_day_high), R:R 0.58; R:R 0.58 < 2.0 at 5.25; breakout: 1-min close > 5.28 on >= 32718 sh","plan":{"state":"WATCH","setup":"","stop":5.16,"target":5.3,"target_label":"prev_day_high","reward_risk":0.58,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2486,"vwap":5.1705,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.912,"trend":"flat","recent_slope_pct":0.1769,"volatility":"unknown"},"price":5.2486,"volume":{"bars":132,"last_bar_volume":58824.0,"baseline_avg":27632.35,"bar_rvol":2.128809,"raw_accel":1.23004,"smooth_accel":0.577132,"accel_momentum":0.882067,"rvol_3bar":[0.347826,0.967223,2.128809],"trend_3bar":"ACCELERATING","projected_rvol":2.246614},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":166.0,"sell_vol":400.0,"unclassified_vol":0.0,"imbalance":-0.413428,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":1.888838},"context":{"vwap":5.169785,"price_vs_vwap_pct":1.524531,"ema9":5.199905,"ema20":5.188278,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-0.969811,"dist_to_hod_atr":2.570943,"atr":0.019993,"spread_atr":0.500184,"own_change_pct":-0.076864,"rel_strength_pct":{"SPY":-0.118415,"IWM":-0.097848}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.880108},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d5f0fab5dfd5","ts":"2026-09-21T15:42:51.571844+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.671,"target":8.93,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7586,"vwap":8.7525,"ext_from_open_pct":2.8,"max_ext_allowed_pct":3.0,"volume_pace":0.637,"trend":"flat","recent_slope_pct":-0.2123,"volatility":"unknown"},"price":8.7586,"volume":{"bars":132,"last_bar_volume":29037.0,"baseline_avg":87595.4,"bar_rvol":0.33149,"raw_accel":-0.140179,"smooth_accel":-0.392782,"accel_momentum":0.066165,"rvol_3bar":[0.790142,0.383094,0.33149],"trend_3bar":"DECELERATING","projected_rvol":0.512001},"flow":{"window_s":30,"trades":215,"trade_rate":7.166667,"buy_vol":1569.0,"sell_vol":27177.0,"unclassified_vol":0.0,"imbalance":-0.890837,"bid":8.87,"ask":8.88,"spread_pct":0.112676,"quote_size_imbalance":null,"quote_age_s":2.154082},"context":{"vwap":8.752688,"price_vs_vwap_pct":0.06754,"ema9":8.861325,"ema20":8.852469,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.974259,"dist_to_hod_atr":3.665295,"atr":0.048127,"spread_atr":0.207783,"own_change_pct":0.343518,"rel_strength_pct":{"SPY":0.301967,"IWM":0.322534}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.295304},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"6e0113b045c4","ts":"2026-09-21T15:42:56.699205+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.06 below VWAP $9.17","plan":{"state":"PASS","setup":"","stop":8.9459,"target":9.26,"target_label":"premarket_high","reward_risk":1.69,"pos_in_5d_range_pct":295.8,"room_to_5d_high_atr":-4.25},"price":9.0628,"vwap":9.1731,"ext_from_open_pct":4.29,"max_ext_allowed_pct":4.0,"volume_pace":9.525,"trend":"flat","recent_slope_pct":0.1133,"volatility":"medium"},"price":9.0628,"volume":{"bars":132,"last_bar_volume":107658.0,"baseline_avg":77519.15,"bar_rvol":1.388792,"raw_accel":1.08482,"smooth_accel":-0.24653,"accel_momentum":0.070294,"rvol_3bar":[1.238341,0.669112,1.388792],"trend_3bar":"MIXED","projected_rvol":2.982299},"flow":{"window_s":30,"trades":2333,"trade_rate":77.766667,"buy_vol":86863.0,"sell_vol":105861.0,"unclassified_vol":0.0,"imbalance":-0.098576,"bid":9.14,"ask":9.15,"spread_pct":0.109349,"quote_size_imbalance":null,"quote_age_s":0.446567},"context":{"vwap":9.174237,"price_vs_vwap_pct":-1.214675,"ema9":9.134503,"ema20":9.168217,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-5.987552,"dist_to_hod_atr":7.34531,"atr":0.078581,"spread_atr":0.127258,"own_change_pct":0.850366,"rel_strength_pct":{"SPY":0.808815,"IWM":0.829382}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.136902},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7548d74ca8b8","ts":"2026-09-21T15:42:56.699205+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.05,"target":9.4,"target_label":"premarket_high","reward_risk":0.13,"pos_in_5d_range_pct":145.0,"room_to_5d_high_atr":-1.2},"price":9.36,"vwap":9.1769,"ext_from_open_pct":1.19,"max_ext_allowed_pct":4.0,"volume_pace":0.742,"trend":"flat","recent_slope_pct":0.6706,"volatility":"high"},"price":9.36,"volume":{"bars":132,"last_bar_volume":1320.0,"baseline_avg":3318.05,"bar_rvol":0.397824,"raw_accel":-0.54748,"smooth_accel":1.413844,"accel_momentum":1.24044,"rvol_3bar":[0.707322,0.907056,0.397824],"trend_3bar":"MIXED","projected_rvol":1.302179},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1719.0,"sell_vol":2262.0,"unclassified_vol":0.0,"imbalance":-0.136398,"bid":9.03,"ask":9.05,"spread_pct":0.221239,"quote_size_imbalance":null,"quote_age_s":1.799702},"context":{"vwap":9.176487,"price_vs_vwap_pct":1.999821,"ema9":9.049949,"ema20":9.077446,"ema_stack":false,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-1.265823,"dist_to_hod_atr":2.879076,"atr":0.04168,"spread_atr":0.479846,"own_change_pct":-0.983571,"rel_strength_pct":{"SPY":-1.025121,"IWM":-1.004555}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.054262},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d8908262f6b4","ts":"2026-09-21T15:42:56.699205+00:00","symbol":"ABSI","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.77 below VWAP $9.77","plan":{"state":"PASS","setup":"","stop":9.5702,"target":9.87,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":96.9,"room_to_5d_high_atr":0.11},"price":9.766,"vwap":9.7744,"ext_from_open_pct":-2.73,"max_ext_allowed_pct":4.0,"volume_pace":0.507,"trend":"flat","recent_slope_pct":0.2322,"volatility":"medium"},"price":9.766,"volume":{"bars":132,"last_bar_volume":1916.0,"baseline_avg":4234.15,"bar_rvol":0.452511,"raw_accel":-0.618555,"smooth_accel":0.230217,"accel_momentum":0.208118,"rvol_3bar":[0.07578,1.150139,0.452511],"trend_3bar":"MIXED","projected_rvol":0.572576},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":1489.0,"sell_vol":552.0,"unclassified_vol":0.0,"imbalance":0.459089,"bid":9.64,"ask":9.65,"spread_pct":0.103681,"quote_size_imbalance":null,"quote_age_s":9.243945},"context":{"vwap":9.7743,"price_vs_vwap_pct":-0.084916,"ema9":9.652134,"ema20":9.638775,"ema_stack":true,"ema_warm":true,"hod":10.15,"dist_to_hod_pct":-3.783251,"dist_to_hod_atr":9.773606,"atr":0.039289,"spread_atr":0.254521,"own_change_pct":0.022786,"rel_strength_pct":{"SPY":-0.018765,"IWM":0.001802}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.207743},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5e4ed396be7b","ts":"2026-09-21T15:42:56.699205+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.47 below VWAP $13.57","plan":{"state":"PASS","setup":"","stop":13.2616,"target":13.8,"target_label":"ceiling","reward_risk":1.58,"pos_in_5d_range_pct":105.9,"room_to_5d_high_atr":-0.18},"price":13.47,"vwap":13.5709,"ext_from_open_pct":-3.16,"max_ext_allowed_pct":3.0,"volume_pace":0.801,"trend":"flat","recent_slope_pct":-0.0223,"volatility":"high"},"price":13.47,"volume":{"bars":132,"last_bar_volume":55157.0,"baseline_avg":84238.9,"bar_rvol":0.654769,"raw_accel":1.453931,"smooth_accel":-0.360128,"accel_momentum":0.235041,"rvol_3bar":[0.37863,0.258395,0.654769],"trend_3bar":"MIXED","projected_rvol":0.855842},"flow":{"window_s":30,"trades":253,"trade_rate":8.433333,"buy_vol":17894.0,"sell_vol":30899.0,"unclassified_vol":0.0,"imbalance":-0.266534,"bid":13.47,"ask":13.48,"spread_pct":0.074212,"quote_size_imbalance":null,"quote_age_s":0.292563},"context":{"vwap":13.570811,"price_vs_vwap_pct":-0.742849,"ema9":13.489987,"ema20":13.498083,"ema_stack":false,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-3.648069,"dist_to_hod_atr":13.046164,"atr":0.039092,"spread_atr":0.255807,"own_change_pct":-0.148093,"rel_strength_pct":{"SPY":-0.189644,"IWM":-0.169077}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.174518},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2a921cf443ec","ts":"2026-09-21T15:42:56.699205+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.7859,"target":8.95,"target_label":"premarket_high","reward_risk":0.17,"pos_in_5d_range_pct":134.6,"room_to_5d_high_atr":-0.46},"price":8.9263,"vwap":8.9157,"ext_from_open_pct":2.25,"max_ext_allowed_pct":4.0,"volume_pace":0.931,"trend":"flat","recent_slope_pct":-0.3716,"volatility":"high"},"price":8.9263,"volume":{"bars":132,"last_bar_volume":3529.0,"baseline_avg":5299.4,"bar_rvol":0.665924,"raw_accel":0.220685,"smooth_accel":0.016559,"accel_momentum":0.65335,"rvol_3bar":[1.06468,0.549745,0.665924],"trend_3bar":"MIXED","projected_rvol":0.918955},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":125.0,"sell_vol":3152.0,"unclassified_vol":0.0,"imbalance":-0.923711,"bid":9.13,"ask":9.15,"spread_pct":0.218818,"quote_size_imbalance":null,"quote_age_s":13.756089},"context":{"vwap":8.915453,"price_vs_vwap_pct":0.121664,"ema9":9.111454,"ema20":9.089761,"ema_stack":false,"ema_warm":true,"hod":9.14,"dist_to_hod_pct":-2.338074,"dist_to_hod_atr":7.053807,"atr":0.030296,"spread_atr":0.66016,"own_change_pct":0.356849,"rel_strength_pct":{"SPY":0.315298,"IWM":0.335865}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.615122},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"36496f2c66b6","ts":"2026-09-21T15:42:56.699205+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.62 below VWAP $10.84","plan":{"state":"PASS","setup":"","stop":10.4924,"target":10.86,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":80.3,"room_to_5d_high_atr":0.46},"price":10.6214,"vwap":10.8362,"ext_from_open_pct":-3.27,"max_ext_allowed_pct":3.0,"volume_pace":0.776,"trend":"flat","recent_slope_pct":-0.6515,"volatility":"medium"},"price":10.6214,"volume":{"bars":132,"last_bar_volume":139697.0,"baseline_avg":385314.0,"bar_rvol":0.362554,"raw_accel":0.450215,"smooth_accel":0.363587,"accel_momentum":-0.563439,"rvol_3bar":[1.444426,0.195785,0.362554],"trend_3bar":"MIXED","projected_rvol":0.187959},"flow":{"window_s":30,"trades":207,"trade_rate":6.9,"buy_vol":12036.0,"sell_vol":35037.0,"unclassified_vol":0.0,"imbalance":-0.488624,"bid":10.99,"ask":11.0,"spread_pct":0.09095,"quote_size_imbalance":null,"quote_age_s":0.195346},"context":{"vwap":10.836268,"price_vs_vwap_pct":-1.982862,"ema9":10.983284,"ema20":10.964704,"ema_stack":false,"ema_warm":true,"hod":11.03,"dist_to_hod_pct":-3.704442,"dist_to_hod_atr":13.164199,"atr":0.031039,"spread_atr":0.322178,"own_change_pct":0.28085,"rel_strength_pct":{"SPY":0.239299,"IWM":0.259866}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.177152},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ff9fe870f2a4","ts":"2026-09-21T15:42:56.699205+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.05,"target":12.34,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":66.7,"room_to_5d_high_atr":0.53},"price":12.2272,"vwap":12.1674,"ext_from_open_pct":-0.59,"max_ext_allowed_pct":4.0,"volume_pace":0.891,"trend":"flat","recent_slope_pct":0.2862,"volatility":"medium"},"price":12.2272,"volume":{"bars":132,"last_bar_volume":7347.0,"baseline_avg":12483.65,"bar_rvol":0.58853,"raw_accel":0.961292,"smooth_accel":-0.210969,"accel_momentum":-0.340756,"rvol_3bar":[0.837459,0.291195,0.58853],"trend_3bar":"MIXED","projected_rvol":0.348821},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2860.0,"sell_vol":265.0,"unclassified_vol":0.0,"imbalance":0.8304,"bid":12.09,"ask":12.1,"spread_pct":0.082679,"quote_size_imbalance":null,"quote_age_s":0.207854},"context":{"vwap":12.167318,"price_vs_vwap_pct":0.492153,"ema9":12.089552,"ema20":12.103151,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.104083,"dist_to_hod_atr":5.977601,"atr":0.043964,"spread_atr":0.227458,"own_change_pct":-0.247627,"rel_strength_pct":{"SPY":-0.289178,"IWM":-0.268611}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.488715},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"eee419df5dde","ts":"2026-09-21T15:42:56.699205+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"held 913.1s, plan says PASS; stop 5.15, target 5.27 (ceiling), R:R 1.22; R:R 1.22 < 2.0 at 5.20; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.151,"target":5.2666,"target_label":"ceiling","reward_risk":1.22,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.203,"vwap":5.1701,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.912,"trend":"flat","recent_slope_pct":0.0019,"volatility":"unknown"},"price":5.203,"volume":{"bars":132,"last_bar_volume":58824.0,"baseline_avg":27632.35,"bar_rvol":2.128809,"raw_accel":1.23004,"smooth_accel":0.577132,"accel_momentum":0.882067,"rvol_3bar":[0.347826,0.967223,2.128809],"trend_3bar":"ACCELERATING","projected_rvol":2.04391},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":112.0,"sell_vol":400.0,"unclassified_vol":0.0,"imbalance":-0.5625,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":1.928966},"context":{"vwap":5.169785,"price_vs_vwap_pct":0.642483,"ema9":5.199905,"ema20":5.188278,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.830189,"dist_to_hod_atr":4.85178,"atr":0.019993,"spread_atr":0.500184,"own_change_pct":-0.076864,"rel_strength_pct":{"SPY":-0.118415,"IWM":-0.097848}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.197455},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bdba32682507","ts":"2026-09-21T15:42:56.699205+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.27 below VWAP $6.31","plan":{"state":"PASS","setup":"","stop":6.18,"target":6.34,"target_label":"premarket_high","reward_risk":0.81,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.2686,"vwap":6.3096,"ext_from_open_pct":-0.34,"max_ext_allowed_pct":3.0,"volume_pace":1.33,"trend":"flat","recent_slope_pct":-0.5888,"volatility":"unknown"},"price":6.2686,"volume":{"bars":132,"last_bar_volume":118506.0,"baseline_avg":81773.8,"bar_rvol":1.449193,"raw_accel":2.433265,"smooth_accel":0.003418,"accel_momentum":-1.246001,"rvol_3bar":[1.63163,0.4126,1.449193],"trend_3bar":"MIXED","projected_rvol":1.94492},"flow":{"window_s":30,"trades":346,"trade_rate":11.533333,"buy_vol":20468.0,"sell_vol":37761.0,"unclassified_vol":0.0,"imbalance":-0.296983,"bid":6.42,"ask":6.43,"spread_pct":0.155642,"quote_size_imbalance":null,"quote_age_s":0.121584},"context":{"vwap":6.309587,"price_vs_vwap_pct":-0.649602,"ema9":6.444315,"ema20":6.426301,"ema_stack":false,"ema_warm":true,"hod":6.4699,"dist_to_hod_pct":-3.111331,"dist_to_hod_atr":7.685636,"atr":0.026192,"spread_atr":0.3818,"own_change_pct":0.2331,"rel_strength_pct":{"SPY":0.191549,"IWM":0.212116}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.430385},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"17e1cc4db710","ts":"2026-09-21T15:42:56.699205+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.71 below VWAP $8.75","plan":{"state":"PASS","setup":"","stop":8.6243,"target":8.93,"target_label":"ceiling","reward_risk":2.51,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7114,"vwap":8.7524,"ext_from_open_pct":2.25,"max_ext_allowed_pct":3.0,"volume_pace":0.637,"trend":"flat","recent_slope_pct":-0.3193,"volatility":"unknown"},"price":8.7114,"volume":{"bars":132,"last_bar_volume":29037.0,"baseline_avg":87595.4,"bar_rvol":0.33149,"raw_accel":-0.140179,"smooth_accel":-0.392782,"accel_momentum":0.066165,"rvol_3bar":[0.790142,0.383094,0.33149],"trend_3bar":"DECELERATING","projected_rvol":0.624404},"flow":{"window_s":30,"trades":305,"trade_rate":10.166667,"buy_vol":4539.0,"sell_vol":37074.0,"unclassified_vol":0.0,"imbalance":-0.781847,"bid":8.87,"ask":8.88,"spread_pct":0.112676,"quote_size_imbalance":null,"quote_age_s":0.036586},"context":{"vwap":8.752688,"price_vs_vwap_pct":-0.471723,"ema9":8.861325,"ema20":8.852469,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-2.502518,"dist_to_hod_atr":4.646032,"atr":0.048127,"spread_atr":0.207783,"own_change_pct":0.343518,"rel_strength_pct":{"SPY":0.301967,"IWM":0.322534}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.259174},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"d3612badd5df","ts":"2026-09-21T15:43:01.797041+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.59 below VWAP $12.82","plan":{"state":"PASS","setup":"","stop":12.203,"target":13.23,"target_label":"ceiling","reward_risk":1.62,"pos_in_5d_range_pct":143.5,"room_to_5d_high_atr":-1.3},"price":12.5948,"vwap":12.8199,"ext_from_open_pct":-3.19,"max_ext_allowed_pct":3.0,"volume_pace":0.782,"trend":"flat","recent_slope_pct":-1.4045,"volatility":"high"},"price":12.5948,"volume":{"bars":133,"last_bar_volume":21967.0,"baseline_avg":15727.2,"bar_rvol":1.396752,"raw_accel":0.447292,"smooth_accel":0.603689,"accel_momentum":-0.055287,"rvol_3bar":[1.291873,0.942212,1.396752],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":4655.0,"sell_vol":6514.0,"unclassified_vol":0.0,"imbalance":-0.166443,"bid":13.11,"ask":13.14,"spread_pct":0.228571,"quote_size_imbalance":null,"quote_age_s":3.30378},"context":{"vwap":12.819862,"price_vs_vwap_pct":-1.75557,"ema9":12.879191,"ema20":12.911107,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-8.733333,"dist_to_hod_atr":7.954365,"atr":0.151514,"spread_atr":0.198001,"own_change_pct":-4.611628,"rel_strength_pct":{"SPY":-4.632399,"IWM":-4.613377}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.232479},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dd89fb39096a","ts":"2026-09-21T15:43:01.797041+00:00","symbol":"BKKT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":9.05,"target":9.4,"target_label":"premarket_high","reward_risk":0.17,"pos_in_5d_range_pct":144.3,"room_to_5d_high_atr":-1.18},"price":9.35,"vwap":9.1763,"ext_from_open_pct":1.08,"max_ext_allowed_pct":4.0,"volume_pace":0.742,"trend":"flat","recent_slope_pct":0.6642,"volatility":"high"},"price":9.35,"volume":{"bars":133,"last_bar_volume":4709.0,"baseline_avg":3101.4,"bar_rvol":1.518347,"raw_accel":2.567424,"smooth_accel":1.069396,"accel_momentum":-0.344448,"rvol_3bar":[0.907056,0.397824,1.518347],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":1795.0,"sell_vol":2812.0,"unclassified_vol":0.0,"imbalance":-0.220751,"bid":9.02,"ask":9.05,"spread_pct":0.332042,"quote_size_imbalance":null,"quote_age_s":0.47092},"context":{"vwap":9.176323,"price_vs_vwap_pct":1.892666,"ema9":9.042699,"ema20":9.071375,"ema_stack":false,"ema_warm":true,"hod":9.48,"dist_to_hod_pct":-1.371308,"dist_to_hod_atr":1.78933,"atr":0.072653,"spread_atr":0.412922,"own_change_pct":-0.675482,"rel_strength_pct":{"SPY":-0.696253,"IWM":-0.677231}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.335177},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a8d02e059ab5","ts":"2026-09-21T15:43:01.797041+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.56 below VWAP $8.61","plan":{"state":"PASS","setup":"","stop":8.4609,"target":8.76,"target_label":"premarket_high","reward_risk":1.93,"pos_in_5d_range_pct":116.6,"room_to_5d_high_atr":-0.52},"price":8.5628,"vwap":8.6143,"ext_from_open_pct":-0.66,"max_ext_allowed_pct":3.0,"volume_pace":1.073,"trend":"flat","recent_slope_pct":-0.4651,"volatility":"medium"},"price":8.5628,"volume":{"bars":133,"last_bar_volume":3127.0,"baseline_avg":9073.15,"bar_rvol":0.344643,"raw_accel":-0.024337,"smooth_accel":0.328207,"accel_momentum":0.988237,"rvol_3bar":[0.080977,0.359154,0.344643],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1196.0,"sell_vol":390.0,"unclassified_vol":0.0,"imbalance":0.508197,"bid":8.76,"ask":8.77,"spread_pct":0.11409,"quote_size_imbalance":null,"quote_age_s":1.181275},"context":{"vwap":8.614296,"price_vs_vwap_pct":-0.597792,"ema9":8.740869,"ema20":8.712879,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-4.308081,"dist_to_hod_atr":5.78013,"atr":0.066694,"spread_atr":0.149939,"own_change_pct":0.554109,"rel_strength_pct":{"SPY":0.533337,"IWM":0.55236}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.175147},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"052f1058eb0e","ts":"2026-09-21T15:43:01.797041+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.77 below VWAP $9.85","plan":{"state":"PASS","setup":"","stop":9.6057,"target":9.915,"target_label":"ceiling","reward_risk":0.87,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.61},"price":9.7714,"vwap":9.851,"ext_from_open_pct":-2.19,"max_ext_allowed_pct":4.0,"volume_pace":1.17,"trend":"flat","recent_slope_pct":0.2912,"volatility":"high"},"price":9.7714,"volume":{"bars":133,"last_bar_volume":20057.0,"baseline_avg":13655.7,"bar_rvol":1.468764,"raw_accel":2.346738,"smooth_accel":-0.246969,"accel_momentum":0.389656,"rvol_3bar":[0.281781,0.437758,1.468764],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":143,"trade_rate":4.766667,"buy_vol":15040.0,"sell_vol":3698.0,"unclassified_vol":0.0,"imbalance":0.605294,"bid":9.68,"ask":9.69,"spread_pct":0.103252,"quote_size_imbalance":null,"quote_age_s":0.050253},"context":{"vwap":9.850978,"price_vs_vwap_pct":-0.80782,"ema9":9.691896,"ema20":9.695438,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-3.444664,"dist_to_hod_atr":5.921094,"atr":0.058874,"spread_atr":0.169854,"own_change_pct":0.945191,"rel_strength_pct":{"SPY":0.92442,"IWM":0.943443}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.889034},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c6036022f2b2","ts":"2026-09-21T15:43:01.797041+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $8.73 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.9996,"target":12.5,"target_label":"range_20d_high","reward_risk":23.93,"pos_in_5d_range_pct":163.5,"room_to_5d_high_atr":-0.84},"price":9.14,"vwap":8.916,"ext_from_open_pct":4.7,"max_ext_allowed_pct":4.0,"volume_pace":0.931,"trend":"flat","recent_slope_pct":0.0987,"volatility":"high"},"price":9.14,"volume":{"bars":132,"last_bar_volume":3529.0,"baseline_avg":5299.4,"bar_rvol":0.665924,"raw_accel":0.220685,"smooth_accel":0.016559,"accel_momentum":0.65335,"rvol_3bar":[1.06468,0.549745,0.665924],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":500.0,"sell_vol":3117.0,"unclassified_vol":0.0,"imbalance":-0.723528,"bid":9.13,"ask":9.15,"spread_pct":0.218818,"quote_size_imbalance":null,"quote_age_s":18.853925},"context":{"vwap":8.915453,"price_vs_vwap_pct":2.518626,"ema9":9.111454,"ema20":9.089761,"ema_stack":true,"ema_warm":true,"hod":9.14,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.030296,"spread_atr":0.66016,"own_change_pct":0.356849,"rel_strength_pct":{"SPY":0.336077,"IWM":0.3551}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.481815},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3f0b52964386","ts":"2026-09-21T15:43:01.797041+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.11 below VWAP $12.17","plan":{"state":"PASS","setup":"","stop":11.9333,"target":12.29,"target_label":"ceiling","reward_risk":1.03,"pos_in_5d_range_pct":56.1,"room_to_5d_high_atr":0.7},"price":12.1086,"vwap":12.1673,"ext_from_open_pct":-1.56,"max_ext_allowed_pct":4.0,"volume_pace":0.891,"trend":"flat","recent_slope_pct":0.0955,"volatility":"medium"},"price":12.1086,"volume":{"bars":133,"last_bar_volume":4135.0,"baseline_avg":12517.4,"bar_rvol":0.33034,"raw_accel":-0.437185,"smooth_accel":-0.475584,"accel_momentum":-0.264615,"rvol_3bar":[0.291195,0.58853,0.33034],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":2663.0,"sell_vol":206.0,"unclassified_vol":0.0,"imbalance":0.856396,"bid":12.09,"ask":12.1,"spread_pct":0.082679,"quote_size_imbalance":null,"quote_age_s":1.798774},"context":{"vwap":12.167322,"price_vs_vwap_pct":-0.482617,"ema9":12.090962,"ema20":12.102527,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-3.053643,"dist_to_hod_atr":6.01419,"atr":0.063417,"spread_atr":0.157687,"own_change_pct":-0.028099,"rel_strength_pct":{"SPY":-0.048871,"IWM":-0.029848}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.282902},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"03a513074d39","ts":"2026-09-21T15:43:06.872578+00:00","symbol":"AEMD","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.36x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":6.11,"target":6.56,"target_label":"prev_day_high","reward_risk":0.82,"pos_in_5d_range_pct":61.2,"room_to_5d_high_atr":3.85},"price":6.3578,"vwap":6.3326,"ext_from_open_pct":-7.72,"max_ext_allowed_pct":4.0,"volume_pace":0.363,"trend":"flat","recent_slope_pct":0.8063,"volatility":"high"},"price":6.3578,"volume":{"bars":132,"last_bar_volume":11763.0,"baseline_avg":1102.5,"bar_rvol":10.669388,"raw_accel":41.677551,"smooth_accel":64.921053,"accel_momentum":65.23344,"rvol_3bar":[0.635245,0.041802,10.669388],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":2160.0,"sell_vol":1429.0,"unclassified_vol":0.0,"imbalance":0.203678,"bid":6.13,"ask":6.17,"spread_pct":0.650407,"quote_size_imbalance":null,"quote_age_s":8.781171},"context":{"vwap":6.332457,"price_vs_vwap_pct":0.400212,"ema9":6.141111,"ema20":6.143818,"ema_stack":false,"ema_warm":true,"hod":7.0486,"dist_to_hod_pct":-9.800528,"dist_to_hod_atr":7.45715,"atr":0.092636,"spread_atr":0.431798,"own_change_pct":0.939159,"rel_strength_pct":{"SPY":0.918387,"IWM":0.93741}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":2.173119},"shadow":{"decision":"FAIL","failed":["spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1d4d7dff10dc","ts":"2026-09-21T15:43:06.872578+00:00","symbol":"KRRO","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.93,"target":10.85,"target_label":"premarket_high","reward_risk":1.67,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.2743,"vwap":10.1219,"ext_from_open_pct":1.52,"max_ext_allowed_pct":4.0,"volume_pace":0.465,"trend":"flat","recent_slope_pct":0.5934,"volatility":"unknown"},"price":10.2743,"volume":{"bars":128,"last_bar_volume":967.0,"baseline_avg":1533.4,"bar_rvol":0.630625,"raw_accel":1.522499,"smooth_accel":-0.23182,"accel_momentum":-1.224635,"rvol_3bar":[0.661762,0.201576,0.630625],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":447.0,"sell_vol":342.0,"unclassified_vol":0.0,"imbalance":0.13308,"bid":10.0,"ask":10.07,"spread_pct":0.697559,"quote_size_imbalance":null,"quote_age_s":27.893789},"context":{"vwap":10.121891,"price_vs_vwap_pct":1.505736,"ema9":9.988519,"ema20":9.988346,"ema_stack":true,"ema_warm":true,"hod":10.77,"dist_to_hod_pct":-4.6026,"dist_to_hod_atr":5.162166,"atr":0.096026,"spread_atr":0.728972,"own_change_pct":0.891348,"rel_strength_pct":{"SPY":0.870577,"IWM":0.889599}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.083923},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"55f06ff57ac1","ts":"2026-09-21T15:43:06.872578+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.9731,"target":9.1284,"target_label":"clear air (typical 60-min move)","reward_risk":0.34,"pos_in_5d_range_pct":132.6,"room_to_5d_high_atr":-1.04},"price":9.0886,"vwap":9.0157,"ext_from_open_pct":0.76,"max_ext_allowed_pct":4.0,"volume_pace":1.18,"trend":"flat","recent_slope_pct":0.1963,"volatility":"medium"},"price":9.0886,"volume":{"bars":133,"last_bar_volume":11188.0,"baseline_avg":13394.25,"bar_rvol":0.835284,"raw_accel":1.640548,"smooth_accel":-0.069334,"accel_momentum":0.203622,"rvol_3bar":[1.783911,0.306564,0.835284],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":197,"trade_rate":6.566667,"buy_vol":13759.0,"sell_vol":5559.0,"unclassified_vol":0.0,"imbalance":0.424475,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":1.203027},"context":{"vwap":9.015676,"price_vs_vwap_pct":0.808858,"ema9":9.014376,"ema20":9.020457,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.45236,"dist_to_hod_atr":1.103186,"atr":0.037437,"spread_atr":0.267115,"own_change_pct":0.222099,"rel_strength_pct":{"SPY":0.201327,"IWM":0.22035}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.354557},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"496fd2225b59","ts":"2026-09-21T15:43:06.872578+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.655,"target":9.94,"target_label":"range_20d_high","reward_risk":11.11,"pos_in_5d_range_pct":132.0,"room_to_5d_high_atr":-1.01},"price":8.7611,"vwap":8.6143,"ext_from_open_pct":1.64,"max_ext_allowed_pct":3.0,"volume_pace":1.073,"trend":"flat","recent_slope_pct":-0.0104,"volatility":"medium"},"price":8.7611,"volume":{"bars":133,"last_bar_volume":3127.0,"baseline_avg":9073.15,"bar_rvol":0.344643,"raw_accel":-0.024337,"smooth_accel":0.328207,"accel_momentum":0.988237,"rvol_3bar":[0.080977,0.359154,0.344643],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":315.0,"sell_vol":128.0,"unclassified_vol":0.0,"imbalance":0.422122,"bid":8.76,"ask":8.77,"spread_pct":0.11409,"quote_size_imbalance":null,"quote_age_s":2.884007},"context":{"vwap":8.614296,"price_vs_vwap_pct":1.704196,"ema9":8.740869,"ema20":8.712879,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.092017,"dist_to_hod_atr":2.806849,"atr":0.066694,"spread_atr":0.149939,"own_change_pct":0.554109,"rel_strength_pct":{"SPY":0.533337,"IWM":0.55236}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.145481},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a02b94cdc698","ts":"2026-09-21T15:43:06.872578+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":11.3046,"target":12.0486,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.7528,"vwap":11.3194,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.7,"trend":"flat","recent_slope_pct":0.471,"volatility":"unknown"},"price":11.7528,"volume":{"bars":122,"last_bar_volume":10976.0,"baseline_avg":557.2,"bar_rvol":19.698492,"raw_accel":50.530516,"smooth_accel":290.410256,"accel_momentum":282.940869,"rvol_3bar":[0.324095,0.389504,19.698492],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":468.0,"sell_vol":10433.0,"unclassified_vol":0.0,"imbalance":-0.914136,"bid":11.28,"ask":11.45,"spread_pct":1.495821,"quote_size_imbalance":null,"quote_age_s":12.350828},"context":{"vwap":11.31936,"price_vs_vwap_pct":3.829193,"ema9":11.315651,"ema20":11.321029,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-1.650209,"dist_to_hod_atr":1.279043,"atr":0.154178,"spread_atr":1.102623,"own_change_pct":-2.585237,"rel_strength_pct":{"SPY":-2.606009,"IWM":-2.586986}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-18.007107},"shadow":{"decision":"FAIL","failed":["imbalance","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b8d5808a7a2f","ts":"2026-09-21T15:43:06.872578+00:00","symbol":"ABSI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.63,"target":9.9,"target_label":"range_20d_high","reward_risk":0.2,"pos_in_5d_range_pct":101.3,"room_to_5d_high_atr":-0.05},"price":9.8559,"vwap":9.7746,"ext_from_open_pct":-1.83,"max_ext_allowed_pct":4.0,"volume_pace":0.508,"trend":"flat","recent_slope_pct":0.478,"volatility":"medium"},"price":9.8559,"volume":{"bars":133,"last_bar_volume":2449.0,"baseline_avg":4217.5,"bar_rvol":0.580676,"raw_accel":0.278184,"smooth_accel":1.009418,"accel_momentum":0.779201,"rvol_3bar":[1.150139,0.452511,0.580676],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":4735.0,"sell_vol":1260.0,"unclassified_vol":0.0,"imbalance":0.57965,"bid":9.65,"ask":9.66,"spread_pct":0.103573,"quote_size_imbalance":null,"quote_age_s":0.632652},"context":{"vwap":9.774367,"price_vs_vwap_pct":0.834156,"ema9":9.662908,"ema20":9.645178,"ema_stack":true,"ema_warm":true,"hod":10.15,"dist_to_hod_pct":-2.897537,"dist_to_hod_atr":4.303917,"atr":0.068333,"spread_atr":0.146342,"own_change_pct":0.424211,"rel_strength_pct":{"SPY":0.40344,"IWM":0.422462}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.336589},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9a9fdcedac6f","ts":"2026-09-21T15:43:06.872578+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":13.47,"target":13.8,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":115.3,"room_to_5d_high_atr":-0.47},"price":13.7086,"vwap":13.571,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":3.0,"volume_pace":0.8,"trend":"flat","recent_slope_pct":0.3404,"volatility":"high"},"price":13.7086,"volume":{"bars":133,"last_bar_volume":71025.0,"baseline_avg":84138.65,"bar_rvol":0.844142,"raw_accel":0.287688,"smooth_accel":0.255534,"accel_momentum":0.615662,"rvol_3bar":[0.258395,0.654769,0.844142],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":260,"trade_rate":8.666667,"buy_vol":19180.0,"sell_vol":26773.0,"unclassified_vol":0.0,"imbalance":-0.165234,"bid":13.46,"ask":13.47,"spread_pct":0.074267,"quote_size_imbalance":null,"quote_age_s":0.017352},"context":{"vwap":13.571002,"price_vs_vwap_pct":1.013914,"ema9":13.495709,"ema20":13.500037,"ema_stack":false,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-1.941345,"dist_to_hod_atr":4.009305,"atr":0.067693,"spread_atr":0.147727,"own_change_pct":0.212009,"rel_strength_pct":{"SPY":0.191237,"IWM":0.21026}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.139481},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"505d3f89f58a","ts":"2026-09-21T15:43:06.872578+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.05,"target":12.34,"target_label":"premarket_high","reward_risk":0.12,"pos_in_5d_range_pct":74.1,"room_to_5d_high_atr":0.41},"price":12.31,"vwap":12.1673,"ext_from_open_pct":0.08,"max_ext_allowed_pct":4.0,"volume_pace":0.89,"trend":"flat","recent_slope_pct":0.4274,"volatility":"medium"},"price":12.31,"volume":{"bars":133,"last_bar_volume":4135.0,"baseline_avg":12517.4,"bar_rvol":0.33034,"raw_accel":-0.437185,"smooth_accel":-0.475584,"accel_momentum":-0.264615,"rvol_3bar":[0.291195,0.58853,0.33034],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":1292.0,"sell_vol":514.0,"unclassified_vol":0.0,"imbalance":0.430786,"bid":12.09,"ask":12.1,"spread_pct":0.082679,"quote_size_imbalance":null,"quote_age_s":3.625751},"context":{"vwap":12.167322,"price_vs_vwap_pct":1.172636,"ema9":12.090962,"ema20":12.102527,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.441153,"dist_to_hod_atr":2.83837,"atr":0.063417,"spread_atr":0.157687,"own_change_pct":-0.028099,"rel_strength_pct":{"SPY":-0.048871,"IWM":-0.029848}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.142306},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"42b0dcc6ce56","ts":"2026-09-21T15:43:06.872578+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.27,"target":6.4699,"target_label":"ceiling","reward_risk":0.25,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.43,"vwap":6.3094,"ext_from_open_pct":2.23,"max_ext_allowed_pct":3.0,"volume_pace":1.33,"trend":"flat","recent_slope_pct":-0.443,"volatility":"unknown"},"price":6.43,"volume":{"bars":133,"last_bar_volume":153583.0,"baseline_avg":81501.0,"bar_rvol":1.884431,"raw_accel":0.295993,"smooth_accel":-0.226676,"accel_momentum":-0.230094,"rvol_3bar":[0.4126,1.449193,1.884431],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":386,"trade_rate":12.866667,"buy_vol":11077.0,"sell_vol":38349.0,"unclassified_vol":0.0,"imbalance":-0.551774,"bid":6.42,"ask":6.43,"spread_pct":0.155642,"quote_size_imbalance":null,"quote_age_s":0.087152},"context":{"vwap":6.30936,"price_vs_vwap_pct":1.912086,"ema9":6.399732,"ema20":6.406787,"ema_stack":false,"ema_warm":true,"hod":6.4699,"dist_to_hod_pct":-0.616702,"dist_to_hod_atr":0.930237,"atr":0.042892,"spread_atr":0.233142,"own_change_pct":-3.362898,"rel_strength_pct":{"SPY":-3.383669,"IWM":-3.364647}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.039781},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"516e324b4a42","ts":"2026-09-21T15:43:11.941359+00:00","symbol":"AEMD","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.27 below VWAP $6.33","plan":{"state":"PASS","setup":"","stop":6.068,"target":6.37,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":60.1,"room_to_5d_high_atr":3.95},"price":6.2723,"vwap":6.3328,"ext_from_open_pct":-8.97,"max_ext_allowed_pct":4.0,"volume_pace":0.364,"trend":"flat","recent_slope_pct":0.5313,"volatility":"high"},"price":6.2723,"volume":{"bars":132,"last_bar_volume":11763.0,"baseline_avg":1102.5,"bar_rvol":10.669388,"raw_accel":41.677551,"smooth_accel":64.921053,"accel_momentum":65.23344,"rvol_3bar":[0.635245,0.041802,10.669388],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":2061.0,"sell_vol":2159.0,"unclassified_vol":0.0,"imbalance":-0.023223,"bid":6.13,"ask":6.17,"spread_pct":0.650407,"quote_size_imbalance":null,"quote_age_s":13.849952},"context":{"vwap":6.332457,"price_vs_vwap_pct":-0.949975,"ema9":6.141111,"ema20":6.143818,"ema_stack":false,"ema_warm":true,"hod":7.0486,"dist_to_hod_pct":-11.013535,"dist_to_hod_atr":8.380118,"atr":0.092636,"spread_atr":0.431798,"own_change_pct":0.939159,"rel_strength_pct":{"SPY":0.918387,"IWM":0.93741}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.247773},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"37054f72a7a7","ts":"2026-09-21T15:43:11.941359+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":8.9731,"target":9.1299,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":130.8,"room_to_5d_high_atr":-0.98},"price":9.0686,"vwap":9.0157,"ext_from_open_pct":0.54,"max_ext_allowed_pct":4.0,"volume_pace":1.179,"trend":"flat","recent_slope_pct":0.152,"volatility":"medium"},"price":9.0686,"volume":{"bars":133,"last_bar_volume":11188.0,"baseline_avg":13394.25,"bar_rvol":0.835284,"raw_accel":1.640548,"smooth_accel":-0.069334,"accel_momentum":0.203622,"rvol_3bar":[1.783911,0.306564,0.835284],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":231,"trade_rate":7.7,"buy_vol":14307.0,"sell_vol":5495.0,"unclassified_vol":0.0,"imbalance":0.445006,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":3.589779},"context":{"vwap":9.015676,"price_vs_vwap_pct":0.587022,"ema9":9.014376,"ema20":9.020457,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.67142,"dist_to_hod_atr":1.637417,"atr":0.037437,"spread_atr":0.267115,"own_change_pct":0.222099,"rel_strength_pct":{"SPY":0.201327,"IWM":0.22035}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.371706},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d3f1ec2e21db","ts":"2026-09-21T15:43:11.941359+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.29 below VWAP $11.32","plan":{"state":"PASS","setup":"","stop":10.9547,"target":11.7733,"target_label":"ceiling","reward_risk":1.41,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.2947,"vwap":11.3195,"ext_from_open_pct":-2.63,"max_ext_allowed_pct":3.0,"volume_pace":0.7,"trend":"flat","recent_slope_pct":-0.3362,"volatility":"unknown"},"price":11.2947,"volume":{"bars":122,"last_bar_volume":10976.0,"baseline_avg":557.2,"bar_rvol":19.698492,"raw_accel":50.530516,"smooth_accel":290.410256,"accel_momentum":282.940869,"rvol_3bar":[0.324095,0.389504,19.698492],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":471.0,"sell_vol":10598.0,"unclassified_vol":0.0,"imbalance":-0.914897,"bid":11.28,"ask":11.45,"spread_pct":1.495821,"quote_size_imbalance":null,"quote_age_s":17.419609},"context":{"vwap":11.31936,"price_vs_vwap_pct":-0.217856,"ema9":11.315651,"ema20":11.321029,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-5.483682,"dist_to_hod_atr":4.250288,"atr":0.154178,"spread_atr":1.102623,"own_change_pct":-2.585237,"rel_strength_pct":{"SPY":-2.606009,"IWM":-2.586986}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-18.022101},"shadow":{"decision":"FAIL","failed":["imbalance","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fffa611a0c23","ts":"2026-09-21T15:43:11.941359+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.52 below VWAP $8.66","plan":{"state":"PASS","setup":"","stop":8.4097,"target":8.82,"target_label":"prev_day_high","reward_risk":2.77,"pos_in_5d_range_pct":45.7,"room_to_5d_high_atr":0.91},"price":8.5186,"vwap":8.6614,"ext_from_open_pct":-2.31,"max_ext_allowed_pct":3.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":-1.0085,"volatility":"medium"},"price":8.5186,"volume":{"bars":133,"last_bar_volume":20253.0,"baseline_avg":12229.05,"bar_rvol":1.656138,"raw_accel":0.817391,"smooth_accel":-0.097305,"accel_momentum":-0.372988,"rvol_3bar":[0.221471,0.875357,1.656138],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":833.0,"sell_vol":3595.0,"unclassified_vol":0.0,"imbalance":-0.623758,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":2.345481},"context":{"vwap":8.661446,"price_vs_vwap_pct":-1.649215,"ema9":8.774815,"ema20":8.802431,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-6.121819,"dist_to_hod_atr":6.932437,"atr":0.080131,"spread_atr":0.124796,"own_change_pct":-3.016378,"rel_strength_pct":{"SPY":-3.037149,"IWM":-3.018127}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.033029},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b45601d0fdae","ts":"2026-09-21T15:43:11.941359+00:00","symbol":"ABSI","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.65 below VWAP $9.77","plan":{"state":"PASS","setup":"","stop":9.5118,"target":9.74,"target_label":"prev_day_high","reward_risk":0.63,"pos_in_5d_range_pct":91.3,"room_to_5d_high_atr":0.32},"price":9.6522,"vwap":9.7744,"ext_from_open_pct":-3.86,"max_ext_allowed_pct":4.0,"volume_pace":0.508,"trend":"flat","recent_slope_pct":0.0584,"volatility":"medium"},"price":9.6522,"volume":{"bars":133,"last_bar_volume":2449.0,"baseline_avg":4217.5,"bar_rvol":0.580676,"raw_accel":0.278184,"smooth_accel":1.009418,"accel_momentum":0.779201,"rvol_3bar":[1.150139,0.452511,0.580676],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":4730.0,"sell_vol":1720.0,"unclassified_vol":0.0,"imbalance":0.466667,"bid":9.65,"ask":9.66,"spread_pct":0.103573,"quote_size_imbalance":null,"quote_age_s":0.324983},"context":{"vwap":9.774367,"price_vs_vwap_pct":-1.249867,"ema9":9.662908,"ema20":9.645178,"ema_stack":false,"ema_warm":true,"hod":10.15,"dist_to_hod_pct":-4.904433,"dist_to_hod_atr":7.284903,"atr":0.068333,"spread_atr":0.146342,"own_change_pct":0.424211,"rel_strength_pct":{"SPY":0.40344,"IWM":0.422462}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.270982},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f2e9c3556c9d","ts":"2026-09-21T15:43:11.941359+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.48 below VWAP $13.57","plan":{"state":"PASS","setup":"","stop":13.2731,"target":13.8,"target_label":"ceiling","reward_risk":1.53,"pos_in_5d_range_pct":106.4,"room_to_5d_high_atr":-0.19},"price":13.4815,"vwap":13.571,"ext_from_open_pct":-3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.8,"trend":"flat","recent_slope_pct":0.0049,"volatility":"high"},"price":13.4815,"volume":{"bars":133,"last_bar_volume":71025.0,"baseline_avg":84138.65,"bar_rvol":0.844142,"raw_accel":0.287688,"smooth_accel":0.255534,"accel_momentum":0.615662,"rvol_3bar":[0.258395,0.654769,0.844142],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":263,"trade_rate":8.766667,"buy_vol":28273.0,"sell_vol":20180.0,"unclassified_vol":0.0,"imbalance":0.167028,"bid":13.47,"ask":13.48,"spread_pct":0.074212,"quote_size_imbalance":null,"quote_age_s":0.142094},"context":{"vwap":13.571002,"price_vs_vwap_pct":-0.659507,"ema9":13.495709,"ema20":13.500037,"ema_stack":false,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-3.565808,"dist_to_hod_atr":7.364181,"atr":0.067693,"spread_atr":0.147727,"own_change_pct":0.212009,"rel_strength_pct":{"SPY":0.191237,"IWM":0.21026}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.140995},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"47c21bdf2b17","ts":"2026-09-21T15:43:11.941359+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.16 below VWAP $12.17","plan":{"state":"PASS","setup":"","stop":11.9833,"target":12.29,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":60.6,"room_to_5d_high_atr":0.63},"price":12.1586,"vwap":12.1673,"ext_from_open_pct":-1.15,"max_ext_allowed_pct":4.0,"volume_pace":0.89,"trend":"flat","recent_slope_pct":0.1781,"volatility":"medium"},"price":12.1586,"volume":{"bars":133,"last_bar_volume":4135.0,"baseline_avg":12517.4,"bar_rvol":0.33034,"raw_accel":-0.437185,"smooth_accel":-0.475584,"accel_momentum":-0.264615,"rvol_3bar":[0.291195,0.58853,0.33034],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":1359.0,"sell_vol":515.0,"unclassified_vol":0.0,"imbalance":0.450374,"bid":12.09,"ask":12.1,"spread_pct":0.082679,"quote_size_imbalance":null,"quote_age_s":0.10774},"context":{"vwap":12.167322,"price_vs_vwap_pct":-0.07168,"ema9":12.090962,"ema20":12.102527,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.653323,"dist_to_hod_atr":5.225754,"atr":0.063417,"spread_atr":0.157687,"own_change_pct":-0.028099,"rel_strength_pct":{"SPY":-0.048871,"IWM":-0.029848}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.148776},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b5f09a1565ef","ts":"2026-09-21T15:43:11.941359+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.13 below VWAP $5.17","plan":{"state":"PASS","setup":"","stop":5.0773,"target":5.2,"target_label":"premarket_high","reward_risk":1.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1286,"vwap":5.1701,"ext_from_open_pct":-1.37,"max_ext_allowed_pct":3.0,"volume_pace":0.91,"trend":"flat","recent_slope_pct":-0.307,"volatility":"unknown"},"price":5.1286,"volume":{"bars":133,"last_bar_volume":53379.0,"baseline_avg":30259.6,"bar_rvol":1.764035,"raw_accel":-0.092564,"smooth_accel":1.507346,"accel_momentum":0.930214,"rvol_3bar":[0.967223,2.128809,1.764035],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":320.0,"sell_vol":442.0,"unclassified_vol":0.0,"imbalance":-0.160105,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":0.381015},"context":{"vwap":5.170069,"price_vs_vwap_pct":-0.802103,"ema9":5.200624,"ema20":5.189727,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-3.233962,"dist_to_hod_atr":5.454819,"atr":0.031422,"spread_atr":0.318251,"own_change_pct":-0.001922,"rel_strength_pct":{"SPY":-0.022693,"IWM":-0.00367}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.282431},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"04909b77cacc","ts":"2026-09-21T15:43:11.941359+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.23 below VWAP $6.31","plan":{"state":"PASS","setup":"","stop":6.1663,"target":6.34,"target_label":"premarket_high","reward_risk":1.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.2286,"vwap":6.3093,"ext_from_open_pct":-0.98,"max_ext_allowed_pct":3.0,"volume_pace":1.329,"trend":"flat","recent_slope_pct":-1.0789,"volatility":"unknown"},"price":6.2286,"volume":{"bars":133,"last_bar_volume":153583.0,"baseline_avg":81501.0,"bar_rvol":1.884431,"raw_accel":0.295993,"smooth_accel":-0.226676,"accel_momentum":-0.230094,"rvol_3bar":[0.4126,1.449193,1.884431],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":423,"trade_rate":14.1,"buy_vol":9479.0,"sell_vol":33640.0,"unclassified_vol":0.0,"imbalance":-0.560333,"bid":6.42,"ask":6.43,"spread_pct":0.155642,"quote_size_imbalance":null,"quote_age_s":2.588593},"context":{"vwap":6.30936,"price_vs_vwap_pct":-1.279997,"ema9":6.399732,"ema20":6.406787,"ema_stack":false,"ema_warm":true,"hod":6.4699,"dist_to_hod_pct":-3.729579,"dist_to_hod_atr":5.625717,"atr":0.042892,"spread_atr":0.233142,"own_change_pct":-3.362898,"rel_strength_pct":{"SPY":-3.383669,"IWM":-3.364647}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.055909},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6f7fc7a5f799","ts":"2026-09-21T15:43:16.983937+00:00","symbol":"KRRO","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.00 below VWAP $10.12","plan":{"state":"PASS","setup":"","stop":9.86,"target":10.85,"target_label":"premarket_high","reward_risk":6.07,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.0,"vwap":10.1219,"ext_from_open_pct":-1.19,"max_ext_allowed_pct":4.0,"volume_pace":0.464,"trend":"flat","recent_slope_pct":0.0486,"volatility":"unknown"},"price":10.0,"volume":{"bars":128,"last_bar_volume":967.0,"baseline_avg":1533.4,"bar_rvol":0.630625,"raw_accel":1.522499,"smooth_accel":-0.23182,"accel_momentum":-1.224635,"rvol_3bar":[0.661762,0.201576,0.630625],"trend_3bar":"MIXED","projected_rvol":0.154359},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":167.0,"sell_vol":344.0,"unclassified_vol":0.0,"imbalance":-0.34638,"bid":10.0,"ask":10.07,"spread_pct":0.697559,"quote_size_imbalance":null,"quote_age_s":38.005148},"context":{"vwap":10.121891,"price_vs_vwap_pct":-1.204232,"ema9":9.988519,"ema20":9.988346,"ema_stack":true,"ema_warm":true,"hod":10.77,"dist_to_hod_pct":-7.149489,"dist_to_hod_atr":8.018696,"atr":0.096026,"spread_atr":0.728972,"own_change_pct":0.891348,"rel_strength_pct":{"SPY":0.870577,"IWM":0.889599}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.218436},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"442cbb1dae64","ts":"2026-09-21T15:43:16.983937+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":10.876,"target":11.14,"target_label":"premarket_high","reward_risk":1.05,"pos_in_5d_range_pct":112.0,"room_to_5d_high_atr":-0.28},"price":11.005,"vwap":10.8363,"ext_from_open_pct":0.23,"max_ext_allowed_pct":3.0,"volume_pace":0.777,"trend":"flat","recent_slope_pct":-0.3524,"volatility":"medium"},"price":11.005,"volume":{"bars":133,"last_bar_volume":76183.0,"baseline_avg":381363.4,"bar_rvol":0.199765,"raw_accel":-0.454655,"smooth_accel":-0.711095,"accel_momentum":-1.074682,"rvol_3bar":[0.195785,0.362554,0.199765],"trend_3bar":"MIXED","projected_rvol":1.403342},"flow":{"window_s":30,"trades":484,"trade_rate":16.133333,"buy_vol":90019.0,"sell_vol":93632.0,"unclassified_vol":0.0,"imbalance":-0.019673,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":0.143659},"context":{"vwap":10.83615,"price_vs_vwap_pct":1.55821,"ema9":10.910347,"ema20":10.931742,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.029723,"dist_to_hod_atr":1.684525,"atr":0.067972,"spread_atr":0.14712,"own_change_pct":-3.291439,"rel_strength_pct":{"SPY":-3.31221,"IWM":-3.293188}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.00393},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f5ceed30d9d4","ts":"2026-09-21T15:43:16.983937+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1529,"target":5.2666,"target_label":"ceiling","reward_risk":1.18,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.205,"vwap":5.1701,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.911,"trend":"flat","recent_slope_pct":-0.0125,"volatility":"unknown"},"price":5.205,"volume":{"bars":133,"last_bar_volume":53379.0,"baseline_avg":30259.6,"bar_rvol":1.764035,"raw_accel":-0.092564,"smooth_accel":1.507346,"accel_momentum":0.930214,"rvol_3bar":[0.967223,2.128809,1.764035],"trend_3bar":"MIXED","projected_rvol":0.686946},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":5410.0,"sell_vol":495.0,"unclassified_vol":0.0,"imbalance":0.832345,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":0.608686},"context":{"vwap":5.170069,"price_vs_vwap_pct":0.675634,"ema9":5.200624,"ema20":5.189727,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.792453,"dist_to_hod_atr":3.023383,"atr":0.031422,"spread_atr":0.318251,"own_change_pct":-0.001922,"rel_strength_pct":{"SPY":-0.022693,"IWM":-0.00367}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.468287},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3e942a27e7a1","ts":"2026-09-21T15:43:22.038646+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.2s / 18s","plan":{"state":"WATCH","setup":"","stop":8.5967,"target":8.76,"target_label":"premarket_high","reward_risk":0.6,"pos_in_5d_range_pct":127.2,"room_to_5d_high_atr":-0.85},"price":8.6986,"vwap":8.6143,"ext_from_open_pct":0.91,"max_ext_allowed_pct":3.0,"volume_pace":1.071,"trend":"flat","recent_slope_pct":-0.1532,"volatility":"medium"},"price":8.6986,"volume":{"bars":133,"last_bar_volume":3127.0,"baseline_avg":9073.15,"bar_rvol":0.344643,"raw_accel":-0.024337,"smooth_accel":0.328207,"accel_momentum":0.988237,"rvol_3bar":[0.080977,0.359154,0.344643],"trend_3bar":"MIXED","projected_rvol":0.029706},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":14.0,"sell_vol":106.0,"unclassified_vol":0.0,"imbalance":-0.766667,"bid":8.76,"ask":8.77,"spread_pct":0.11409,"quote_size_imbalance":null,"quote_age_s":1.5181},"context":{"vwap":8.614296,"price_vs_vwap_pct":0.978658,"ema9":8.740869,"ema20":8.712879,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.790474,"dist_to_hod_atr":3.743965,"atr":0.066694,"spread_atr":0.149939,"own_change_pct":0.554109,"rel_strength_pct":{"SPY":0.533337,"IWM":0.55236}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.264226},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2206b497988b","ts":"2026-09-21T15:43:22.038646+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7061,"target":8.88,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":86.3,"room_to_5d_high_atr":0.23},"price":8.815,"vwap":8.6614,"ext_from_open_pct":1.09,"max_ext_allowed_pct":3.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":-0.3257,"volatility":"medium"},"price":8.815,"volume":{"bars":133,"last_bar_volume":20253.0,"baseline_avg":12229.05,"bar_rvol":1.656138,"raw_accel":0.817391,"smooth_accel":-0.097305,"accel_momentum":-0.372988,"rvol_3bar":[0.221471,0.875357,1.656138],"trend_3bar":"ACCELERATING","projected_rvol":0.52584},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":2360.0,"sell_vol":1264.0,"unclassified_vol":0.0,"imbalance":0.302428,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":3.139487},"context":{"vwap":8.661446,"price_vs_vwap_pct":1.772846,"ema9":8.774815,"ema20":8.802431,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.85538,"dist_to_hod_atr":3.233473,"atr":0.080131,"spread_atr":0.124796,"own_change_pct":-3.016378,"rel_strength_pct":{"SPY":-3.037149,"IWM":-3.018127}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.500863},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fcad4ef5a2f3","ts":"2026-09-21T15:43:22.038646+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.73 below VWAP $10.84","plan":{"state":"PASS","setup":"","stop":10.56,"target":10.86,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":89.1,"room_to_5d_high_atr":0.25},"price":10.7286,"vwap":10.8359,"ext_from_open_pct":-2.29,"max_ext_allowed_pct":3.0,"volume_pace":0.776,"trend":"flat","recent_slope_pct":-0.8626,"volatility":"medium"},"price":10.7286,"volume":{"bars":133,"last_bar_volume":76183.0,"baseline_avg":381363.4,"bar_rvol":0.199765,"raw_accel":-0.454655,"smooth_accel":-0.711095,"accel_momentum":-1.074682,"rvol_3bar":[0.195785,0.362554,0.199765],"trend_3bar":"MIXED","projected_rvol":1.115721},"flow":{"window_s":30,"trades":462,"trade_rate":15.4,"buy_vol":92740.0,"sell_vol":85887.0,"unclassified_vol":0.0,"imbalance":0.038365,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":0.260604},"context":{"vwap":10.83615,"price_vs_vwap_pct":-0.992511,"ema9":10.910347,"ema20":10.931742,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-3.515446,"dist_to_hod_atr":5.750925,"atr":0.067972,"spread_atr":0.14712,"own_change_pct":-3.291439,"rel_strength_pct":{"SPY":-3.31221,"IWM":-3.293188}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.007664},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2e21ec932fea","ts":"2026-09-21T15:43:27.156358+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.6532,"target":13.23,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":153.1,"room_to_5d_high_atr":-1.59},"price":13.045,"vwap":12.8199,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-0.6991,"volatility":"high"},"price":13.045,"volume":{"bars":133,"last_bar_volume":21967.0,"baseline_avg":15727.2,"bar_rvol":1.396752,"raw_accel":0.447292,"smooth_accel":0.603689,"accel_momentum":-0.055287,"rvol_3bar":[1.291873,0.942212,1.396752],"trend_3bar":"MIXED","projected_rvol":0.839535},"flow":{"window_s":30,"trades":163,"trade_rate":5.433333,"buy_vol":1846.0,"sell_vol":5705.0,"unclassified_vol":0.0,"imbalance":-0.511058,"bid":13.0,"ask":13.08,"spread_pct":0.613497,"quote_size_imbalance":null,"quote_age_s":1.225312},"context":{"vwap":12.819862,"price_vs_vwap_pct":1.756168,"ema9":12.879191,"ema20":12.911107,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.471014,"dist_to_hod_atr":4.983028,"atr":0.151514,"spread_atr":0.528003,"own_change_pct":-4.611628,"rel_strength_pct":{"SPY":-4.632399,"IWM":-4.613377}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.713822},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ba894957fbfb","ts":"2026-09-21T15:43:27.156358+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.8589,"target":11.0,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.9686,"vwap":10.9668,"ext_from_open_pct":2.51,"max_ext_allowed_pct":3.0,"volume_pace":0.778,"trend":"flat","recent_slope_pct":-0.3929,"volatility":"unknown"},"price":10.9686,"volume":{"bars":133,"last_bar_volume":45660.0,"baseline_avg":89012.9,"bar_rvol":0.512959,"raw_accel":0.565307,"smooth_accel":-0.445218,"accel_momentum":-1.438107,"rvol_3bar":[0.849729,0.286508,0.512959],"trend_3bar":"MIXED","projected_rvol":1.154445},"flow":{"window_s":30,"trades":243,"trade_rate":8.1,"buy_vol":22541.0,"sell_vol":24091.0,"unclassified_vol":0.0,"imbalance":-0.033239,"bid":11.19,"ask":11.2,"spread_pct":0.089326,"quote_size_imbalance":null,"quote_age_s":0.297265},"context":{"vwap":10.966605,"price_vs_vwap_pct":0.018191,"ema9":11.1467,"ema20":11.115314,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-4.537859,"dist_to_hod_atr":7.557679,"atr":0.068989,"spread_atr":0.14495,"own_change_pct":-0.012579,"rel_strength_pct":{"SPY":-0.03335,"IWM":-0.014327}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.01705},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2eb0e5d42026","ts":"2026-09-21T15:43:27.156358+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.7424,"target":11.03,"target_label":"ceiling","reward_risk":1.23,"pos_in_5d_range_pct":100.9,"room_to_5d_high_atr":-0.02},"price":10.8714,"vwap":10.8361,"ext_from_open_pct":-0.99,"max_ext_allowed_pct":3.0,"volume_pace":0.776,"trend":"flat","recent_slope_pct":-0.5984,"volatility":"medium"},"price":10.8714,"volume":{"bars":133,"last_bar_volume":76183.0,"baseline_avg":381363.4,"bar_rvol":0.199765,"raw_accel":-0.454655,"smooth_accel":-0.711095,"accel_momentum":-1.074682,"rvol_3bar":[0.195785,0.362554,0.199765],"trend_3bar":"MIXED","projected_rvol":0.95573},"flow":{"window_s":30,"trades":437,"trade_rate":14.566667,"buy_vol":91684.0,"sell_vol":81024.0,"unclassified_vol":0.0,"imbalance":0.061723,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":0.324756},"context":{"vwap":10.83615,"price_vs_vwap_pct":0.3253,"ema9":10.910347,"ema20":10.931742,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-2.231215,"dist_to_hod_atr":3.65005,"atr":0.067972,"spread_atr":0.14712,"own_change_pct":-3.291439,"rel_strength_pct":{"SPY":-3.31221,"IWM":-3.293188}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.01233},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cc515f605bf8","ts":"2026-09-21T15:43:32.200293+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.9731,"target":9.1284,"target_label":"clear air (typical 60-min move)","reward_risk":0.34,"pos_in_5d_range_pct":132.6,"room_to_5d_high_atr":-1.04},"price":9.0886,"vwap":9.0158,"ext_from_open_pct":0.76,"max_ext_allowed_pct":4.0,"volume_pace":1.179,"trend":"flat","recent_slope_pct":0.1963,"volatility":"medium"},"price":9.0886,"volume":{"bars":133,"last_bar_volume":11188.0,"baseline_avg":13394.25,"bar_rvol":0.835284,"raw_accel":1.640548,"smooth_accel":-0.069334,"accel_momentum":0.203622,"rvol_3bar":[1.783911,0.306564,0.835284],"trend_3bar":"MIXED","projected_rvol":3.277681},"flow":{"window_s":30,"trades":261,"trade_rate":8.7,"buy_vol":15369.0,"sell_vol":7728.0,"unclassified_vol":0.0,"imbalance":0.330822,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.027881},"context":{"vwap":9.015676,"price_vs_vwap_pct":0.808858,"ema9":9.014376,"ema20":9.020457,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.45236,"dist_to_hod_atr":1.103186,"atr":0.037437,"spread_atr":0.267115,"own_change_pct":0.222099,"rel_strength_pct":{"SPY":0.201327,"IWM":0.22035}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.27633},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"747f300b934b","ts":"2026-09-21T15:43:32.200293+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.3s, plan says PASS; stop 8.65, target 9.94 (range_20d_high), R:R 10.68; target 1.17 away > ~0.18 reachable in 251 min","plan":{"state":"PASS","setup":"","stop":8.655,"target":9.94,"target_label":"range_20d_high","reward_risk":10.68,"pos_in_5d_range_pct":132.3,"room_to_5d_high_atr":-1.02},"price":8.765,"vwap":8.6143,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":1.069,"trend":"flat","recent_slope_pct":-0.0015,"volatility":"medium"},"price":8.765,"volume":{"bars":133,"last_bar_volume":3127.0,"baseline_avg":9073.15,"bar_rvol":0.344643,"raw_accel":-0.024337,"smooth_accel":0.328207,"accel_momentum":0.988237,"rvol_3bar":[0.080977,0.359154,0.344643],"trend_3bar":"MIXED","projected_rvol":0.021564},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":15.0,"sell_vol":81.0,"unclassified_vol":0.0,"imbalance":-0.6875,"bid":8.76,"ask":8.77,"spread_pct":0.11409,"quote_size_imbalance":null,"quote_age_s":0.248819},"context":{"vwap":8.614296,"price_vs_vwap_pct":1.749469,"ema9":8.740869,"ema20":8.712879,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.048434,"dist_to_hod_atr":2.748373,"atr":0.066694,"spread_atr":0.149939,"own_change_pct":0.554109,"rel_strength_pct":{"SPY":0.533337,"IWM":0.55236}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.236942},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"743ac80ee7e8","ts":"2026-09-21T15:43:32.200293+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.64 below VWAP $8.66","plan":{"state":"PASS","setup":"","stop":8.5297,"target":8.82,"target_label":"prev_day_high","reward_risk":1.67,"pos_in_5d_range_pct":62.1,"room_to_5d_high_atr":0.63},"price":8.6386,"vwap":8.6614,"ext_from_open_pct":-0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.854,"trend":"flat","recent_slope_pct":-0.7309,"volatility":"medium"},"price":8.6386,"volume":{"bars":133,"last_bar_volume":20253.0,"baseline_avg":12229.05,"bar_rvol":1.656138,"raw_accel":0.817391,"smooth_accel":-0.097305,"accel_momentum":-0.372988,"rvol_3bar":[0.221471,0.875357,1.656138],"trend_3bar":"ACCELERATING","projected_rvol":0.448424},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":2475.0,"sell_vol":392.0,"unclassified_vol":0.0,"imbalance":0.726543,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.129003},"context":{"vwap":8.661446,"price_vs_vwap_pct":-0.263765,"ema9":8.774815,"ema20":8.802431,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-4.799374,"dist_to_hod_atr":5.434881,"atr":0.080131,"spread_atr":0.124796,"own_change_pct":-3.016378,"rel_strength_pct":{"SPY":-3.037149,"IWM":-3.018127}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.203257},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"127bd0d0efe2","ts":"2026-09-21T15:43:32.200293+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":11.0781,"target":11.275,"target_label":"range_20d_high","reward_risk":0.76,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.19,"vwap":10.967,"ext_from_open_pct":4.58,"max_ext_allowed_pct":3.0,"volume_pace":0.777,"trend":"flat","recent_slope_pct":0.0052,"volatility":"unknown"},"price":11.19,"volume":{"bars":133,"last_bar_volume":45660.0,"baseline_avg":89012.9,"bar_rvol":0.512959,"raw_accel":0.565307,"smooth_accel":-0.445218,"accel_momentum":-1.438107,"rvol_3bar":[0.849729,0.286508,0.512959],"trend_3bar":"MIXED","projected_rvol":0.983867},"flow":{"window_s":30,"trades":182,"trade_rate":6.066667,"buy_vol":17276.0,"sell_vol":22564.0,"unclassified_vol":0.0,"imbalance":-0.132731,"bid":11.19,"ask":11.2,"spread_pct":0.089326,"quote_size_imbalance":null,"quote_age_s":4.808184},"context":{"vwap":10.966605,"price_vs_vwap_pct":2.037048,"ema9":11.1467,"ema20":11.115314,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-2.610966,"dist_to_hod_atr":4.348492,"atr":0.068989,"spread_atr":0.14495,"own_change_pct":-0.012579,"rel_strength_pct":{"SPY":-0.03335,"IWM":-0.014327}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.068086},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"732749e04d99","ts":"2026-09-21T15:43:32.200293+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":10.871,"target":11.14,"target_label":"premarket_high","reward_risk":1.08,"pos_in_5d_range_pct":111.6,"room_to_5d_high_atr":-0.27},"price":11.0,"vwap":10.8363,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.775,"trend":"flat","recent_slope_pct":-0.3615,"volatility":"medium"},"price":11.0,"volume":{"bars":133,"last_bar_volume":76183.0,"baseline_avg":381363.4,"bar_rvol":0.199765,"raw_accel":-0.454655,"smooth_accel":-0.711095,"accel_momentum":-1.074682,"rvol_3bar":[0.195785,0.362554,0.199765],"trend_3bar":"MIXED","projected_rvol":0.812408},"flow":{"window_s":30,"trades":389,"trade_rate":12.966667,"buy_vol":87373.0,"sell_vol":73930.0,"unclassified_vol":0.0,"imbalance":0.08334,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":0.163221},"context":{"vwap":10.83615,"price_vs_vwap_pct":1.512068,"ema9":10.910347,"ema20":10.931742,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.074689,"dist_to_hod_atr":1.758085,"atr":0.067972,"spread_atr":0.14712,"own_change_pct":-3.291439,"rel_strength_pct":{"SPY":-3.31221,"IWM":-3.293188}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.016648},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6662360456b6","ts":"2026-09-21T15:43:37.268316+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.39 below VWAP $12.82","plan":{"state":"PASS","setup":"","stop":12.0024,"target":13.23,"target_label":"ceiling","reward_risk":2.13,"pos_in_5d_range_pct":139.3,"room_to_5d_high_atr":-1.17},"price":12.3942,"vwap":12.8194,"ext_from_open_pct":-4.73,"max_ext_allowed_pct":3.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-1.722,"volatility":"high"},"price":12.3942,"volume":{"bars":133,"last_bar_volume":21967.0,"baseline_avg":15727.2,"bar_rvol":1.396752,"raw_accel":0.447292,"smooth_accel":0.603689,"accel_momentum":-0.055287,"rvol_3bar":[1.291873,0.942212,1.396752],"trend_3bar":"MIXED","projected_rvol":1.001149},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":564.0,"sell_vol":7060.0,"unclassified_vol":0.0,"imbalance":-0.852046,"bid":13.01,"ask":13.06,"spread_pct":0.383583,"quote_size_imbalance":null,"quote_age_s":0.965796},"context":{"vwap":12.819862,"price_vs_vwap_pct":-3.32033,"ema9":12.879191,"ema20":12.911107,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-10.186957,"dist_to_hod_atr":9.278333,"atr":0.151514,"spread_atr":0.330002,"own_change_pct":-4.611628,"rel_strength_pct":{"SPY":-4.632399,"IWM":-4.613377}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.190097},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5576e6a999b6","ts":"2026-09-21T15:43:37.268316+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.9731,"target":9.1184,"target_label":"clear air (typical 60-min move)","reward_risk":0.38,"pos_in_5d_range_pct":131.7,"room_to_5d_high_atr":-1.01},"price":9.0786,"vwap":9.0159,"ext_from_open_pct":0.65,"max_ext_allowed_pct":3.0,"volume_pace":1.199,"trend":"flat","recent_slope_pct":0.1742,"volatility":"medium"},"price":9.0786,"volume":{"bars":133,"last_bar_volume":11188.0,"baseline_avg":13394.25,"bar_rvol":0.835284,"raw_accel":1.640548,"smooth_accel":-0.069334,"accel_momentum":0.203622,"rvol_3bar":[1.783911,0.306564,0.835284],"trend_3bar":"MIXED","projected_rvol":10.922288},"flow":{"window_s":30,"trades":299,"trade_rate":9.966667,"buy_vol":33578.0,"sell_vol":43808.0,"unclassified_vol":0.0,"imbalance":-0.132194,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.090244},"context":{"vwap":9.015676,"price_vs_vwap_pct":0.69794,"ema9":9.014376,"ema20":9.020457,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.56189,"dist_to_hod_atr":1.370301,"atr":0.037437,"spread_atr":0.267115,"own_change_pct":0.222099,"rel_strength_pct":{"SPY":0.201327,"IWM":0.22035}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.11042},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fd63d89e6738","ts":"2026-09-21T15:43:37.268316+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7144,"target":8.88,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":87.4,"room_to_5d_high_atr":0.21},"price":8.8233,"vwap":8.6615,"ext_from_open_pct":1.18,"max_ext_allowed_pct":3.0,"volume_pace":0.854,"trend":"flat","recent_slope_pct":-0.3068,"volatility":"medium"},"price":8.8233,"volume":{"bars":133,"last_bar_volume":20253.0,"baseline_avg":12229.05,"bar_rvol":1.656138,"raw_accel":0.817391,"smooth_accel":-0.097305,"accel_momentum":-0.372988,"rvol_3bar":[0.221471,0.875357,1.656138],"trend_3bar":"ACCELERATING","projected_rvol":0.552927},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":2424.0,"sell_vol":1502.0,"unclassified_vol":0.0,"imbalance":0.234845,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.891888},"context":{"vwap":8.661446,"price_vs_vwap_pct":1.868673,"ema9":8.774815,"ema20":8.802431,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.76391,"dist_to_hod_atr":3.129892,"atr":0.080131,"spread_atr":0.124796,"own_change_pct":-3.016378,"rel_strength_pct":{"SPY":-3.037149,"IWM":-3.018127}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.388935},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e167f1356939","ts":"2026-09-21T15:43:42.333754+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":8.9385,"target":9.1299,"target_label":"ceiling","reward_risk":1.21,"pos_in_5d_range_pct":126.8,"room_to_5d_high_atr":-0.85},"price":9.025,"vwap":9.0155,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.198,"trend":"flat","recent_slope_pct":0.0555,"volatility":"medium"},"price":9.025,"volume":{"bars":133,"last_bar_volume":11188.0,"baseline_avg":13394.25,"bar_rvol":0.835284,"raw_accel":1.640548,"smooth_accel":-0.069334,"accel_momentum":0.203622,"rvol_3bar":[1.783911,0.306564,0.835284],"trend_3bar":"MIXED","projected_rvol":9.789025},"flow":{"window_s":30,"trades":305,"trade_rate":10.166667,"buy_vol":34849.0,"sell_vol":43823.0,"unclassified_vol":0.0,"imbalance":-0.114069,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.365772},"context":{"vwap":9.015676,"price_vs_vwap_pct":0.10342,"ema9":9.014376,"ema20":9.020457,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.148972,"dist_to_hod_atr":2.802039,"atr":0.037437,"spread_atr":0.267115,"own_change_pct":0.222099,"rel_strength_pct":{"SPY":0.201327,"IWM":0.22035}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.09528},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"270cd8609565","ts":"2026-09-21T15:43:42.333754+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.7124,"target":10.86,"target_label":"prev_day_high","reward_risk":0.14,"pos_in_5d_range_pct":98.5,"room_to_5d_high_atr":0.04},"price":10.8414,"vwap":10.8361,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":3.0,"volume_pace":0.774,"trend":"flat","recent_slope_pct":-0.6538,"volatility":"medium"},"price":10.8414,"volume":{"bars":133,"last_bar_volume":76183.0,"baseline_avg":381363.4,"bar_rvol":0.199765,"raw_accel":-0.454655,"smooth_accel":-0.711095,"accel_momentum":-1.074682,"rvol_3bar":[0.195785,0.362554,0.199765],"trend_3bar":"MIXED","projected_rvol":0.637527},"flow":{"window_s":30,"trades":260,"trade_rate":8.666667,"buy_vol":71662.0,"sell_vol":27385.0,"unclassified_vol":0.0,"imbalance":0.44703,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":0.931977},"context":{"vwap":10.83615,"price_vs_vwap_pct":0.048449,"ema9":10.910347,"ema20":10.931742,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-2.501012,"dist_to_hod_atr":4.09141,"atr":0.067972,"spread_atr":0.14712,"own_change_pct":-3.291439,"rel_strength_pct":{"SPY":-3.31221,"IWM":-3.293188}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.089301},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"69bbe0130aef","ts":"2026-09-21T15:43:47.391953+00:00","symbol":"KRRO","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.93,"target":10.85,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.2158,"vwap":10.1219,"ext_from_open_pct":0.95,"max_ext_allowed_pct":4.0,"volume_pace":0.463,"trend":"flat","recent_slope_pct":0.4777,"volatility":"unknown"},"price":10.2158,"volume":{"bars":128,"last_bar_volume":967.0,"baseline_avg":1533.4,"bar_rvol":0.630625,"raw_accel":1.522499,"smooth_accel":-0.23182,"accel_momentum":-1.224635,"rvol_3bar":[0.661762,0.201576,0.630625],"trend_3bar":"MIXED","projected_rvol":0.061923},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":8.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":10.0,"ask":10.07,"spread_pct":0.697559,"quote_size_imbalance":null,"quote_age_s":68.413164},"context":{"vwap":10.121891,"price_vs_vwap_pct":0.92778,"ema9":9.988519,"ema20":9.988346,"ema_stack":true,"ema_warm":true,"hod":10.77,"dist_to_hod_pct":-5.145775,"dist_to_hod_atr":5.771378,"atr":0.096026,"spread_atr":0.728972,"own_change_pct":0.891348,"rel_strength_pct":{"SPY":0.870577,"IWM":0.889599}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.630625},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5b7296f73eef","ts":"2026-09-21T15:43:47.391953+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.9731,"target":9.1284,"target_label":"clear air (typical 60-min move)","reward_risk":0.34,"pos_in_5d_range_pct":132.6,"room_to_5d_high_atr":-1.04},"price":9.0886,"vwap":9.016,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.198,"trend":"flat","recent_slope_pct":0.1963,"volatility":"medium"},"price":9.0886,"volume":{"bars":133,"last_bar_volume":11188.0,"baseline_avg":13394.25,"bar_rvol":0.835284,"raw_accel":1.640548,"smooth_accel":-0.069334,"accel_momentum":0.203622,"rvol_3bar":[1.783911,0.306564,0.835284],"trend_3bar":"MIXED","projected_rvol":8.810868},"flow":{"window_s":30,"trades":285,"trade_rate":9.5,"buy_vol":33713.0,"sell_vol":42066.0,"unclassified_vol":0.0,"imbalance":-0.110228,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.010187},"context":{"vwap":9.015676,"price_vs_vwap_pct":0.808858,"ema9":9.014376,"ema20":9.020457,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.45236,"dist_to_hod_atr":1.103186,"atr":0.037437,"spread_atr":0.267115,"own_change_pct":0.222099,"rel_strength_pct":{"SPY":0.201327,"IWM":0.22035}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.092072},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3b6034293a13","ts":"2026-09-21T15:43:47.391953+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.63 below VWAP $8.66","plan":{"state":"PASS","setup":"","stop":8.5197,"target":8.82,"target_label":"prev_day_high","reward_risk":1.76,"pos_in_5d_range_pct":60.8,"room_to_5d_high_atr":0.66},"price":8.6286,"vwap":8.6614,"ext_from_open_pct":-1.05,"max_ext_allowed_pct":3.0,"volume_pace":0.853,"trend":"flat","recent_slope_pct":-0.754,"volatility":"medium"},"price":8.6286,"volume":{"bars":133,"last_bar_volume":20253.0,"baseline_avg":12229.05,"bar_rvol":1.656138,"raw_accel":0.817391,"smooth_accel":-0.097305,"accel_momentum":-0.372988,"rvol_3bar":[0.221471,0.875357,1.656138],"trend_3bar":"ACCELERATING","projected_rvol":0.522605},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":642.0,"sell_vol":2308.0,"unclassified_vol":0.0,"imbalance":-0.564746,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":2.641385},"context":{"vwap":8.661446,"price_vs_vwap_pct":-0.379219,"ema9":8.774815,"ema20":8.802431,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-4.909578,"dist_to_hod_atr":5.559677,"atr":0.080131,"spread_atr":0.124796,"own_change_pct":-3.016378,"rel_strength_pct":{"SPY":-3.037149,"IWM":-3.018127}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.935297},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ab44dbf39d4e","ts":"2026-09-21T15:43:52.433532+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.6382,"target":13.23,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":152.8,"room_to_5d_high_atr":-1.58},"price":13.03,"vwap":12.82,"ext_from_open_pct":0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.779,"trend":"flat","recent_slope_pct":-0.7224,"volatility":"high"},"price":13.03,"volume":{"bars":133,"last_bar_volume":21967.0,"baseline_avg":15727.2,"bar_rvol":1.396752,"raw_accel":0.447292,"smooth_accel":0.603689,"accel_momentum":-0.055287,"rvol_3bar":[1.291873,0.942212,1.396752],"trend_3bar":"MIXED","projected_rvol":0.759174},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":577.0,"sell_vol":6390.0,"unclassified_vol":0.0,"imbalance":-0.834362,"bid":13.01,"ask":13.05,"spread_pct":0.306984,"quote_size_imbalance":null,"quote_age_s":1.868147},"context":{"vwap":12.819862,"price_vs_vwap_pct":1.639162,"ema9":12.879191,"ema20":12.911107,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.57971,"dist_to_hod_atr":5.082029,"atr":0.151514,"spread_atr":0.264002,"own_change_pct":-4.611628,"rel_strength_pct":{"SPY":-4.632399,"IWM":-4.613377}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.165397},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f5f7f1d856b2","ts":"2026-09-21T15:43:52.433532+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":8.9721,"target":9.1299,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":129.9,"room_to_5d_high_atr":-0.95},"price":9.0586,"vwap":9.0158,"ext_from_open_pct":0.43,"max_ext_allowed_pct":3.0,"volume_pace":1.197,"trend":"flat","recent_slope_pct":0.1299,"volatility":"medium"},"price":9.0586,"volume":{"bars":133,"last_bar_volume":11188.0,"baseline_avg":13394.25,"bar_rvol":0.835284,"raw_accel":1.640548,"smooth_accel":-0.069334,"accel_momentum":0.203622,"rvol_3bar":[1.783911,0.306564,0.835284],"trend_3bar":"MIXED","projected_rvol":7.975221},"flow":{"window_s":30,"trades":279,"trade_rate":9.3,"buy_vol":32503.0,"sell_vol":42107.0,"unclassified_vol":0.0,"imbalance":-0.128723,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.889299},"context":{"vwap":9.015676,"price_vs_vwap_pct":0.476104,"ema9":9.014376,"ema20":9.020457,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.780951,"dist_to_hod_atr":1.904532,"atr":0.037437,"spread_atr":0.267115,"own_change_pct":0.222099,"rel_strength_pct":{"SPY":0.201327,"IWM":0.22035}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.10752},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4c2e1efc7078","ts":"2026-09-21T15:43:52.433532+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7035,"target":8.88,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":85.9,"room_to_5d_high_atr":0.24},"price":8.8124,"vwap":8.6615,"ext_from_open_pct":1.06,"max_ext_allowed_pct":3.0,"volume_pace":0.853,"trend":"flat","recent_slope_pct":-0.3317,"volatility":"medium"},"price":8.8124,"volume":{"bars":133,"last_bar_volume":20253.0,"baseline_avg":12229.05,"bar_rvol":1.656138,"raw_accel":0.817391,"smooth_accel":-0.097305,"accel_momentum":-0.372988,"rvol_3bar":[0.221471,0.875357,1.656138],"trend_3bar":"ACCELERATING","projected_rvol":0.489198},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":662.0,"sell_vol":2201.0,"unclassified_vol":0.0,"imbalance":-0.537548,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":2.082298},"context":{"vwap":8.661446,"price_vs_vwap_pct":1.742828,"ema9":8.774815,"ema20":8.802431,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.884033,"dist_to_hod_atr":3.26592,"atr":0.080131,"spread_atr":0.124796,"own_change_pct":-3.016378,"rel_strength_pct":{"SPY":-3.037149,"IWM":-3.018127}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.890254},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2b5c434cf259","ts":"2026-09-21T15:43:52.433532+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":10.8824,"target":11.14,"target_label":"premarket_high","reward_risk":1.0,"pos_in_5d_range_pct":112.5,"room_to_5d_high_atr":-0.29},"price":11.0114,"vwap":10.8363,"ext_from_open_pct":0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.774,"trend":"flat","recent_slope_pct":-0.3406,"volatility":"medium"},"price":11.0114,"volume":{"bars":133,"last_bar_volume":76183.0,"baseline_avg":381363.4,"bar_rvol":0.199765,"raw_accel":-0.454655,"smooth_accel":-0.711095,"accel_momentum":-1.074682,"rvol_3bar":[0.195785,0.362554,0.199765],"trend_3bar":"MIXED","projected_rvol":0.535646},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":9834.0,"sell_vol":10179.0,"unclassified_vol":0.0,"imbalance":-0.017239,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":2.503782},"context":{"vwap":10.83615,"price_vs_vwap_pct":1.617272,"ema9":10.910347,"ema20":10.931742,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-0.972166,"dist_to_hod_atr":1.590368,"atr":0.067972,"spread_atr":0.14712,"own_change_pct":-3.291439,"rel_strength_pct":{"SPY":-3.31221,"IWM":-3.293188}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.003444},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"34ed32e6e6ef","ts":"2026-09-21T15:43:57.549700+00:00","symbol":"KRRO","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.05 below VWAP $10.12","plan":{"state":"PASS","setup":"","stop":9.91,"target":10.85,"target_label":"premarket_high","reward_risk":5.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":10.05,"vwap":10.1219,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":4.0,"volume_pace":0.462,"trend":"flat","recent_slope_pct":0.1483,"volatility":"unknown"},"price":10.05,"volume":{"bars":128,"last_bar_volume":967.0,"baseline_avg":1533.4,"bar_rvol":0.630625,"raw_accel":1.522499,"smooth_accel":-0.23182,"accel_momentum":-1.224635,"rvol_3bar":[0.661762,0.201576,0.630625],"trend_3bar":"MIXED","projected_rvol":0.051673},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":7.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.75,"bid":10.0,"ask":10.07,"spread_pct":0.697559,"quote_size_imbalance":null,"quote_age_s":78.570911},"context":{"vwap":10.121891,"price_vs_vwap_pct":-0.710253,"ema9":9.988519,"ema20":9.988346,"ema_stack":true,"ema_warm":true,"hod":10.77,"dist_to_hod_pct":-6.685237,"dist_to_hod_atr":7.498001,"atr":0.096026,"spread_atr":0.728972,"own_change_pct":0.891348,"rel_strength_pct":{"SPY":0.870577,"IWM":0.889599}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.472969},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b261edf9eff4","ts":"2026-09-21T15:43:57.549700+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.8224,"target":11.03,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":107.6,"room_to_5d_high_atr":-0.18},"price":10.9514,"vwap":10.8362,"ext_from_open_pct":-0.26,"max_ext_allowed_pct":3.0,"volume_pace":0.773,"trend":"flat","recent_slope_pct":-0.4509,"volatility":"medium"},"price":10.9514,"volume":{"bars":133,"last_bar_volume":76183.0,"baseline_avg":381363.4,"bar_rvol":0.199765,"raw_accel":-0.454655,"smooth_accel":-0.711095,"accel_momentum":-1.074682,"rvol_3bar":[0.195785,0.362554,0.199765],"trend_3bar":"MIXED","projected_rvol":0.494684},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":4788.0,"sell_vol":10575.0,"unclassified_vol":0.0,"imbalance":-0.376684,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":2.382409},"context":{"vwap":10.83615,"price_vs_vwap_pct":1.06357,"ema9":10.910347,"ema20":10.931742,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.511759,"dist_to_hod_atr":2.473089,"atr":0.067972,"spread_atr":0.14712,"own_change_pct":-3.291439,"rel_strength_pct":{"SPY":-3.31221,"IWM":-3.293188}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.075248},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8399aee4a09b","ts":"2026-09-21T15:43:57.549700+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.10 below VWAP $5.17","plan":{"state":"PASS","setup":"","stop":5.0476,"target":5.2,"target_label":"premarket_high","reward_risk":1.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.0986,"vwap":5.1697,"ext_from_open_pct":-1.95,"max_ext_allowed_pct":3.0,"volume_pace":0.912,"trend":"flat","recent_slope_pct":-0.4231,"volatility":"unknown"},"price":5.0986,"volume":{"bars":133,"last_bar_volume":53379.0,"baseline_avg":30259.6,"bar_rvol":1.764035,"raw_accel":-0.092564,"smooth_accel":1.507346,"accel_momentum":0.930214,"rvol_3bar":[0.967223,2.128809,1.764035],"trend_3bar":"MIXED","projected_rvol":1.232745},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":7100.0,"sell_vol":20715.0,"unclassified_vol":0.0,"imbalance":-0.489484,"bid":5.19,"ask":5.2,"spread_pct":0.192493,"quote_size_imbalance":null,"quote_age_s":5.610873},"context":{"vwap":5.170069,"price_vs_vwap_pct":-1.382366,"ema9":5.200624,"ema20":5.189727,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-3.8,"dist_to_hod_atr":6.409571,"atr":0.031422,"spread_atr":0.318251,"own_change_pct":-0.001922,"rel_strength_pct":{"SPY":-0.022693,"IWM":-0.00367}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.863467},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c7500586157e","ts":"2026-09-21T15:44:02.644443+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":12.6449,"target":13.65,"target_label":"premarket_high","reward_risk":1.57,"pos_in_5d_range_pct":153.0,"room_to_5d_high_atr":-1.58},"price":13.0367,"vwap":12.82,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.779,"trend":"flat","recent_slope_pct":-0.2449,"volatility":"high"},"price":13.0367,"volume":{"bars":134,"last_bar_volume":11485.0,"baseline_avg":15845.55,"bar_rvol":0.724809,"raw_accel":-0.47717,"smooth_accel":0.158906,"accel_momentum":-0.444783,"rvol_3bar":[0.942212,1.396752,0.724809],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":1147.0,"sell_vol":722.0,"unclassified_vol":0.0,"imbalance":0.227394,"bid":13.02,"ask":13.04,"spread_pct":0.153492,"quote_size_imbalance":null,"quote_age_s":4.486573},"context":{"vwap":12.819987,"price_vs_vwap_pct":1.690433,"ema9":12.911333,"ema20":12.923373,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.531159,"dist_to_hod_atr":3.551193,"atr":0.214942,"spread_atr":0.093048,"own_change_pct":0.301522,"rel_strength_pct":{"SPY":0.277508,"IWM":0.294526}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.164817},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d241017bcf3c","ts":"2026-09-21T15:44:07.751901+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 60.9s, plan says WATCH; stop 8.54, target 8.76 (premarket_high), R:R 1.19; no pullback yet (still at the swing high); R:R 1.19 < 2.0 at 8.64; pullback: buy 8.63-8.67 holding + reclaim/fading sell","plan":{"state":"WATCH","setup":"","stop":8.5367,"target":8.76,"target_label":"premarket_high","reward_risk":1.19,"pos_in_5d_range_pct":122.5,"room_to_5d_high_atr":-0.71},"price":8.6386,"vwap":8.6147,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":1.069,"trend":"flat","recent_slope_pct":-0.28,"volatility":"medium"},"price":8.6386,"volume":{"bars":134,"last_bar_volume":3077.0,"baseline_avg":9218.7,"bar_rvol":0.333778,"raw_accel":-0.01599,"smooth_accel":1.178009,"accel_momentum":0.849802,"rvol_3bar":[0.359154,0.344643,0.333778],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":137.0,"sell_vol":478.0,"unclassified_vol":0.0,"imbalance":-0.554472,"bid":8.75,"ask":8.77,"spread_pct":0.228311,"quote_size_imbalance":null,"quote_age_s":2.485768},"context":{"vwap":8.614644,"price_vs_vwap_pct":0.27808,"ema9":8.744695,"ema20":8.717367,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-3.460993,"dist_to_hod_atr":4.053202,"atr":0.076409,"spread_atr":0.26175,"own_change_pct":-0.084404,"rel_strength_pct":{"SPY":-0.108418,"IWM":-0.0914}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.18507},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"98571d0d2a8b","ts":"2026-09-21T15:44:07.751901+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.8061,"target":12.5,"target_label":"range_20d_high","reward_risk":25.31,"pos_in_5d_range_pct":137.4,"room_to_5d_high_atr":-0.49},"price":8.9465,"vwap":8.9163,"ext_from_open_pct":2.48,"max_ext_allowed_pct":3.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":-0.3741,"volatility":"high"},"price":8.9465,"volume":{"bars":134,"last_bar_volume":2921.0,"baseline_avg":4779.15,"bar_rvol":0.611197,"raw_accel":-0.416034,"smooth_accel":-0.246629,"accel_momentum":-0.040816,"rvol_3bar":[0.665924,1.033364,0.611197],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1718.0,"sell_vol":1518.0,"unclassified_vol":0.0,"imbalance":0.061805,"bid":9.13,"ask":9.15,"spread_pct":0.218818,"quote_size_imbalance":null,"quote_age_s":3.220949},"context":{"vwap":8.91624,"price_vs_vwap_pct":0.339386,"ema9":9.119091,"ema20":9.097617,"ema_stack":false,"ema_warm":true,"hod":9.15,"dist_to_hod_pct":-2.224044,"dist_to_hod_atr":3.214727,"atr":0.063302,"spread_atr":0.315944,"own_change_pct":0.184413,"rel_strength_pct":{"SPY":0.160398,"IWM":0.177417}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.037775},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f5e1c5c8524f","ts":"2026-09-21T15:44:12.812964+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.9s, plan says PASS; stop 8.65, target 9.94 (range_20d_high), R:R 11.24; target 1.18 away > ~0.18 reachable in 251 min","plan":{"state":"PASS","setup":"","stop":8.655,"target":9.94,"target_label":"range_20d_high","reward_risk":11.24,"pos_in_5d_range_pct":132.0,"room_to_5d_high_atr":-1.01},"price":8.76,"vwap":8.6147,"ext_from_open_pct":1.62,"max_ext_allowed_pct":3.0,"volume_pace":1.069,"trend":"flat","recent_slope_pct":-0.0021,"volatility":"medium"},"price":8.76,"volume":{"bars":134,"last_bar_volume":3077.0,"baseline_avg":9218.7,"bar_rvol":0.333778,"raw_accel":-0.01599,"smooth_accel":1.178009,"accel_momentum":0.849802,"rvol_3bar":[0.359154,0.344643,0.333778],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":138.0,"sell_vol":352.0,"unclassified_vol":0.0,"imbalance":-0.436735,"bid":8.75,"ask":8.77,"spread_pct":0.228311,"quote_size_imbalance":null,"quote_age_s":3.088297},"context":{"vwap":8.614644,"price_vs_vwap_pct":1.687309,"ema9":8.744695,"ema20":8.717367,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.10431,"dist_to_hod_atr":2.464378,"atr":0.076409,"spread_atr":0.26175,"own_change_pct":-0.084404,"rel_strength_pct":{"SPY":-0.108418,"IWM":-0.0914}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.145772},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"8b34f8caba7c","ts":"2026-09-21T15:44:12.812964+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":9.002,"target":12.5,"target_label":"range_20d_high","reward_risk":23.92,"pos_in_5d_range_pct":163.8,"room_to_5d_high_atr":-0.84},"price":9.1424,"vwap":8.9164,"ext_from_open_pct":4.72,"max_ext_allowed_pct":3.0,"volume_pace":0.925,"trend":"flat","recent_slope_pct":0.0565,"volatility":"high"},"price":9.1424,"volume":{"bars":134,"last_bar_volume":2921.0,"baseline_avg":4779.15,"bar_rvol":0.611197,"raw_accel":-0.416034,"smooth_accel":-0.246629,"accel_momentum":-0.040816,"rvol_3bar":[0.665924,1.033364,0.611197],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1321.0,"sell_vol":1475.0,"unclassified_vol":0.0,"imbalance":-0.055079,"bid":9.13,"ask":9.15,"spread_pct":0.218818,"quote_size_imbalance":null,"quote_age_s":8.282012},"context":{"vwap":8.91624,"price_vs_vwap_pct":2.536501,"ema9":9.119091,"ema20":9.097617,"ema_stack":true,"ema_warm":true,"hod":9.15,"dist_to_hod_pct":-0.08306,"dist_to_hod_atr":0.120059,"atr":0.063302,"spread_atr":0.315944,"own_change_pct":0.184413,"rel_strength_pct":{"SPY":0.160398,"IWM":0.177417}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.033664},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9c26c60ead1d","ts":"2026-09-21T15:44:22.956160+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":10.866,"target":11.14,"target_label":"premarket_high","reward_risk":1.12,"pos_in_5d_range_pct":111.2,"room_to_5d_high_atr":-0.26},"price":10.995,"vwap":10.8364,"ext_from_open_pct":0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0222,"volatility":"medium"},"price":10.995,"volume":{"bars":134,"last_bar_volume":180993.0,"baseline_avg":367134.15,"bar_rvol":0.492989,"raw_accel":0.971955,"smooth_accel":-0.549837,"accel_momentum":0.161259,"rvol_3bar":[0.362554,0.199765,0.492989],"trend_3bar":"MIXED","projected_rvol":0.386946},"flow":{"window_s":30,"trades":199,"trade_rate":6.633333,"buy_vol":20274.0,"sell_vol":36557.0,"unclassified_vol":0.0,"imbalance":-0.286516,"bid":10.99,"ask":11.0,"spread_pct":0.09095,"quote_size_imbalance":null,"quote_age_s":0.826501},"context":{"vwap":10.836279,"price_vs_vwap_pct":1.464716,"ema9":10.928937,"ema20":10.938557,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.119655,"dist_to_hod_atr":1.316831,"atr":0.094545,"spread_atr":0.10577,"own_change_pct":0.257859,"rel_strength_pct":{"SPY":0.233844,"IWM":0.250863}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.141249},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fa66434a5b3b","ts":"2026-09-21T15:44:28.010243+00:00","symbol":"ALOY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.8368,"target":12.5,"target_label":"range_20d_high","reward_risk":25.09,"pos_in_5d_range_pct":141.5,"room_to_5d_high_atr":-0.55},"price":8.9772,"vwap":8.9164,"ext_from_open_pct":2.83,"max_ext_allowed_pct":4.0,"volume_pace":0.924,"trend":"flat","recent_slope_pct":-0.3064,"volatility":"high"},"price":8.9772,"volume":{"bars":134,"last_bar_volume":2921.0,"baseline_avg":4779.15,"bar_rvol":0.611197,"raw_accel":-0.416034,"smooth_accel":-0.246629,"accel_momentum":-0.040816,"rvol_3bar":[0.665924,1.033364,0.611197],"trend_3bar":"MIXED","projected_rvol":0.993687},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":938.0,"sell_vol":1379.0,"unclassified_vol":0.0,"imbalance":-0.190332,"bid":9.13,"ask":9.15,"spread_pct":0.218818,"quote_size_imbalance":null,"quote_age_s":23.479291},"context":{"vwap":8.91624,"price_vs_vwap_pct":0.683702,"ema9":9.119091,"ema20":9.097617,"ema_stack":false,"ema_warm":true,"hod":9.15,"dist_to_hod_pct":-1.888525,"dist_to_hod_atr":2.729754,"atr":0.063302,"spread_atr":0.315944,"own_change_pct":0.184413,"rel_strength_pct":{"SPY":0.160398,"IWM":0.177417}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.11633},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d1139367c98f","ts":"2026-09-21T15:44:33.070479+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.8024,"target":11.03,"target_label":"ceiling","reward_risk":0.76,"pos_in_5d_range_pct":105.9,"room_to_5d_high_atr":-0.14},"price":10.9314,"vwap":10.8366,"ext_from_open_pct":-0.44,"max_ext_allowed_pct":4.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.1387,"volatility":"medium"},"price":10.9314,"volume":{"bars":134,"last_bar_volume":180993.0,"baseline_avg":367134.15,"bar_rvol":0.492989,"raw_accel":0.971955,"smooth_accel":-0.549837,"accel_momentum":0.161259,"rvol_3bar":[0.362554,0.199765,0.492989],"trend_3bar":"MIXED","projected_rvol":0.708581},"flow":{"window_s":30,"trades":297,"trade_rate":9.9,"buy_vol":100010.0,"sell_vol":42893.0,"unclassified_vol":0.0,"imbalance":0.399691,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":2.982275},"context":{"vwap":10.836279,"price_vs_vwap_pct":0.877799,"ema9":10.928937,"ema20":10.938557,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.691623,"dist_to_hod_atr":1.989526,"atr":0.094545,"spread_atr":0.10577,"own_change_pct":0.257859,"rel_strength_pct":{"SPY":0.233844,"IWM":0.250863}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.197043},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d83431f2341e","ts":"2026-09-21T15:44:38.188164+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":10.876,"target":11.14,"target_label":"premarket_high","reward_risk":1.05,"pos_in_5d_range_pct":112.0,"room_to_5d_high_atr":-0.28},"price":11.005,"vwap":10.8366,"ext_from_open_pct":0.23,"max_ext_allowed_pct":4.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0038,"volatility":"medium"},"price":11.005,"volume":{"bars":134,"last_bar_volume":180993.0,"baseline_avg":367134.15,"bar_rvol":0.492989,"raw_accel":0.971955,"smooth_accel":-0.549837,"accel_momentum":0.161259,"rvol_3bar":[0.362554,0.199765,0.492989],"trend_3bar":"MIXED","projected_rvol":0.615459},"flow":{"window_s":30,"trades":246,"trade_rate":8.2,"buy_vol":95898.0,"sell_vol":15316.0,"unclassified_vol":0.0,"imbalance":0.724567,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":0.110943},"context":{"vwap":10.836279,"price_vs_vwap_pct":1.556999,"ema9":10.928937,"ema20":10.938557,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.029723,"dist_to_hod_atr":1.211062,"atr":0.094545,"spread_atr":0.10577,"own_change_pct":0.257859,"rel_strength_pct":{"SPY":0.233844,"IWM":0.250863}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.357203},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9d527d558437","ts":"2026-09-21T15:44:43.303905+00:00","symbol":"ALOY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $8.73 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":9.0004,"target":12.5,"target_label":"range_20d_high","reward_risk":23.93,"pos_in_5d_range_pct":163.6,"room_to_5d_high_atr":-0.84},"price":9.1408,"vwap":8.9165,"ext_from_open_pct":4.71,"max_ext_allowed_pct":3.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":0.053,"volatility":"high"},"price":9.1408,"volume":{"bars":134,"last_bar_volume":2921.0,"baseline_avg":4779.15,"bar_rvol":0.611197,"raw_accel":-0.416034,"smooth_accel":-0.246629,"accel_momentum":-0.040816,"rvol_3bar":[0.665924,1.033364,0.611197],"trend_3bar":"MIXED","projected_rvol":0.646225},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":824.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":0.77395,"bid":9.13,"ask":9.15,"spread_pct":0.218818,"quote_size_imbalance":null,"quote_age_s":3.707139},"context":{"vwap":8.91624,"price_vs_vwap_pct":2.518556,"ema9":9.119091,"ema20":9.097617,"ema_stack":true,"ema_warm":true,"hod":9.15,"dist_to_hod_pct":-0.100546,"dist_to_hod_atr":0.145334,"atr":0.063302,"spread_atr":0.315944,"own_change_pct":0.184413,"rel_strength_pct":{"SPY":0.160398,"IWM":0.177417}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.473036},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8d0d8ce2da1c","ts":"2026-09-21T15:44:48.395960+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.7924,"target":11.03,"target_label":"ceiling","reward_risk":0.84,"pos_in_5d_range_pct":105.1,"room_to_5d_high_atr":-0.12},"price":10.9214,"vwap":10.8366,"ext_from_open_pct":-0.53,"max_ext_allowed_pct":4.0,"volume_pace":0.771,"trend":"flat","recent_slope_pct":-0.1571,"volatility":"medium"},"price":10.9214,"volume":{"bars":134,"last_bar_volume":180993.0,"baseline_avg":367134.15,"bar_rvol":0.492989,"raw_accel":0.971955,"smooth_accel":-0.549837,"accel_momentum":0.161259,"rvol_3bar":[0.362554,0.199765,0.492989],"trend_3bar":"MIXED","projected_rvol":0.526069},"flow":{"window_s":30,"trades":244,"trade_rate":8.133333,"buy_vol":98035.0,"sell_vol":14333.0,"unclassified_vol":0.0,"imbalance":0.744892,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":3.471654},"context":{"vwap":10.836279,"price_vs_vwap_pct":0.785516,"ema9":10.928937,"ema20":10.938557,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.781555,"dist_to_hod_atr":2.095296,"atr":0.094545,"spread_atr":0.10577,"own_change_pct":0.257859,"rel_strength_pct":{"SPY":0.233844,"IWM":0.250863}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.367223},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e4c0c4f6fc69","ts":"2026-09-21T15:44:53.482721+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":10.8809,"target":11.14,"target_label":"premarket_high","reward_risk":1.01,"pos_in_5d_range_pct":112.4,"room_to_5d_high_atr":-0.29},"price":11.0099,"vwap":10.8367,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.771,"trend":"flat","recent_slope_pct":0.0051,"volatility":"medium"},"price":11.0099,"volume":{"bars":134,"last_bar_volume":180993.0,"baseline_avg":367134.15,"bar_rvol":0.492989,"raw_accel":0.971955,"smooth_accel":-0.549837,"accel_momentum":0.161259,"rvol_3bar":[0.362554,0.199765,0.492989],"trend_3bar":"MIXED","projected_rvol":0.481067},"flow":{"window_s":30,"trades":214,"trade_rate":7.133333,"buy_vol":90281.0,"sell_vol":11908.0,"unclassified_vol":0.0,"imbalance":0.766942,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":8.558415},"context":{"vwap":10.836279,"price_vs_vwap_pct":1.602217,"ema9":10.928937,"ema20":10.938557,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-0.985656,"dist_to_hod_atr":1.159235,"atr":0.094545,"spread_atr":0.10577,"own_change_pct":0.257859,"rel_strength_pct":{"SPY":0.233844,"IWM":0.250863}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.378094},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ad8c80c9764e","ts":"2026-09-21T15:44:58.538882+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.7924,"target":11.03,"target_label":"ceiling","reward_risk":0.84,"pos_in_5d_range_pct":105.1,"room_to_5d_high_atr":-0.12},"price":10.9214,"vwap":10.8366,"ext_from_open_pct":-0.53,"max_ext_allowed_pct":3.0,"volume_pace":0.77,"trend":"flat","recent_slope_pct":-0.1571,"volatility":"medium"},"price":10.9214,"volume":{"bars":134,"last_bar_volume":180993.0,"baseline_avg":367134.15,"bar_rvol":0.492989,"raw_accel":0.971955,"smooth_accel":-0.549837,"accel_momentum":0.161259,"rvol_3bar":[0.362554,0.199765,0.492989],"trend_3bar":"MIXED","projected_rvol":0.462437},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":10976.0,"sell_vol":12714.0,"unclassified_vol":0.0,"imbalance":-0.073364,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":13.614576},"context":{"vwap":10.836279,"price_vs_vwap_pct":0.785516,"ema9":10.928937,"ema20":10.938557,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.781555,"dist_to_hod_atr":2.095296,"atr":0.094545,"spread_atr":0.10577,"own_change_pct":0.257859,"rel_strength_pct":{"SPY":0.233844,"IWM":0.250863}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.036168},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f4d649773e44","ts":"2026-09-21T15:45:03.591568+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.2667,"target":9.09,"target_label":"range_20d_high","reward_risk":0.87,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.24,"vwap":8.2056,"ext_from_open_pct":2.87,"max_ext_allowed_pct":4.0,"volume_pace":3.491,"trend":"flat","recent_slope_pct":-0.2213,"volatility":"unknown"},"price":8.24,"volume":{"bars":134,"last_bar_volume":9066.0,"baseline_avg":2409.25,"bar_rvol":3.762997,"raw_accel":-0.375534,"smooth_accel":2.609498,"accel_momentum":-4.297071,"rvol_3bar":[5.868818,8.436528,3.762997],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":5242.0,"sell_vol":1444.0,"unclassified_vol":0.0,"imbalance":0.568053,"bid":8.19,"ask":8.24,"spread_pct":0.608643,"quote_size_imbalance":null,"quote_age_s":3.36961},"context":{"vwap":8.205588,"price_vs_vwap_pct":0.419375,"ema9":8.230685,"ema20":8.212471,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.962704,"dist_to_hod_atr":2.002107,"atr":0.169821,"spread_atr":0.294427,"own_change_pct":0.474258,"rel_strength_pct":{"SPY":0.445705,"IWM":0.462015}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.13758},"shadow":{"decision":"FAIL","failed":["spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"78349c128b1d","ts":"2026-09-21T15:45:03.591568+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.5983,"target":13.65,"target_label":"premarket_high","reward_risk":1.68,"pos_in_5d_range_pct":152.0,"room_to_5d_high_atr":-1.55},"price":12.9901,"vwap":12.8206,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.776,"trend":"flat","recent_slope_pct":0.2985,"volatility":"high"},"price":12.9901,"volume":{"bars":135,"last_bar_volume":13191.0,"baseline_avg":15452.55,"bar_rvol":0.853646,"raw_accel":0.148542,"smooth_accel":-0.04596,"accel_momentum":-0.204866,"rvol_3bar":[1.396752,0.724809,0.853646],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":1221.0,"sell_vol":4990.0,"unclassified_vol":0.0,"imbalance":-0.606827,"bid":12.99,"ask":13.02,"spread_pct":0.230681,"quote_size_imbalance":null,"quote_age_s":0.610196},"context":{"vwap":12.820453,"price_vs_vwap_pct":1.323254,"ema9":12.931067,"ema20":12.931623,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.868841,"dist_to_hod_atr":3.398612,"atr":0.238303,"spread_atr":0.12589,"own_change_pct":-0.535168,"rel_strength_pct":{"SPY":-0.563721,"IWM":-0.547411}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.518015},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"570a73cd745a","ts":"2026-09-21T15:45:03.591568+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.5614,"target":11.14,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":111.8,"room_to_5d_high_atr":-0.28},"price":11.003,"vwap":10.8367,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.77,"trend":"flat","recent_slope_pct":0.3637,"volatility":"medium"},"price":11.003,"volume":{"bars":135,"last_bar_volume":165882.0,"baseline_avg":357206.45,"bar_rvol":0.464387,"raw_accel":-0.083489,"smooth_accel":-0.441815,"accel_momentum":0.108022,"rvol_3bar":[0.199765,0.492989,0.464387],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":10727.0,"sell_vol":14096.0,"unclassified_vol":0.0,"imbalance":-0.135721,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":3.537161},"context":{"vwap":10.836699,"price_vs_vwap_pct":1.534608,"ema9":10.94415,"ema20":10.944885,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.047709,"dist_to_hod_atr":1.150466,"atr":0.101263,"spread_atr":0.098752,"own_change_pct":0.029086,"rel_strength_pct":{"SPY":0.000533,"IWM":0.016843}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.063027},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0feeca33fbf7","ts":"2026-09-21T15:45:03.591568+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.25x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2223,"target":5.315,"target_label":"prev_day_high","reward_risk":0.61,"pos_in_5d_range_pct":95.3,"room_to_5d_high_atr":0.15},"price":5.28,"vwap":5.2575,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.249,"trend":"flat","recent_slope_pct":-0.0284,"volatility":"medium"},"price":5.28,"volume":{"bars":134,"last_bar_volume":1198.0,"baseline_avg":707.25,"bar_rvol":1.693885,"raw_accel":3.735178,"smooth_accel":3.574757,"accel_momentum":2.620019,"rvol_3bar":[1.309412,0.363193,1.693885],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":170.0,"sell_vol":203.0,"unclassified_vol":0.0,"imbalance":-0.088472,"bid":5.28,"ask":5.29,"spread_pct":0.189215,"quote_size_imbalance":null,"quote_age_s":19.62489},"context":{"vwap":5.257456,"price_vs_vwap_pct":0.4288,"ema9":5.283191,"ema20":5.280439,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.75188,"dist_to_hod_atr":5.583227,"atr":0.007164,"spread_atr":1.395807,"own_change_pct":-0.113507,"rel_strength_pct":{"SPY":-0.142061,"IWM":-0.12575}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.149861},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ec4f3290489a","ts":"2026-09-21T15:45:03.591568+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.27,"target":6.4699,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4086,"vwap":6.3101,"ext_from_open_pct":1.89,"max_ext_allowed_pct":3.0,"volume_pace":1.332,"trend":"flat","recent_slope_pct":0.148,"volatility":"unknown"},"price":6.4086,"volume":{"bars":135,"last_bar_volume":113986.0,"baseline_avg":84553.1,"bar_rvol":1.3481,"raw_accel":1.137051,"smooth_accel":0.112032,"accel_momentum":0.183591,"rvol_3bar":[1.884431,0.614442,1.3481],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":335,"trade_rate":11.166667,"buy_vol":30922.0,"sell_vol":27757.0,"unclassified_vol":0.0,"imbalance":0.053938,"bid":6.42,"ask":6.43,"spread_pct":0.155642,"quote_size_imbalance":null,"quote_age_s":0.244373},"context":{"vwap":6.309987,"price_vs_vwap_pct":1.562804,"ema9":6.402748,"ema20":6.407145,"ema_stack":false,"ema_warm":true,"hod":6.4699,"dist_to_hod_pct":-0.947464,"dist_to_hod_atr":0.883071,"atr":0.069417,"spread_atr":0.144057,"own_change_pct":-0.873741,"rel_strength_pct":{"SPY":-0.902295,"IWM":-0.885984}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.072713},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4777a366efc9","ts":"2026-09-21T15:45:29.314672+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1529,"target":5.3,"target_label":"prev_day_high","reward_risk":1.83,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.205,"vwap":5.1702,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.911,"trend":"flat","recent_slope_pct":0.0029,"volatility":"unknown"},"price":5.205,"volume":{"bars":135,"last_bar_volume":13183.0,"baseline_avg":32105.35,"bar_rvol":0.410617,"raw_accel":-0.633592,"smooth_accel":0.082433,"accel_momentum":-2.48032,"rvol_3bar":[1.764035,1.100248,0.410617],"trend_3bar":"DECELERATING","projected_rvol":2.166332},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":29406.0,"sell_vol":4625.0,"unclassified_vol":0.0,"imbalance":0.728189,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":0.768059},"context":{"vwap":5.170007,"price_vs_vwap_pct":0.676849,"ema9":5.199895,"ema20":5.191382,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.792453,"dist_to_hod_atr":2.195372,"atr":0.043273,"spread_atr":0.231092,"own_change_pct":-0.192123,"rel_strength_pct":{"SPY":-0.220676,"IWM":-0.204366}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.299007},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f48ff055f468","ts":"2026-09-21T15:45:39.513961+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.93,"target_label":"ceiling","reward_risk":0.22,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.83,"vwap":8.7526,"ext_from_open_pct":3.64,"max_ext_allowed_pct":4.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":0.0796,"volatility":"unknown"},"price":8.83,"volume":{"bars":135,"last_bar_volume":30296.0,"baseline_avg":82888.2,"bar_rvol":0.365504,"raw_accel":-0.741004,"smooth_accel":0.506487,"accel_momentum":0.234686,"rvol_3bar":[0.634524,1.410268,0.365504],"trend_3bar":"MIXED","projected_rvol":0.771644},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":9145.0,"sell_vol":6498.0,"unclassified_vol":0.0,"imbalance":0.169213,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.278925},"context":{"vwap":8.752332,"price_vs_vwap_pct":0.887395,"ema9":8.819115,"ema20":8.830474,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-1.175154,"dist_to_hod_atr":0.925853,"atr":0.113409,"spread_atr":0.088176,"own_change_pct":-0.072113,"rel_strength_pct":{"SPY":-0.100666,"IWM":-0.084356}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.061848},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ae38ebf0010b","ts":"2026-09-21T15:46:10.050717+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"held 40.7s, plan says WATCH; stop 5.07, target 5.30 (prev_day_high), R:R 0.74; R:R 0.74 < 2.0 at 5.20; breakout: 1-min close > 5.23 on >= 35482 sh","plan":{"state":"WATCH","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2014,"vwap":5.1705,"ext_from_open_pct":0.03,"max_ext_allowed_pct":3.0,"volume_pace":0.913,"trend":"flat","recent_slope_pct":-0.0081,"volatility":"unknown"},"price":5.2014,"volume":{"bars":136,"last_bar_volume":67199.0,"baseline_avg":31330.15,"bar_rvol":2.144867,"raw_accel":4.097398,"smooth_accel":-0.160339,"accel_momentum":-0.242772,"rvol_3bar":[1.100248,0.410617,2.144867],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":2513.0,"sell_vol":1528.0,"unclassified_vol":0.0,"imbalance":0.243752,"bid":5.21,"ask":5.22,"spread_pct":0.191755,"quote_size_imbalance":null,"quote_age_s":1.883859},"context":{"vwap":5.170511,"price_vs_vwap_pct":0.597413,"ema9":5.200536,"ema20":5.192498,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.860377,"dist_to_hod_atr":2.329604,"atr":0.042325,"spread_atr":0.236268,"own_change_pct":-0.132438,"rel_strength_pct":{"SPY":-0.196691,"IWM":-0.135936}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.522815},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"901f09466864","ts":"2026-09-21T15:46:10.050717+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.93,"target_label":"ceiling","reward_risk":0.13,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8657,"vwap":8.7529,"ext_from_open_pct":4.06,"max_ext_allowed_pct":4.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":0.5178,"volatility":"unknown"},"price":8.8657,"volume":{"bars":136,"last_bar_volume":63051.0,"baseline_avg":76267.45,"bar_rvol":0.826709,"raw_accel":1.081166,"smooth_accel":0.817712,"accel_momentum":0.311225,"rvol_3bar":[1.410268,0.365504,0.826709],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":167,"trade_rate":5.566667,"buy_vol":24450.0,"sell_vol":6765.0,"unclassified_vol":0.0,"imbalance":0.566555,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":3.137321},"context":{"vwap":8.752794,"price_vs_vwap_pct":1.289942,"ema9":8.823292,"ema20":8.831382,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.775602,"dist_to_hod_atr":0.628809,"atr":0.110208,"spread_atr":0.090737,"own_change_pct":-0.282008,"rel_strength_pct":{"SPY":-0.346261,"IWM":-0.285506}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.468376},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"63966a213feb","ts":"2026-09-21T15:46:15.147905+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.93,"target_label":"ceiling","reward_risk":0.16,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7529,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":0.4936,"volatility":"unknown"},"price":8.855,"volume":{"bars":136,"last_bar_volume":63051.0,"baseline_avg":76267.45,"bar_rvol":0.826709,"raw_accel":1.081166,"smooth_accel":0.817712,"accel_momentum":0.311225,"rvol_3bar":[1.410268,0.365504,0.826709],"trend_3bar":"MIXED","projected_rvol":0.662326},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":24485.0,"sell_vol":7507.0,"unclassified_vol":0.0,"imbalance":0.530695,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.853593},"context":{"vwap":8.752794,"price_vs_vwap_pct":1.167695,"ema9":8.823292,"ema20":8.831382,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.895355,"dist_to_hod_atr":0.725898,"atr":0.110208,"spread_atr":0.090737,"own_change_pct":-0.282008,"rel_strength_pct":{"SPY":-0.346261,"IWM":-0.285506}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.438731},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"733bc9038b2a","ts":"2026-09-21T15:46:30.423636+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.93,"target_label":"ceiling","reward_risk":0.17,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8505,"vwap":8.753,"ext_from_open_pct":3.88,"max_ext_allowed_pct":3.0,"volume_pace":0.631,"trend":"flat","recent_slope_pct":0.4834,"volatility":"unknown"},"price":8.8505,"volume":{"bars":136,"last_bar_volume":63051.0,"baseline_avg":76267.45,"bar_rvol":0.826709,"raw_accel":1.081166,"smooth_accel":0.817712,"accel_momentum":0.311225,"rvol_3bar":[1.410268,0.365504,0.826709],"trend_3bar":"MIXED","projected_rvol":0.572194},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":15910.0,"sell_vol":6217.0,"unclassified_vol":0.0,"imbalance":0.438062,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.42437},"context":{"vwap":8.752794,"price_vs_vwap_pct":1.116283,"ema9":8.823292,"ema20":8.831382,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.945719,"dist_to_hod_atr":0.76673,"atr":0.110208,"spread_atr":0.090737,"own_change_pct":-0.282008,"rel_strength_pct":{"SPY":-0.346261,"IWM":-0.285506}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.36215},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a5a9dea14c2d","ts":"2026-09-21T15:46:35.558957+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.5786,"target":9.74,"target_label":"premarket_high","reward_risk":0.28,"pos_in_5d_range_pct":108.8,"room_to_5d_high_atr":-0.09},"price":9.705,"vwap":9.6814,"ext_from_open_pct":0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.753,"trend":"flat","recent_slope_pct":0.062,"volatility":"medium"},"price":9.705,"volume":{"bars":136,"last_bar_volume":5112.0,"baseline_avg":9079.75,"bar_rvol":0.563011,"raw_accel":1.252044,"smooth_accel":-0.212085,"accel_momentum":0.017494,"rvol_3bar":[0.448085,0.163989,0.563011],"trend_3bar":"MIXED","projected_rvol":4.281832},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":19380.0,"sell_vol":3211.0,"unclassified_vol":0.0,"imbalance":0.715728,"bid":9.7,"ask":9.71,"spread_pct":0.10304,"quote_size_imbalance":null,"quote_age_s":0.382941},"context":{"vwap":9.681232,"price_vs_vwap_pct":0.245504,"ema9":9.675971,"ema20":9.688033,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.271617,"dist_to_hod_atr":3.321816,"atr":0.03763,"spread_atr":0.265745,"own_change_pct":0.259067,"rel_strength_pct":{"SPY":0.194814,"IWM":0.255569}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.402963},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fc9ed56b355f","ts":"2026-09-21T15:46:35.558957+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.93,"target_label":"ceiling","reward_risk":0.15,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.86,"vwap":8.753,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.631,"trend":"flat","recent_slope_pct":0.5049,"volatility":"unknown"},"price":8.86,"volume":{"bars":136,"last_bar_volume":63051.0,"baseline_avg":76267.45,"bar_rvol":0.826709,"raw_accel":1.081166,"smooth_accel":0.817712,"accel_momentum":0.311225,"rvol_3bar":[1.410268,0.365504,0.826709],"trend_3bar":"MIXED","projected_rvol":0.610909},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":13068.0,"sell_vol":5320.0,"unclassified_vol":0.0,"imbalance":0.421362,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.177591},"context":{"vwap":8.752794,"price_vs_vwap_pct":1.22482,"ema9":8.823292,"ema20":8.831382,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.839396,"dist_to_hod_atr":0.68053,"atr":0.110208,"spread_atr":0.090737,"own_change_pct":-0.282008,"rel_strength_pct":{"SPY":-0.346261,"IWM":-0.285506}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.348344},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0b87d620e9c1","ts":"2026-09-21T15:46:40.709596+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.93,"target_label":"ceiling","reward_risk":0.15,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8566,"vwap":8.753,"ext_from_open_pct":3.95,"max_ext_allowed_pct":3.0,"volume_pace":0.631,"trend":"flat","recent_slope_pct":0.4972,"volatility":"unknown"},"price":8.8566,"volume":{"bars":136,"last_bar_volume":63051.0,"baseline_avg":76267.45,"bar_rvol":0.826709,"raw_accel":1.081166,"smooth_accel":0.817712,"accel_momentum":0.311225,"rvol_3bar":[1.410268,0.365504,0.826709],"trend_3bar":"MIXED","projected_rvol":0.539239},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":13114.0,"sell_vol":4296.0,"unclassified_vol":0.0,"imbalance":0.506491,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.264826},"context":{"vwap":8.752794,"price_vs_vwap_pct":1.185975,"ema9":8.823292,"ema20":8.831382,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.877448,"dist_to_hod_atr":0.71138,"atr":0.110208,"spread_atr":0.090737,"own_change_pct":-0.282008,"rel_strength_pct":{"SPY":-0.346261,"IWM":-0.285506}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.41872},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5cd2557935e8","ts":"2026-09-21T15:46:45.782323+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.93,"target_label":"ceiling","reward_risk":0.16,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8548,"vwap":8.753,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":0.4932,"volatility":"unknown"},"price":8.8548,"volume":{"bars":136,"last_bar_volume":63051.0,"baseline_avg":76267.45,"bar_rvol":0.826709,"raw_accel":1.081166,"smooth_accel":0.817712,"accel_momentum":0.311225,"rvol_3bar":[1.410268,0.365504,0.826709],"trend_3bar":"MIXED","projected_rvol":0.486811},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":13005.0,"sell_vol":2562.0,"unclassified_vol":0.0,"imbalance":0.670842,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.35013},"context":{"vwap":8.752794,"price_vs_vwap_pct":1.16541,"ema9":8.823292,"ema20":8.831382,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.897594,"dist_to_hod_atr":0.727713,"atr":0.110208,"spread_atr":0.090737,"own_change_pct":-0.282008,"rel_strength_pct":{"SPY":-0.346261,"IWM":-0.285506}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.554591},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c9b75e5dce3f","ts":"2026-09-21T15:46:56.069382+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.93,"target_label":"ceiling","reward_risk":0.16,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.753,"ext_from_open_pct":3.93,"max_ext_allowed_pct":3.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":0.4936,"volatility":"unknown"},"price":8.855,"volume":{"bars":136,"last_bar_volume":63051.0,"baseline_avg":76267.45,"bar_rvol":0.826709,"raw_accel":1.081166,"smooth_accel":0.817712,"accel_momentum":0.311225,"rvol_3bar":[1.410268,0.365504,0.826709],"trend_3bar":"MIXED","projected_rvol":0.410783},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":5885.0,"sell_vol":1701.0,"unclassified_vol":0.0,"imbalance":0.551542,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":2.848098},"context":{"vwap":8.752794,"price_vs_vwap_pct":1.167695,"ema9":8.823292,"ema20":8.831382,"ema_stack":false,"ema_warm":true,"hod":8.935,"dist_to_hod_pct":-0.895355,"dist_to_hod_atr":0.725898,"atr":0.110208,"spread_atr":0.090737,"own_change_pct":-0.282008,"rel_strength_pct":{"SPY":-0.346261,"IWM":-0.285506}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.455965},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0fc249d616b4","ts":"2026-09-21T15:47:01.193944+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.8595,"target":9.1299,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.02,"vwap":9.0154,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":1.185,"trend":"flat","recent_slope_pct":-0.0055,"volatility":"medium"},"price":9.02,"volume":{"bars":136,"last_bar_volume":32188.0,"baseline_avg":17499.7,"bar_rvol":1.839346,"raw_accel":2.136009,"smooth_accel":2.526715,"accel_momentum":-0.060862,"rvol_3bar":[6.931804,0.574962,1.839346],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":3009.0,"sell_vol":3149.0,"unclassified_vol":0.0,"imbalance":-0.022735,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":2.55642},"context":{"vwap":9.015444,"price_vs_vwap_pct":0.050539,"ema9":9.018957,"ema20":9.021305,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.203737,"dist_to_hod_atr":1.941927,"atr":0.056593,"spread_atr":0.176699,"own_change_pct":-0.01553,"rel_strength_pct":{"SPY":-0.089511,"IWM":-0.01553}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.041817},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"84b9e73b98ef","ts":"2026-09-21T15:47:06.409478+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.02 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.8595,"target":9.1299,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0154,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.184,"trend":"flat","recent_slope_pct":-0.0175,"volatility":"medium"},"price":9.015,"volume":{"bars":137,"last_bar_volume":8125.0,"baseline_avg":18671.3,"bar_rvol":0.43516,"raw_accel":-0.747577,"smooth_accel":-0.540489,"accel_momentum":-3.067204,"rvol_3bar":[0.574962,1.839346,0.43516],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":3508.0,"sell_vol":3298.0,"unclassified_vol":0.0,"imbalance":0.030855,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":7.771954},"context":{"vwap":9.015439,"price_vs_vwap_pct":-0.004874,"ema9":9.019166,"ema20":9.02118,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":2.128587,"atr":0.053979,"spread_atr":0.185256,"own_change_pct":0.146556,"rel_strength_pct":{"SPY":0.072574,"IWM":0.146556}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.013427},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8b2547c874a9","ts":"2026-09-21T15:47:27.146585+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.68 below VWAP $9.68","plan":{"state":"PASS","setup":"","stop":9.5786,"target":9.74,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":101.8,"room_to_5d_high_atr":-0.02},"price":9.6771,"vwap":9.6815,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":3.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":0.0353,"volatility":"medium"},"price":9.6771,"volume":{"bars":137,"last_bar_volume":24688.0,"baseline_avg":8494.8,"bar_rvol":2.906249,"raw_accel":3.829421,"smooth_accel":0.818957,"accel_momentum":1.031042,"rvol_3bar":[0.163989,0.563011,2.906249],"trend_3bar":"ACCELERATING","projected_rvol":4.58967},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":1439.0,"sell_vol":17334.0,"unclassified_vol":0.0,"imbalance":-0.846695,"bid":9.7,"ask":9.71,"spread_pct":0.10304,"quote_size_imbalance":null,"quote_age_s":0.076178},"context":{"vwap":9.68143,"price_vs_vwap_pct":-0.044726,"ema9":9.681777,"ema20":9.689649,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.555443,"dist_to_hod_atr":4.045048,"atr":0.037799,"spread_atr":0.264555,"own_change_pct":0.396206,"rel_strength_pct":{"SPY":0.322224,"IWM":0.396206}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.460705},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"776e4530b7f1","ts":"2026-09-21T15:47:32.340213+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.5786,"target":9.74,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":107.5,"room_to_5d_high_atr":-0.08},"price":9.7,"vwap":9.6817,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.761,"trend":"flat","recent_slope_pct":0.0826,"volatility":"medium"},"price":9.7,"volume":{"bars":137,"last_bar_volume":24688.0,"baseline_avg":8494.8,"bar_rvol":2.906249,"raw_accel":3.829421,"smooth_accel":0.818957,"accel_momentum":1.031042,"rvol_3bar":[0.163989,0.563011,2.906249],"trend_3bar":"ACCELERATING","projected_rvol":6.460966},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":577.0,"sell_vol":29006.0,"unclassified_vol":0.0,"imbalance":-0.960991,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":0.78599},"context":{"vwap":9.68143,"price_vs_vwap_pct":0.191809,"ema9":9.681777,"ema20":9.689649,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.322482,"dist_to_hod_atr":3.439217,"atr":0.037799,"spread_atr":0.264555,"own_change_pct":0.396206,"rel_strength_pct":{"SPY":0.322224,"IWM":0.396206}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.792879},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1e14fd567521","ts":"2026-09-21T15:47:47.847571+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.8595,"target":9.1299,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":126.3,"room_to_5d_high_atr":-0.84},"price":9.0197,"vwap":9.0154,"ext_from_open_pct":-0.0,"max_ext_allowed_pct":3.0,"volume_pace":1.179,"trend":"flat","recent_slope_pct":-0.0071,"volatility":"medium"},"price":9.0197,"volume":{"bars":137,"last_bar_volume":8125.0,"baseline_avg":18671.3,"bar_rvol":0.43516,"raw_accel":-0.747577,"smooth_accel":-0.540489,"accel_momentum":-3.067204,"rvol_3bar":[0.574962,1.839346,0.43516],"trend_3bar":"MIXED","projected_rvol":0.149433},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":35.0,"sell_vol":469.0,"unclassified_vol":0.0,"imbalance":-0.861111,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.115109},"context":{"vwap":9.015439,"price_vs_vwap_pct":0.047259,"ema9":9.019166,"ema20":9.02118,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.207023,"dist_to_hod_atr":2.041517,"atr":0.053979,"spread_atr":0.185256,"own_change_pct":0.146556,"rel_strength_pct":{"SPY":0.072574,"IWM":0.146556}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.374721},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e09f841bd00b","ts":"2026-09-21T15:47:58.127516+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.8595,"target":9.1299,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":9.0154,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":3.0,"volume_pace":1.178,"trend":"flat","recent_slope_pct":-0.0286,"volatility":"medium"},"price":9.01,"volume":{"bars":137,"last_bar_volume":8125.0,"baseline_avg":18671.3,"bar_rvol":0.43516,"raw_accel":-0.747577,"smooth_accel":-0.540489,"accel_momentum":-3.067204,"rvol_3bar":[0.574962,1.839346,0.43516],"trend_3bar":"MIXED","projected_rvol":0.343697},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":593.0,"sell_vol":3744.0,"unclassified_vol":0.0,"imbalance":-0.726539,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.404876},"context":{"vwap":9.015439,"price_vs_vwap_pct":-0.060335,"ema9":9.019166,"ema20":9.02118,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.313267,"dist_to_hod_atr":2.221215,"atr":0.053979,"spread_atr":0.185256,"own_change_pct":0.146556,"rel_strength_pct":{"SPY":0.072574,"IWM":0.146556}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.316161},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7794f08211e9","ts":"2026-09-21T15:50:53.339028+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.8595,"target":9.1299,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":128.1,"room_to_5d_high_atr":-0.89},"price":9.0386,"vwap":9.0155,"ext_from_open_pct":0.21,"max_ext_allowed_pct":4.0,"volume_pace":1.161,"trend":"flat","recent_slope_pct":0.0494,"volatility":"medium"},"price":9.0386,"volume":{"bars":140,"last_bar_volume":5632.0,"baseline_avg":17549.05,"bar_rvol":0.320929,"raw_accel":0.283716,"smooth_accel":-0.682227,"accel_momentum":0.182355,"rvol_3bar":[0.330315,0.230316,0.320929],"trend_3bar":"MIXED","projected_rvol":0.92681},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":12084.0,"sell_vol":1325.0,"unclassified_vol":0.0,"imbalance":0.802372,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":0.655033},"context":{"vwap":9.015424,"price_vs_vwap_pct":0.257066,"ema9":9.016205,"ema20":9.019003,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.000011,"dist_to_hod_atr":1.953016,"atr":0.046748,"spread_atr":0.213912,"own_change_pct":-0.344805,"rel_strength_pct":{"SPY":-0.377891,"IWM":-0.385026}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.257504},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"834f2117628c","ts":"2026-09-21T15:52:05.322091+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0014,"target":12.29,"target_label":"prev_day_high","reward_risk":0.53,"pos_in_5d_range_pct":63.4,"room_to_5d_high_atr":0.58},"price":12.19,"vwap":12.1667,"ext_from_open_pct":-0.89,"max_ext_allowed_pct":3.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":0.0862,"volatility":"medium"},"price":12.19,"volume":{"bars":142,"last_bar_volume":11895.0,"baseline_avg":8565.65,"bar_rvol":1.388686,"raw_accel":-0.540272,"smooth_accel":0.40191,"accel_momentum":-0.366242,"rvol_3bar":[0.561528,3.269912,1.388686],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":2365.0,"sell_vol":2614.0,"unclassified_vol":0.0,"imbalance":-0.05001,"bid":12.18,"ask":12.19,"spread_pct":0.082068,"quote_size_imbalance":null,"quote_age_s":0.73321},"context":{"vwap":12.166668,"price_vs_vwap_pct":0.191768,"ema9":12.142967,"ema20":12.125141,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.401922,"dist_to_hod_atr":3.946828,"atr":0.07601,"spread_atr":0.131561,"own_change_pct":0.412031,"rel_strength_pct":{"SPY":0.428892,"IWM":0.387555}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.069448},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5156cd5ac27b","ts":"2026-09-21T15:52:10.458177+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.16 below VWAP $12.17","plan":{"state":"PASS","setup":"","stop":11.9893,"target":12.29,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":61.1,"room_to_5d_high_atr":0.62},"price":12.1646,"vwap":12.1667,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":0.0445,"volatility":"medium"},"price":12.1646,"volume":{"bars":142,"last_bar_volume":11895.0,"baseline_avg":8565.65,"bar_rvol":1.388686,"raw_accel":-0.540272,"smooth_accel":0.40191,"accel_momentum":-0.366242,"rvol_3bar":[0.561528,3.269912,1.388686],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1336.0,"sell_vol":2453.0,"unclassified_vol":0.0,"imbalance":-0.294801,"bid":12.18,"ask":12.19,"spread_pct":0.082068,"quote_size_imbalance":null,"quote_age_s":0.185607},"context":{"vwap":12.166668,"price_vs_vwap_pct":-0.017,"ema9":12.142967,"ema20":12.125141,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.605284,"dist_to_hod_atr":4.280993,"atr":0.07601,"spread_atr":0.131561,"own_change_pct":0.412031,"rel_strength_pct":{"SPY":0.428892,"IWM":0.387555}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.409386},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"052e908c958b","ts":"2026-09-21T15:52:15.587732+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0014,"target":12.29,"target_label":"prev_day_high","reward_risk":0.56,"pos_in_5d_range_pct":63.1,"room_to_5d_high_atr":0.59},"price":12.1868,"vwap":12.1667,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":0.081,"volatility":"medium"},"price":12.1868,"volume":{"bars":142,"last_bar_volume":11895.0,"baseline_avg":8565.65,"bar_rvol":1.388686,"raw_accel":-0.540272,"smooth_accel":0.40191,"accel_momentum":-0.366242,"rvol_3bar":[0.561528,3.269912,1.388686],"trend_3bar":"MIXED","projected_rvol":0.213902},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1768.0,"sell_vol":2287.0,"unclassified_vol":0.0,"imbalance":-0.12799,"bid":12.18,"ask":12.19,"spread_pct":0.082068,"quote_size_imbalance":null,"quote_age_s":0.318379},"context":{"vwap":12.166668,"price_vs_vwap_pct":0.165466,"ema9":12.142967,"ema20":12.125141,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.427542,"dist_to_hod_atr":3.988928,"atr":0.07601,"spread_atr":0.131561,"own_change_pct":0.412031,"rel_strength_pct":{"SPY":0.428892,"IWM":0.387555}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.177738},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e6527e4b9dab","ts":"2026-09-21T15:52:25.868081+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.02 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.1299,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0155,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.153,"trend":"flat","recent_slope_pct":0.0301,"volatility":"medium"},"price":9.015,"volume":{"bars":142,"last_bar_volume":6415.0,"baseline_avg":17924.9,"bar_rvol":0.357882,"raw_accel":-0.586129,"smooth_accel":0.483814,"accel_momentum":0.938896,"rvol_3bar":[0.320929,0.888354,0.357882],"trend_3bar":"MIXED","projected_rvol":1.093161},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":7500.0,"sell_vol":3894.0,"unclassified_vol":0.0,"imbalance":0.316482,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":9.142006},"context":{"vwap":9.015488,"price_vs_vwap_pct":-0.005414,"ema9":9.022971,"ema20":9.021905,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":2.596207,"atr":0.044257,"spread_atr":0.225954,"own_change_pct":0.166297,"rel_strength_pct":{"SPY":0.183158,"IWM":0.141821}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.113263},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4320177281b7","ts":"2026-09-21T15:52:36.097519+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.938,"target":9.1299,"target_label":"ceiling","reward_risk":1.22,"pos_in_5d_range_pct":126.8,"room_to_5d_high_atr":-0.85},"price":9.0245,"vwap":9.0155,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":1.152,"trend":"flat","recent_slope_pct":0.0512,"volatility":"medium"},"price":9.0245,"volume":{"bars":142,"last_bar_volume":6415.0,"baseline_avg":17924.9,"bar_rvol":0.357882,"raw_accel":-0.586129,"smooth_accel":0.483814,"accel_momentum":0.938896,"rvol_3bar":[0.320929,0.888354,0.357882],"trend_3bar":"MIXED","projected_rvol":0.841982},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":4699.0,"sell_vol":3378.0,"unclassified_vol":0.0,"imbalance":0.163551,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":2.901248},"context":{"vwap":9.015488,"price_vs_vwap_pct":0.09996,"ema9":9.022971,"ema20":9.021905,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.154449,"dist_to_hod_atr":2.381551,"atr":0.044257,"spread_atr":0.225954,"own_change_pct":0.166297,"rel_strength_pct":{"SPY":0.183158,"IWM":0.141821}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.058532},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7adaf494f33b","ts":"2026-09-21T15:52:51.549793+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9281,"target":9.1299,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.0146,"vwap":9.0155,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.15,"trend":"flat","recent_slope_pct":0.0293,"volatility":"medium"},"price":9.0146,"volume":{"bars":142,"last_bar_volume":6415.0,"baseline_avg":17924.9,"bar_rvol":0.357882,"raw_accel":-0.586129,"smooth_accel":0.483814,"accel_momentum":0.938896,"rvol_3bar":[0.320929,0.888354,0.357882],"trend_3bar":"MIXED","projected_rvol":0.619983},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":313.0,"sell_vol":996.0,"unclassified_vol":0.0,"imbalance":-0.521772,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.023058},"context":{"vwap":9.015488,"price_vs_vwap_pct":-0.009851,"ema9":9.022971,"ema20":9.021905,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.262883,"dist_to_hod_atr":2.605245,"atr":0.044257,"spread_atr":0.225954,"own_change_pct":0.166297,"rel_strength_pct":{"SPY":0.183158,"IWM":0.141821}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.186733},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e1bef544122e","ts":"2026-09-21T15:53:07.111133+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9368,"target":9.1299,"target_label":"ceiling","reward_risk":1.23,"pos_in_5d_range_pct":126.7,"room_to_5d_high_atr":-0.85},"price":9.0233,"vwap":9.0155,"ext_from_open_pct":0.04,"max_ext_allowed_pct":4.0,"volume_pace":1.148,"trend":"flat","recent_slope_pct":-0.0091,"volatility":"medium"},"price":9.0233,"volume":{"bars":143,"last_bar_volume":9613.0,"baseline_avg":17520.5,"bar_rvol":0.548672,"raw_accel":0.498519,"smooth_accel":0.961672,"accel_momentum":0.477859,"rvol_3bar":[0.888354,0.357882,0.548672],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":511.0,"sell_vol":275.0,"unclassified_vol":0.0,"imbalance":0.300254,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.067607},"context":{"vwap":9.015501,"price_vs_vwap_pct":0.086502,"ema9":9.021377,"ema20":9.021247,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.167592,"dist_to_hod_atr":2.471109,"atr":0.043139,"spread_atr":0.231811,"own_change_pct":0.055494,"rel_strength_pct":{"SPY":0.100879,"IWM":0.045005}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.164741},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"55a7728f4166","ts":"2026-09-21T15:53:12.226976+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.9455,"target":12.0486,"target_label":"premarket_high","reward_risk":1.73,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.35,"vwap":11.3222,"ext_from_open_pct":-2.16,"max_ext_allowed_pct":4.0,"volume_pace":0.713,"trend":"flat","recent_slope_pct":-0.0575,"volatility":"unknown"},"price":11.35,"volume":{"bars":132,"last_bar_volume":109.0,"baseline_avg":1240.7,"bar_rvol":0.087854,"raw_accel":-0.648585,"smooth_accel":0.675,"accel_momentum":0.480195,"rvol_3bar":[0.025967,0.10188,0.087854],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":269.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.992593,"bid":11.31,"ask":11.42,"spread_pct":0.967884,"quote_size_imbalance":null,"quote_age_s":0.650956},"context":{"vwap":11.322072,"price_vs_vwap_pct":0.24667,"ema9":11.349954,"ema20":11.349946,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-5.020921,"dist_to_hod_atr":3.763171,"atr":0.15944,"spread_atr":0.689915,"own_change_pct":-1.225524,"rel_strength_pct":{"SPY":-1.180139,"IWM":-1.236014}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.087203},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d78da056aafe","ts":"2026-09-21T15:53:27.486161+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.02 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.1299,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0155,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":1.146,"trend":"flat","recent_slope_pct":-0.0275,"volatility":"medium"},"price":9.015,"volume":{"bars":143,"last_bar_volume":9613.0,"baseline_avg":17520.5,"bar_rvol":0.548672,"raw_accel":0.498519,"smooth_accel":0.961672,"accel_momentum":0.477859,"rvol_3bar":[0.888354,0.357882,0.548672],"trend_3bar":"MIXED","projected_rvol":0.427226},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":2327.0,"sell_vol":1129.0,"unclassified_vol":0.0,"imbalance":0.346644,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":1.395774},"context":{"vwap":9.015501,"price_vs_vwap_pct":-0.005562,"ema9":9.021377,"ema20":9.021247,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":2.663512,"atr":0.043139,"spread_atr":0.231811,"own_change_pct":0.055494,"rel_strength_pct":{"SPY":0.100879,"IWM":0.045005}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.190193},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fc903a76ab0c","ts":"2026-09-21T15:53:37.768722+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9321,"target":9.1299,"target_label":"ceiling","reward_risk":1.29,"pos_in_5d_range_pct":126.2,"room_to_5d_high_atr":-0.83},"price":9.0186,"vwap":9.0155,"ext_from_open_pct":-0.02,"max_ext_allowed_pct":4.0,"volume_pace":1.144,"trend":"flat","recent_slope_pct":-0.0195,"volatility":"medium"},"price":9.0186,"volume":{"bars":143,"last_bar_volume":9613.0,"baseline_avg":17520.5,"bar_rvol":0.548672,"raw_accel":0.498519,"smooth_accel":0.961672,"accel_momentum":0.477859,"rvol_3bar":[0.888354,0.357882,0.548672],"trend_3bar":"MIXED","projected_rvol":0.314631},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":2072.0,"sell_vol":1144.0,"unclassified_vol":0.0,"imbalance":0.288557,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":3.00433},"context":{"vwap":9.015501,"price_vs_vwap_pct":0.034369,"ema9":9.021377,"ema20":9.021247,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.219071,"dist_to_hod_atr":2.58006,"atr":0.043139,"spread_atr":0.231811,"own_change_pct":0.055494,"rel_strength_pct":{"SPY":0.100879,"IWM":0.045005}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.158323},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"24361d29bdcb","ts":"2026-09-21T15:53:47.999918+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.02 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.1299,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0155,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":1.143,"trend":"flat","recent_slope_pct":-0.0275,"volatility":"medium"},"price":9.015,"volume":{"bars":143,"last_bar_volume":9613.0,"baseline_avg":17520.5,"bar_rvol":0.548672,"raw_accel":0.498519,"smooth_accel":0.961672,"accel_momentum":0.477859,"rvol_3bar":[0.888354,0.357882,0.548672],"trend_3bar":"MIXED","projected_rvol":0.253347},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":1025.0,"sell_vol":112.0,"unclassified_vol":0.0,"imbalance":0.80299,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":1.915698},"context":{"vwap":9.015501,"price_vs_vwap_pct":-0.005562,"ema9":9.021377,"ema20":9.021247,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":2.663512,"atr":0.043139,"spread_atr":0.231811,"own_change_pct":0.055494,"rel_strength_pct":{"SPY":0.100879,"IWM":0.045005}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.440578},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7828b9ab2a3b","ts":"2026-09-21T15:53:58.273146+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9335,"target":9.1299,"target_label":"ceiling","reward_risk":1.27,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.02,"vwap":9.0155,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":1.144,"trend":"flat","recent_slope_pct":-0.0164,"volatility":"medium"},"price":9.02,"volume":{"bars":143,"last_bar_volume":9613.0,"baseline_avg":17520.5,"bar_rvol":0.548672,"raw_accel":0.498519,"smooth_accel":0.961672,"accel_momentum":0.477859,"rvol_3bar":[0.888354,0.357882,0.548672],"trend_3bar":"MIXED","projected_rvol":0.65461},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":7444.0,"sell_vol":262.0,"unclassified_vol":0.0,"imbalance":0.932001,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.458196},"context":{"vwap":9.015501,"price_vs_vwap_pct":0.049898,"ema9":9.021377,"ema20":9.021247,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.203737,"dist_to_hod_atr":2.547607,"atr":0.043139,"spread_atr":0.231811,"own_change_pct":0.055494,"rel_strength_pct":{"SPY":0.100879,"IWM":0.045005}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.511362},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"03514c1ea6dc","ts":"2026-09-21T15:54:03.404142+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.245,"target":13.65,"target_label":"premarket_high","reward_risk":0.97,"pos_in_5d_range_pct":151.3,"room_to_5d_high_atr":-1.53},"price":12.9591,"vwap":12.8242,"ext_from_open_pct":-0.39,"max_ext_allowed_pct":3.0,"volume_pace":0.74,"trend":"flat","recent_slope_pct":-0.2975,"volatility":"high"},"price":12.9591,"volume":{"bars":144,"last_bar_volume":12367.0,"baseline_avg":10660.6,"bar_rvol":1.160066,"raw_accel":0.263744,"smooth_accel":0.338344,"accel_momentum":0.491994,"rvol_3bar":[0.647471,0.920057,1.160066],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":4373.0,"sell_vol":8705.0,"unclassified_vol":0.0,"imbalance":-0.331243,"bid":12.91,"ask":12.96,"spread_pct":0.386548,"quote_size_imbalance":null,"quote_age_s":1.71335},"context":{"vwap":12.824091,"price_vs_vwap_pct":1.052778,"ema9":13.031707,"ema20":12.996507,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.093478,"dist_to_hod_atr":5.139965,"atr":0.1636,"spread_atr":0.305623,"own_change_pct":-0.076923,"rel_strength_pct":{"SPY":-0.049687,"IWM":-0.090912}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.384264},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4feb66a9738f","ts":"2026-09-21T15:54:08.608981+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.02 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.1299,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0155,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":1.143,"trend":"flat","recent_slope_pct":-0.0625,"volatility":"medium"},"price":9.015,"volume":{"bars":144,"last_bar_volume":11140.0,"baseline_avg":17069.25,"bar_rvol":0.652636,"raw_accel":0.158847,"smooth_accel":0.071505,"accel_momentum":-0.890168,"rvol_3bar":[0.357882,0.548672,0.652636],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":7436.0,"sell_vol":394.0,"unclassified_vol":0.0,"imbalance":0.899361,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.433923},"context":{"vwap":9.015509,"price_vs_vwap_pct":-0.005641,"ema9":9.020822,"ema20":9.020995,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":2.789798,"atr":0.041186,"spread_atr":0.242802,"own_change_pct":0.093228,"rel_strength_pct":{"SPY":0.120464,"IWM":0.079239}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.586955},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c753e95f0c97","ts":"2026-09-21T15:54:29.058458+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9294,"target":9.1299,"target_label":"ceiling","reward_risk":1.32,"pos_in_5d_range_pct":126.0,"room_to_5d_high_atr":-0.83},"price":9.0159,"vwap":9.0155,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":1.14,"trend":"flat","recent_slope_pct":-0.0605,"volatility":"medium"},"price":9.0159,"volume":{"bars":144,"last_bar_volume":11140.0,"baseline_avg":17069.25,"bar_rvol":0.652636,"raw_accel":0.158847,"smooth_accel":0.071505,"accel_momentum":-0.890168,"rvol_3bar":[0.357882,0.548672,0.652636],"trend_3bar":"ACCELERATING","projected_rvol":0.188103},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":446.0,"sell_vol":1109.0,"unclassified_vol":0.0,"imbalance":-0.426367,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":2.592309},"context":{"vwap":9.015509,"price_vs_vwap_pct":0.004342,"ema9":9.020822,"ema20":9.020995,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.248645,"dist_to_hod_atr":2.767946,"atr":0.041186,"spread_atr":0.242802,"own_change_pct":0.093228,"rel_strength_pct":{"SPY":0.120464,"IWM":0.079239}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.278262},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7ead44a165b7","ts":"2026-09-21T15:54:34.216013+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.02 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.1299,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0155,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.14,"trend":"flat","recent_slope_pct":-0.0625,"volatility":"medium"},"price":9.015,"volume":{"bars":144,"last_bar_volume":11140.0,"baseline_avg":17069.25,"bar_rvol":0.652636,"raw_accel":0.158847,"smooth_accel":0.071505,"accel_momentum":-0.890168,"rvol_3bar":[0.357882,0.548672,0.652636],"trend_3bar":"ACCELERATING","projected_rvol":0.208752},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":820.0,"sell_vol":1053.0,"unclassified_vol":0.0,"imbalance":-0.124399,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.650359},"context":{"vwap":9.015509,"price_vs_vwap_pct":-0.005641,"ema9":9.020822,"ema20":9.020995,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":2.789798,"atr":0.041186,"spread_atr":0.242802,"own_change_pct":0.093228,"rel_strength_pct":{"SPY":0.120464,"IWM":0.079239}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.081187},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5f281cfad305","ts":"2026-09-21T15:55:35.995017+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.17 below VWAP $12.17","plan":{"state":"PASS","setup":"","stop":11.9913,"target":12.29,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":61.3,"room_to_5d_high_atr":0.62},"price":12.1666,"vwap":12.1667,"ext_from_open_pct":-1.08,"max_ext_allowed_pct":3.0,"volume_pace":0.844,"trend":"flat","recent_slope_pct":-0.0343,"volatility":"medium"},"price":12.1666,"volume":{"bars":145,"last_bar_volume":2825.0,"baseline_avg":9030.45,"bar_rvol":0.31283,"raw_accel":-0.661514,"smooth_accel":-0.434881,"accel_momentum":-0.229122,"rvol_3bar":[1.497013,0.952354,0.31283],"trend_3bar":"DECELERATING","projected_rvol":1.866168},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1393.0,"sell_vol":8632.0,"unclassified_vol":0.0,"imbalance":-0.722095,"bid":12.16,"ask":12.17,"spread_pct":0.082203,"quote_size_imbalance":null,"quote_age_s":0.712058},"context":{"vwap":12.166704,"price_vs_vwap_pct":-0.000855,"ema9":12.159351,"ema20":12.138523,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.589271,"dist_to_hod_atr":4.809244,"atr":0.067245,"spread_atr":0.148709,"own_change_pct":0.123355,"rel_strength_pct":{"SPY":0.159025,"IWM":0.163561}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.225893},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b60bfc0a21cd","ts":"2026-09-21T15:56:12.350423+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0002,"target":12.29,"target_label":"prev_day_high","reward_risk":0.65,"pos_in_5d_range_pct":62.1,"room_to_5d_high_atr":0.61},"price":12.1755,"vwap":12.1667,"ext_from_open_pct":-1.01,"max_ext_allowed_pct":3.0,"volume_pace":0.842,"trend":"flat","recent_slope_pct":-0.0203,"volatility":"medium"},"price":12.1755,"volume":{"bars":146,"last_bar_volume":14710.0,"baseline_avg":8777.55,"bar_rvol":1.675866,"raw_accel":4.20708,"smooth_accel":-0.487353,"accel_momentum":-0.052471,"rvol_3bar":[0.952354,0.31283,1.675866],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":825.0,"sell_vol":4007.0,"unclassified_vol":0.0,"imbalance":-0.658526,"bid":12.16,"ask":12.17,"spread_pct":0.082203,"quote_size_imbalance":null,"quote_age_s":1.543475},"context":{"vwap":12.166704,"price_vs_vwap_pct":0.072297,"ema9":12.159481,"ema20":12.140569,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.518014,"dist_to_hod_atr":4.924001,"atr":0.063871,"spread_atr":0.156566,"own_change_pct":-0.20517,"rel_strength_pct":{"SPY":-0.183119,"IWM":-0.164972}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.103602},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"63d62e70e67b","ts":"2026-09-21T15:56:17.513579+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.16 below VWAP $12.17","plan":{"state":"PASS","setup":"","stop":11.988,"target":12.29,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":61.0,"room_to_5d_high_atr":0.62},"price":12.1633,"vwap":12.1667,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.841,"trend":"flat","recent_slope_pct":-0.0403,"volatility":"medium"},"price":12.1633,"volume":{"bars":146,"last_bar_volume":14710.0,"baseline_avg":8777.55,"bar_rvol":1.675866,"raw_accel":4.20708,"smooth_accel":-0.487353,"accel_momentum":-0.052471,"rvol_3bar":[0.952354,0.31283,1.675866],"trend_3bar":"MIXED","projected_rvol":0.101479},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":584.0,"sell_vol":832.0,"unclassified_vol":0.0,"imbalance":-0.175141,"bid":12.16,"ask":12.17,"spread_pct":0.082203,"quote_size_imbalance":null,"quote_age_s":0.577922},"context":{"vwap":12.166704,"price_vs_vwap_pct":-0.027977,"ema9":12.159481,"ema20":12.140569,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.615693,"dist_to_hod_atr":5.115012,"atr":0.063871,"spread_atr":0.156566,"own_change_pct":-0.20517,"rel_strength_pct":{"SPY":-0.183119,"IWM":-0.164972}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.293513},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7ef073e0e953","ts":"2026-09-21T15:56:22.636037+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0,"target":12.29,"target_label":"prev_day_high","reward_risk":0.65,"pos_in_5d_range_pct":62.1,"room_to_5d_high_atr":0.61},"price":12.1753,"vwap":12.1667,"ext_from_open_pct":-1.01,"max_ext_allowed_pct":3.0,"volume_pace":0.841,"trend":"flat","recent_slope_pct":-0.0206,"volatility":"medium"},"price":12.1753,"volume":{"bars":146,"last_bar_volume":14710.0,"baseline_avg":8777.55,"bar_rvol":1.675866,"raw_accel":4.20708,"smooth_accel":-0.487353,"accel_momentum":-0.052471,"rvol_3bar":[0.952354,0.31283,1.675866],"trend_3bar":"MIXED","projected_rvol":0.099049},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":637.0,"sell_vol":408.0,"unclassified_vol":0.0,"imbalance":0.219139,"bid":12.16,"ask":12.17,"spread_pct":0.082203,"quote_size_imbalance":null,"quote_age_s":1.212082},"context":{"vwap":12.166704,"price_vs_vwap_pct":0.070653,"ema9":12.159481,"ema20":12.140569,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.519616,"dist_to_hod_atr":4.927133,"atr":0.063871,"spread_atr":0.156566,"own_change_pct":-0.20517,"rel_strength_pct":{"SPY":-0.183119,"IWM":-0.164972}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.367247},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dc5e9f7da853","ts":"2026-09-21T15:56:27.716580+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.15 below VWAP $12.17","plan":{"state":"PASS","setup":"","stop":11.9797,"target":12.29,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":60.3,"room_to_5d_high_atr":0.63},"price":12.155,"vwap":12.1667,"ext_from_open_pct":-1.18,"max_ext_allowed_pct":3.0,"volume_pace":0.841,"trend":"flat","recent_slope_pct":-0.054,"volatility":"medium"},"price":12.155,"volume":{"bars":146,"last_bar_volume":14710.0,"baseline_avg":8777.55,"bar_rvol":1.675866,"raw_accel":4.20708,"smooth_accel":-0.487353,"accel_momentum":-0.052471,"rvol_3bar":[0.952354,0.31283,1.675866],"trend_3bar":"MIXED","projected_rvol":0.554415},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":1438.0,"sell_vol":1021.0,"unclassified_vol":0.0,"imbalance":0.169581,"bid":12.15,"ask":12.16,"spread_pct":0.082271,"quote_size_imbalance":null,"quote_age_s":0.746143},"context":{"vwap":12.166704,"price_vs_vwap_pct":-0.096196,"ema9":12.159481,"ema20":12.140569,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.682146,"dist_to_hod_atr":5.244962,"atr":0.063871,"spread_atr":0.156566,"own_change_pct":-0.20517,"rel_strength_pct":{"SPY":-0.183119,"IWM":-0.164972}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.284195},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e4d0e232bbbe","ts":"2026-09-21T15:57:03.396541+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.245,"target":13.65,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":151.5,"room_to_5d_high_atr":-1.54},"price":12.969,"vwap":12.8257,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":4.0,"volume_pace":0.734,"trend":"flat","recent_slope_pct":-0.0478,"volatility":"high"},"price":12.969,"volume":{"bars":147,"last_bar_volume":3577.0,"baseline_avg":12281.85,"bar_rvol":0.291243,"raw_accel":-0.906046,"smooth_accel":0.921519,"accel_momentum":-1.210831,"rvol_3bar":[1.287215,3.547703,0.291243],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":931.0,"sell_vol":537.0,"unclassified_vol":0.0,"imbalance":0.268392,"bid":12.94,"ask":12.97,"spread_pct":0.231571,"quote_size_imbalance":null,"quote_age_s":1.392438},"context":{"vwap":12.825703,"price_vs_vwap_pct":1.117263,"ema9":12.991274,"ema20":12.984289,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.021739,"dist_to_hod_atr":5.421442,"atr":0.15328,"spread_atr":0.19572,"own_change_pct":-0.765697,"rel_strength_pct":{"SPY":-0.739753,"IWM":-0.730739}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.078167},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0731cf167ba5","ts":"2026-09-21T15:57:08.542936+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.58,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.215,"vwap":5.1749,"ext_from_open_pct":0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.913,"trend":"flat","recent_slope_pct":-0.1032,"volatility":"unknown"},"price":5.215,"volume":{"bars":147,"last_bar_volume":28470.0,"baseline_avg":33016.6,"bar_rvol":0.862294,"raw_accel":-0.611543,"smooth_accel":0.955333,"accel_momentum":1.159403,"rvol_3bar":[1.044694,2.473928,0.862294],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":2283.0,"sell_vol":2771.0,"unclassified_vol":0.0,"imbalance":-0.096557,"bid":5.21,"ask":5.22,"spread_pct":0.191755,"quote_size_imbalance":null,"quote_age_s":0.447001},"context":{"vwap":5.174855,"price_vs_vwap_pct":0.77577,"ema9":5.229735,"ema20":5.217383,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.603774,"dist_to_hod_atr":2.698128,"atr":0.031503,"spread_atr":0.317427,"own_change_pct":0.366118,"rel_strength_pct":{"SPY":0.392062,"IWM":0.401076}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.083261},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"392ae1a80d42","ts":"2026-09-21T15:57:23.787572+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3514,"target":9.3,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":89.5,"room_to_5d_high_atr":0.18},"price":8.838,"vwap":8.6743,"ext_from_open_pct":1.35,"max_ext_allowed_pct":3.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":-0.0379,"volatility":"medium"},"price":8.838,"volume":{"bars":147,"last_bar_volume":11403.0,"baseline_avg":15616.3,"bar_rvol":0.730199,"raw_accel":0.509332,"smooth_accel":-0.514551,"accel_momentum":-0.28766,"rvol_3bar":[1.30561,0.481672,0.730199],"trend_3bar":"MIXED","projected_rvol":0.508784},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":3638.0,"sell_vol":6668.0,"unclassified_vol":0.0,"imbalance":-0.294003,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.052119},"context":{"vwap":8.674135,"price_vs_vwap_pct":1.889117,"ema9":8.85069,"ema20":8.840259,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.601911,"dist_to_hod_atr":3.361445,"atr":0.070238,"spread_atr":0.142374,"own_change_pct":-0.365091,"rel_strength_pct":{"SPY":-0.339147,"IWM":-0.330133}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.214681},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"885731c61648","ts":"2026-09-21T15:57:44.170027+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.41,"target":8.76,"target_label":"premarket_high","reward_risk":0.13,"pos_in_5d_range_pct":128.8,"room_to_5d_high_atr":-0.91},"price":8.72,"vwap":8.62,"ext_from_open_pct":1.16,"max_ext_allowed_pct":3.0,"volume_pace":1.007,"trend":"flat","recent_slope_pct":-0.1127,"volatility":"medium"},"price":8.72,"volume":{"bars":147,"last_bar_volume":3817.0,"baseline_avg":2278.05,"bar_rvol":1.675556,"raw_accel":1.372281,"smooth_accel":0.475248,"accel_momentum":1.120712,"rvol_3bar":[0.318195,0.671957,1.675556],"trend_3bar":"ACCELERATING","projected_rvol":0.187833},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":19.0,"sell_vol":182.0,"unclassified_vol":0.0,"imbalance":-0.810945,"bid":8.72,"ask":8.73,"spread_pct":0.114613,"quote_size_imbalance":null,"quote_age_s":4.551945},"context":{"vwap":8.619953,"price_vs_vwap_pct":1.160645,"ema9":8.751885,"ema20":8.745923,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.551323,"dist_to_hod_atr":5.137667,"atr":0.044437,"spread_atr":0.22504,"own_change_pct":-0.366438,"rel_strength_pct":{"SPY":-0.340495,"IWM":-0.331481}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.358784},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6504044545ea","ts":"2026-09-21T15:57:59.375341+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.245,"target":13.65,"target_label":"premarket_high","reward_risk":1.05,"pos_in_5d_range_pct":150.7,"room_to_5d_high_atr":-1.52},"price":12.9297,"vwap":12.8259,"ext_from_open_pct":-0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.731,"trend":"flat","recent_slope_pct":-0.1085,"volatility":"high"},"price":12.9297,"volume":{"bars":147,"last_bar_volume":3577.0,"baseline_avg":12281.85,"bar_rvol":0.291243,"raw_accel":-0.906046,"smooth_accel":0.921519,"accel_momentum":-1.210831,"rvol_3bar":[1.287215,3.547703,0.291243],"trend_3bar":"MIXED","projected_rvol":0.60367},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":734.0,"sell_vol":5066.0,"unclassified_vol":0.0,"imbalance":-0.746897,"bid":12.89,"ask":12.93,"spread_pct":0.309837,"quote_size_imbalance":null,"quote_age_s":3.958681},"context":{"vwap":12.825703,"price_vs_vwap_pct":0.810847,"ema9":12.991274,"ema20":12.984289,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.306522,"dist_to_hod_atr":5.677835,"atr":0.15328,"spread_atr":0.26096,"own_change_pct":-0.765697,"rel_strength_pct":{"SPY":-0.739753,"IWM":-0.730739}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.217528},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fb3689fc4f59","ts":"2026-09-21T15:58:04.504324+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.5378,"target":13.65,"target_label":"premarket_high","reward_risk":1.84,"pos_in_5d_range_pct":150.7,"room_to_5d_high_atr":-1.52},"price":12.9296,"vwap":12.8259,"ext_from_open_pct":-0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.73,"trend":"flat","recent_slope_pct":-0.0627,"volatility":"high"},"price":12.9296,"volume":{"bars":148,"last_bar_volume":7337.0,"baseline_avg":12096.1,"bar_rvol":0.606559,"raw_accel":1.05116,"smooth_accel":0.350295,"accel_momentum":-0.571224,"rvol_3bar":[3.547703,0.291243,0.606559],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":720.0,"sell_vol":4064.0,"unclassified_vol":0.0,"imbalance":-0.698997,"bid":12.87,"ask":12.93,"spread_pct":0.465116,"quote_size_imbalance":null,"quote_age_s":4.946511},"context":{"vwap":12.825894,"price_vs_vwap_pct":0.808566,"ema9":12.978959,"ema20":12.97909,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.307246,"dist_to_hod_atr":5.910625,"atr":0.14726,"spread_atr":0.407442,"own_change_pct":-1.600457,"rel_strength_pct":{"SPY":-1.570619,"IWM":-1.581229}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.423983},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4071c6152df6","ts":"2026-09-21T15:58:04.504324+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.8% above open $8.69 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.1608,"target":9.3877,"target_label":"clear air (typical 60-min move)","reward_risk":0.94,"pos_in_5d_range_pct":317.0,"room_to_5d_high_atr":-4.71},"price":9.2777,"vwap":9.1752,"ext_from_open_pct":6.76,"max_ext_allowed_pct":5.0,"volume_pace":8.881,"trend":"flat","recent_slope_pct":0.1545,"volatility":"medium"},"price":9.2777,"volume":{"bars":148,"last_bar_volume":46407.0,"baseline_avg":93987.0,"bar_rvol":0.49376,"raw_accel":-0.544771,"smooth_accel":-0.211496,"accel_momentum":-0.125178,"rvol_3bar":[0.575865,1.061003,0.49376],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":8835.0,"sell_vol":3452.0,"unclassified_vol":0.0,"imbalance":0.438105,"bid":9.27,"ask":9.28,"spread_pct":0.107817,"quote_size_imbalance":null,"quote_age_s":0.058552},"context":{"vwap":9.175182,"price_vs_vwap_pct":1.117339,"ema9":9.249846,"ema20":9.228876,"ema_stack":true,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-3.758299,"dist_to_hod_atr":2.68073,"atr":0.13515,"spread_atr":0.073992,"own_change_pct":-0.134662,"rel_strength_pct":{"SPY":-0.104824,"IWM":-0.115434}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.216319},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"27b195c46217","ts":"2026-09-21T15:58:35.457374+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.21,"vwap":5.175,"ext_from_open_pct":0.19,"max_ext_allowed_pct":3.0,"volume_pace":0.906,"trend":"flat","recent_slope_pct":-0.1652,"volatility":"unknown"},"price":5.21,"volume":{"bars":148,"last_bar_volume":11414.0,"baseline_avg":33723.8,"bar_rvol":0.338455,"raw_accel":-0.599087,"smooth_accel":0.747861,"accel_momentum":-0.207472,"rvol_3bar":[2.473928,0.862294,0.338455],"trend_3bar":"DECELERATING","projected_rvol":0.160166},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":669.0,"sell_vol":2230.0,"unclassified_vol":0.0,"imbalance":-0.538462,"bid":5.21,"ask":5.22,"spread_pct":0.191755,"quote_size_imbalance":null,"quote_age_s":0.3183},"context":{"vwap":5.174966,"price_vs_vwap_pct":0.676985,"ema9":5.228508,"ema20":5.217975,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.698113,"dist_to_hod_atr":2.892939,"atr":0.03111,"spread_atr":0.321438,"own_change_pct":-0.217765,"rel_strength_pct":{"SPY":-0.187927,"IWM":-0.198537}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.182245},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"cd145b513393","ts":"2026-09-21T15:58:40.596087+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.58,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.215,"vwap":5.175,"ext_from_open_pct":0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.906,"trend":"flat","recent_slope_pct":-0.1461,"volatility":"unknown"},"price":5.215,"volume":{"bars":148,"last_bar_volume":11414.0,"baseline_avg":33723.8,"bar_rvol":0.338455,"raw_accel":-0.599087,"smooth_accel":0.747861,"accel_momentum":-0.207472,"rvol_3bar":[2.473928,0.862294,0.338455],"trend_3bar":"DECELERATING","projected_rvol":0.150586},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":573.0,"sell_vol":1732.0,"unclassified_vol":0.0,"imbalance":-0.50282,"bid":5.21,"ask":5.22,"spread_pct":0.191755,"quote_size_imbalance":null,"quote_age_s":2.873768},"context":{"vwap":5.174966,"price_vs_vwap_pct":0.773604,"ema9":5.228508,"ema20":5.217975,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.603774,"dist_to_hod_atr":2.73222,"atr":0.03111,"spread_atr":0.321438,"own_change_pct":-0.217765,"rel_strength_pct":{"SPY":-0.187927,"IWM":-0.198537}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.170182},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"d46fe07e28f1","ts":"2026-09-21T15:59:01.154518+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.41,"target":8.76,"target_label":"premarket_high","reward_risk":0.11,"pos_in_5d_range_pct":129.2,"room_to_5d_high_atr":-0.92},"price":8.725,"vwap":8.6205,"ext_from_open_pct":1.22,"max_ext_allowed_pct":3.0,"volume_pace":1.003,"trend":"flat","recent_slope_pct":-0.072,"volatility":"medium"},"price":8.725,"volume":{"bars":149,"last_bar_volume":2987.0,"baseline_avg":2060.4,"bar_rvol":1.449719,"raw_accel":4.798874,"smooth_accel":1.135588,"accel_momentum":-0.930071,"rvol_3bar":[1.675556,0.214993,1.449719],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":1593.0,"sell_vol":1348.0,"unclassified_vol":0.0,"imbalance":0.083305,"bid":8.72,"ask":8.73,"spread_pct":0.114613,"quote_size_imbalance":null,"quote_age_s":9.674532},"context":{"vwap":8.62047,"price_vs_vwap_pct":1.212577,"ema9":8.745599,"ema20":8.743954,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.495446,"dist_to_hod_atr":5.190085,"atr":0.043024,"spread_atr":0.232427,"own_change_pct":-0.360871,"rel_strength_pct":{"SPY":-0.337519,"IWM":-0.33989}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.120769},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a448d26b1873","ts":"2026-09-21T15:59:01.154518+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.59,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2144,"vwap":5.175,"ext_from_open_pct":0.28,"max_ext_allowed_pct":3.0,"volume_pace":0.904,"trend":"flat","recent_slope_pct":-0.0647,"volatility":"unknown"},"price":5.2144,"volume":{"bars":149,"last_bar_volume":5222.0,"baseline_avg":32291.7,"bar_rvol":0.161713,"raw_accel":-0.542492,"smooth_accel":-0.617794,"accel_momentum":-1.365655,"rvol_3bar":[0.862294,0.338455,0.161713],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":300.0,"sell_vol":1856.0,"unclassified_vol":0.0,"imbalance":-0.721707,"bid":5.21,"ask":5.22,"spread_pct":0.191755,"quote_size_imbalance":null,"quote_age_s":2.086565},"context":{"vwap":5.17502,"price_vs_vwap_pct":0.760968,"ema9":5.229486,"ema20":5.219444,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.615094,"dist_to_hod_atr":2.796518,"atr":0.030609,"spread_atr":0.326696,"own_change_pct":-0.030564,"rel_strength_pct":{"SPY":-0.007212,"IWM":-0.009583}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.11671},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"6f59a98da6c8","ts":"2026-09-21T15:59:01.154518+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":6.3742,"target":7.775,"target_label":"range_20d_high","reward_risk":20.76,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4386,"vwap":6.3225,"ext_from_open_pct":2.36,"max_ext_allowed_pct":3.0,"volume_pace":1.326,"trend":"flat","recent_slope_pct":-0.1095,"volatility":"unknown"},"price":6.4386,"volume":{"bars":149,"last_bar_volume":75124.0,"baseline_avg":89827.85,"bar_rvol":0.836311,"raw_accel":1.032631,"smooth_accel":-0.334017,"accel_momentum":0.140716,"rvol_3bar":[0.474036,0.40171,0.836311],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":120,"trade_rate":4.0,"buy_vol":15857.0,"sell_vol":36141.0,"unclassified_vol":0.0,"imbalance":-0.390092,"bid":6.43,"ask":6.44,"spread_pct":0.1554,"quote_size_imbalance":null,"quote_age_s":1.155198},"context":{"vwap":6.322542,"price_vs_vwap_pct":1.835615,"ema9":6.450497,"ema20":6.442053,"ema_stack":false,"ema_warm":true,"hod":6.47,"dist_to_hod_pct":-0.485317,"dist_to_hod_atr":0.712952,"atr":0.044042,"spread_atr":0.227055,"own_change_pct":-0.508886,"rel_strength_pct":{"SPY":-0.485534,"IWM":-0.487906}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.326238},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7ecc21c69ba3","ts":"2026-09-21T15:59:06.330450+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.2667,"target":8.5465,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.24,"vwap":8.2075,"ext_from_open_pct":2.87,"max_ext_allowed_pct":4.0,"volume_pace":3.259,"trend":"flat","recent_slope_pct":-0.2537,"volatility":"unknown"},"price":8.24,"volume":{"bars":148,"last_bar_volume":8671.0,"baseline_avg":2825.75,"bar_rvol":3.068566,"raw_accel":2.427273,"smooth_accel":3.906939,"accel_momentum":3.371014,"rvol_3bar":[0.288338,0.880858,3.068566],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":20.0,"sell_vol":677.0,"unclassified_vol":0.0,"imbalance":-0.942611,"bid":8.2,"ask":8.27,"spread_pct":0.85003,"quote_size_imbalance":null,"quote_age_s":8.29433},"context":{"vwap":8.207517,"price_vs_vwap_pct":0.395766,"ema9":8.282743,"ema20":8.269569,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.962704,"dist_to_hod_atr":3.335982,"atr":0.101919,"spread_atr":0.68682,"own_change_pct":-0.161148,"rel_strength_pct":{"SPY":-0.137796,"IWM":-0.140167}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.892465},"shadow":{"decision":"FAIL","failed":["imbalance","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dff75f229c41","ts":"2026-09-21T15:59:21.723625+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.76,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2,"vwap":5.1751,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":-0.1198,"volatility":"unknown"},"price":5.2,"volume":{"bars":149,"last_bar_volume":5222.0,"baseline_avg":32291.7,"bar_rvol":0.161713,"raw_accel":-0.542492,"smooth_accel":-0.617794,"accel_momentum":-1.365655,"rvol_3bar":[0.862294,0.338455,0.161713],"trend_3bar":"DECELERATING","projected_rvol":0.58136},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":2062.0,"sell_vol":5227.0,"unclassified_vol":0.0,"imbalance":-0.434216,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":0.106166},"context":{"vwap":5.17502,"price_vs_vwap_pct":0.482708,"ema9":5.229486,"ema20":5.219444,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.886792,"dist_to_hod_atr":3.26696,"atr":0.030609,"spread_atr":0.326696,"own_change_pct":-0.030564,"rel_strength_pct":{"SPY":-0.007212,"IWM":-0.009583}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.070219},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"d4185d131765","ts":"2026-09-21T15:59:36.938722+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2281,"vwap":5.1751,"ext_from_open_pct":0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.902,"trend":"flat","recent_slope_pct":-0.0122,"volatility":"unknown"},"price":5.2281,"volume":{"bars":149,"last_bar_volume":5222.0,"baseline_avg":32291.7,"bar_rvol":0.161713,"raw_accel":-0.542492,"smooth_accel":-0.617794,"accel_momentum":-1.365655,"rvol_3bar":[0.862294,0.338455,0.161713],"trend_3bar":"DECELERATING","projected_rvol":0.513123},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":4652.0,"sell_vol":4834.0,"unclassified_vol":0.0,"imbalance":-0.019186,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":8.477175},"context":{"vwap":5.17502,"price_vs_vwap_pct":1.025701,"ema9":5.229486,"ema20":5.219444,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.356604,"dist_to_hod_atr":2.348944,"atr":0.030609,"spread_atr":0.326696,"own_change_pct":-0.030564,"rel_strength_pct":{"SPY":-0.007212,"IWM":-0.009583}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.003103},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"77b45b3baa46","ts":"2026-09-21T15:59:42.003042+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.205,"vwap":5.1751,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.902,"trend":"flat","recent_slope_pct":-0.1007,"volatility":"unknown"},"price":5.205,"volume":{"bars":149,"last_bar_volume":5222.0,"baseline_avg":32291.7,"bar_rvol":0.161713,"raw_accel":-0.542492,"smooth_accel":-0.617794,"accel_momentum":-1.365655,"rvol_3bar":[0.862294,0.338455,0.161713],"trend_3bar":"DECELERATING","projected_rvol":0.464526},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":4650.0,"sell_vol":5134.0,"unclassified_vol":0.0,"imbalance":-0.049469,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":4.048385},"context":{"vwap":5.17502,"price_vs_vwap_pct":0.579326,"ema9":5.229486,"ema20":5.219444,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.792453,"dist_to_hod_atr":3.103612,"atr":0.030609,"spread_atr":0.326696,"own_change_pct":-0.030564,"rel_strength_pct":{"SPY":-0.007212,"IWM":-0.009583}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.008},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"9d2aec29e7d9","ts":"2026-09-21T15:59:47.092193+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.44,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2291,"vwap":5.1751,"ext_from_open_pct":0.56,"max_ext_allowed_pct":4.0,"volume_pace":0.901,"trend":"flat","recent_slope_pct":-0.0084,"volatility":"unknown"},"price":5.2291,"volume":{"bars":149,"last_bar_volume":5222.0,"baseline_avg":32291.7,"bar_rvol":0.161713,"raw_accel":-0.542492,"smooth_accel":-0.617794,"accel_momentum":-1.365655,"rvol_3bar":[0.862294,0.338455,0.161713],"trend_3bar":"DECELERATING","projected_rvol":0.414563},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":4556.0,"sell_vol":4070.0,"unclassified_vol":0.0,"imbalance":0.056341,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":4.630802},"context":{"vwap":5.17502,"price_vs_vwap_pct":1.045025,"ema9":5.229486,"ema20":5.219444,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.337736,"dist_to_hod_atr":2.316274,"atr":0.030609,"spread_atr":0.326696,"own_change_pct":-0.030564,"rel_strength_pct":{"SPY":-0.007212,"IWM":-0.009583}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.009111},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b6db4d402738","ts":"2026-09-21T15:59:52.244514+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.205,"vwap":5.1751,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.902,"trend":"flat","recent_slope_pct":-0.1007,"volatility":"unknown"},"price":5.205,"volume":{"bars":149,"last_bar_volume":5222.0,"baseline_avg":32291.7,"bar_rvol":0.161713,"raw_accel":-0.542492,"smooth_accel":-0.617794,"accel_momentum":-1.365655,"rvol_3bar":[0.862294,0.338455,0.161713],"trend_3bar":"DECELERATING","projected_rvol":0.575509},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":2961.0,"sell_vol":6418.0,"unclassified_vol":0.0,"imbalance":-0.368589,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":0.431683},"context":{"vwap":5.17502,"price_vs_vwap_pct":0.579326,"ema9":5.229486,"ema20":5.219444,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.792453,"dist_to_hod_atr":3.103612,"atr":0.030609,"spread_atr":0.326696,"own_change_pct":-0.030564,"rel_strength_pct":{"SPY":-0.007212,"IWM":-0.009583}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.059606},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"d9390cd881be","ts":"2026-09-21T15:59:57.368222+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.46,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2275,"vwap":5.1752,"ext_from_open_pct":0.53,"max_ext_allowed_pct":4.0,"volume_pace":0.901,"trend":"flat","recent_slope_pct":-0.0145,"volatility":"unknown"},"price":5.2275,"volume":{"bars":149,"last_bar_volume":5222.0,"baseline_avg":32291.7,"bar_rvol":0.161713,"raw_accel":-0.542492,"smooth_accel":-0.617794,"accel_momentum":-1.365655,"rvol_3bar":[0.862294,0.338455,0.161713],"trend_3bar":"DECELERATING","projected_rvol":0.533857},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":782.0,"sell_vol":6378.0,"unclassified_vol":0.0,"imbalance":-0.781564,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":1.450465},"context":{"vwap":5.17502,"price_vs_vwap_pct":1.014107,"ema9":5.229486,"ema20":5.219444,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.367925,"dist_to_hod_atr":2.368546,"atr":0.030609,"spread_atr":0.326696,"own_change_pct":-0.030564,"rel_strength_pct":{"SPY":-0.007212,"IWM":-0.009583}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.126389},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"4fa94bc6557d","ts":"2026-09-21T16:00:02.549272+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1824,"target":9.09,"target_label":"range_20d_high","reward_risk":9.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.265,"vwap":8.2075,"ext_from_open_pct":3.18,"max_ext_allowed_pct":4.0,"volume_pace":3.24,"trend":"flat","recent_slope_pct":-0.1424,"volatility":"unknown"},"price":8.265,"volume":{"bars":149,"last_bar_volume":409.0,"baseline_avg":3128.2,"bar_rvol":0.130746,"raw_accel":-0.952831,"smooth_accel":4.437939,"accel_momentum":0.531,"rvol_3bar":[0.880858,3.068566,0.130746],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":63.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.909091,"bid":8.24,"ask":8.27,"spread_pct":0.363416,"quote_size_imbalance":null,"quote_age_s":20.035417},"context":{"vwap":8.207541,"price_vs_vwap_pct":0.700078,"ema9":8.276135,"ema20":8.267677,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.671329,"dist_to_hod_atr":3.230894,"atr":0.097496,"spread_atr":0.307704,"own_change_pct":-0.460913,"rel_strength_pct":{"SPY":-0.467401,"IWM":-0.462662}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.11886},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"88822f9eea95","ts":"2026-09-21T16:00:02.549272+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.2% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.6217,"target":6.84,"target_label":"ceiling","reward_risk":0.34,"pos_in_5d_range_pct":120.7,"room_to_5d_high_atr":-0.56},"price":6.785,"vwap":6.5428,"ext_from_open_pct":6.18,"max_ext_allowed_pct":3.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":0.1422,"volatility":"high"},"price":6.785,"volume":{"bars":150,"last_bar_volume":9763.0,"baseline_avg":4963.9,"bar_rvol":1.9668,"raw_accel":-0.356003,"smooth_accel":3.137405,"accel_momentum":-0.277201,"rvol_3bar":[0.226032,3.269708,1.9668],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":958.0,"sell_vol":1077.0,"unclassified_vol":0.0,"imbalance":-0.058477,"bid":6.78,"ask":6.79,"spread_pct":0.147384,"quote_size_imbalance":null,"quote_age_s":1.61436},"context":{"vwap":6.542834,"price_vs_vwap_pct":3.701247,"ema9":6.754894,"ema20":6.7398,"ema_stack":true,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-0.804094,"dist_to_hod_atr":1.184667,"atr":0.046427,"spread_atr":0.215394,"own_change_pct":0.444444,"rel_strength_pct":{"SPY":0.437957,"IWM":0.442696}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.115012},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dc1d8b54a145","ts":"2026-09-21T16:00:02.549272+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.46,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2275,"vwap":5.1751,"ext_from_open_pct":0.53,"max_ext_allowed_pct":4.0,"volume_pace":0.901,"trend":"flat","recent_slope_pct":-0.0681,"volatility":"unknown"},"price":5.2275,"volume":{"bars":150,"last_bar_volume":16684.0,"baseline_avg":32268.6,"bar_rvol":0.517035,"raw_accel":1.068141,"smooth_accel":-0.747797,"accel_momentum":-0.130003,"rvol_3bar":[0.338455,0.161713,0.517035],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":588.0,"sell_vol":6305.0,"unclassified_vol":0.0,"imbalance":-0.829392,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":0.979506},"context":{"vwap":5.175148,"price_vs_vwap_pct":1.011613,"ema9":5.224589,"ema20":5.218069,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.367925,"dist_to_hod_atr":2.347236,"atr":0.030887,"spread_atr":0.323757,"own_change_pct":-0.857143,"rel_strength_pct":{"SPY":-0.863631,"IWM":-0.858892}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.428825},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"64bd77866c07","ts":"2026-09-21T16:00:07.960262+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.4s / 18s","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.205,"vwap":5.1752,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.901,"trend":"flat","recent_slope_pct":-0.1544,"volatility":"unknown"},"price":5.205,"volume":{"bars":150,"last_bar_volume":16684.0,"baseline_avg":32268.6,"bar_rvol":0.517035,"raw_accel":1.068141,"smooth_accel":-0.747797,"accel_momentum":-0.130003,"rvol_3bar":[0.338455,0.161713,0.517035],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1788.0,"sell_vol":6459.0,"unclassified_vol":0.0,"imbalance":-0.566388,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":3.450363},"context":{"vwap":5.175148,"price_vs_vwap_pct":0.576843,"ema9":5.224589,"ema20":5.218069,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.792453,"dist_to_hod_atr":3.075689,"atr":0.030887,"spread_atr":0.323757,"own_change_pct":-0.857143,"rel_strength_pct":{"SPY":-0.863631,"IWM":-0.858892}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.292842},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a518b21e5bae","ts":"2026-09-21T16:01:04.696745+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3514,"target":8.82,"target_label":"prev_day_high","reward_risk":0.04,"pos_in_5d_range_pct":84.2,"room_to_5d_high_atr":0.26},"price":8.8,"vwap":8.6758,"ext_from_open_pct":0.92,"max_ext_allowed_pct":4.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":-0.1071,"volatility":"medium"},"price":8.8,"volume":{"bars":151,"last_bar_volume":5624.0,"baseline_avg":15309.9,"bar_rvol":0.367344,"raw_accel":-0.345438,"smooth_accel":0.129113,"accel_momentum":0.353186,"rvol_3bar":[0.938395,0.54049,0.367344],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1722.0,"sell_vol":842.0,"unclassified_vol":0.0,"imbalance":0.343214,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":0.449047},"context":{"vwap":8.675751,"price_vs_vwap_pct":1.432145,"ema9":8.838363,"ema20":8.837187,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.020685,"dist_to_hod_atr":4.002704,"atr":0.068479,"spread_atr":0.146031,"own_change_pct":-0.556076,"rel_strength_pct":{"SPY":-0.532722,"IWM":-0.512364}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.126078},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"1ddf8df0c201","ts":"2026-09-21T16:01:19.996762+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"held 77.4s, plan says WATCH; stop 5.07, target 5.30 (prev_day_high), R:R 0.44; R:R 0.44 < 2.0 at 5.23; breakout: 1-min close > 5.26 on >= 39205 sh","plan":{"state":"WATCH","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.44,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2293,"vwap":5.1754,"ext_from_open_pct":0.56,"max_ext_allowed_pct":4.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":-0.023,"volatility":"unknown"},"price":5.2293,"volume":{"bars":151,"last_bar_volume":25205.0,"baseline_avg":32626.3,"bar_rvol":0.772536,"raw_accel":0.510729,"smooth_accel":-0.583729,"accel_momentum":0.164068,"rvol_3bar":[0.161713,0.517035,0.772536],"trend_3bar":"ACCELERATING","projected_rvol":0.405843},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":3056.0,"sell_vol":2564.0,"unclassified_vol":0.0,"imbalance":0.087544,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":0.449196},"context":{"vwap":5.175339,"price_vs_vwap_pct":1.042663,"ema9":5.221671,"ema20":5.2173,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.333962,"dist_to_hod_atr":2.297393,"atr":0.030774,"spread_atr":0.32495,"own_change_pct":-0.382409,"rel_strength_pct":{"SPY":-0.359056,"IWM":-0.338698}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.067631},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7d2c4077c473","ts":"2026-09-21T16:01:25.095794+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"held 82.5s, plan says PASS; stop 5.07, target 5.30 (prev_day_high), R:R 0.64; R:R 0.64 < 2.0 at 5.21; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2099,"vwap":5.1754,"ext_from_open_pct":0.19,"max_ext_allowed_pct":4.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":-0.0974,"volatility":"unknown"},"price":5.2099,"volume":{"bars":151,"last_bar_volume":25205.0,"baseline_avg":32626.3,"bar_rvol":0.772536,"raw_accel":0.510729,"smooth_accel":-0.583729,"accel_momentum":0.164068,"rvol_3bar":[0.161713,0.517035,0.772536],"trend_3bar":"ACCELERATING","projected_rvol":0.343974},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":2030.0,"sell_vol":2664.0,"unclassified_vol":0.0,"imbalance":-0.135066,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":0.661322},"context":{"vwap":5.175339,"price_vs_vwap_pct":0.667808,"ema9":5.221671,"ema20":5.2173,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.7,"dist_to_hod_atr":2.927796,"atr":0.030774,"spread_atr":0.32495,"own_change_pct":-0.382409,"rel_strength_pct":{"SPY":-0.359056,"IWM":-0.338698}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.104343},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e9620b11d3f3","ts":"2026-09-21T16:01:30.193489+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"held 87.6s, plan says WATCH; stop 5.07, target 5.30 (prev_day_high), R:R 0.44; R:R 0.44 < 2.0 at 5.23; breakout: 1-min close > 5.26 on >= 39205 sh","plan":{"state":"WATCH","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.44,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2293,"vwap":5.1754,"ext_from_open_pct":0.56,"max_ext_allowed_pct":4.0,"volume_pace":0.897,"trend":"flat","recent_slope_pct":-0.023,"volatility":"unknown"},"price":5.2293,"volume":{"bars":151,"last_bar_volume":25205.0,"baseline_avg":32626.3,"bar_rvol":0.772536,"raw_accel":0.510729,"smooth_accel":-0.583729,"accel_momentum":0.164068,"rvol_3bar":[0.161713,0.517035,0.772536],"trend_3bar":"ACCELERATING","projected_rvol":0.29199},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":2122.0,"sell_vol":2664.0,"unclassified_vol":0.0,"imbalance":-0.113247,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":0.337102},"context":{"vwap":5.175339,"price_vs_vwap_pct":1.042663,"ema9":5.221671,"ema20":5.2173,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.333962,"dist_to_hod_atr":2.297393,"atr":0.030774,"spread_atr":0.32495,"own_change_pct":-0.382409,"rel_strength_pct":{"SPY":-0.359056,"IWM":-0.338698}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.087487},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"384d8dd33734","ts":"2026-09-21T16:01:35.344714+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"held 92.8s, plan says PASS; stop 5.07, target 5.30 (prev_day_high), R:R 0.69; R:R 0.69 < 2.0 at 5.21; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2057,"vwap":5.1754,"ext_from_open_pct":0.11,"max_ext_allowed_pct":4.0,"volume_pace":0.897,"trend":"flat","recent_slope_pct":-0.1135,"volatility":"unknown"},"price":5.2057,"volume":{"bars":151,"last_bar_volume":25205.0,"baseline_avg":32626.3,"bar_rvol":0.772536,"raw_accel":0.510729,"smooth_accel":-0.583729,"accel_momentum":0.164068,"rvol_3bar":[0.161713,0.517035,0.772536],"trend_3bar":"ACCELERATING","projected_rvol":0.268374},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1946.0,"sell_vol":1664.0,"unclassified_vol":0.0,"imbalance":0.078116,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":0.82317},"context":{"vwap":5.175339,"price_vs_vwap_pct":0.586654,"ema9":5.221671,"ema20":5.2173,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.779245,"dist_to_hod_atr":3.064274,"atr":0.030774,"spread_atr":0.32495,"own_change_pct":-0.382409,"rel_strength_pct":{"SPY":-0.359056,"IWM":-0.338698}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.060348},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6708ab34a408","ts":"2026-09-21T16:01:50.748403+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"held 108.2s, plan says WATCH; stop 5.07, target 5.30 (prev_day_high), R:R 0.44; R:R 0.44 < 2.0 at 5.23; breakout: 1-min close > 5.26 on >= 39205 sh","plan":{"state":"WATCH","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.44,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2292,"vwap":5.1754,"ext_from_open_pct":0.56,"max_ext_allowed_pct":4.0,"volume_pace":0.896,"trend":"flat","recent_slope_pct":-0.0234,"volatility":"unknown"},"price":5.2292,"volume":{"bars":151,"last_bar_volume":25205.0,"baseline_avg":32626.3,"bar_rvol":0.772536,"raw_accel":0.510729,"smooth_accel":-0.583729,"accel_momentum":0.164068,"rvol_3bar":[0.161713,0.517035,0.772536],"trend_3bar":"ACCELERATING","projected_rvol":0.209019},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":754.0,"sell_vol":601.0,"unclassified_vol":0.0,"imbalance":0.112915,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":0.796573},"context":{"vwap":5.175339,"price_vs_vwap_pct":1.040731,"ema9":5.221671,"ema20":5.2173,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.335849,"dist_to_hod_atr":2.300643,"atr":0.030774,"spread_atr":0.32495,"own_change_pct":-0.382409,"rel_strength_pct":{"SPY":-0.359056,"IWM":-0.338698}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.087231},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a211d2b9aadd","ts":"2026-09-21T16:01:55.861973+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"held 113.3s, plan says PASS; stop 5.07, target 5.30 (prev_day_high), R:R 0.70; R:R 0.70 < 2.0 at 5.21; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.3,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.205,"vwap":5.1754,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.895,"trend":"flat","recent_slope_pct":-0.1162,"volatility":"unknown"},"price":5.205,"volume":{"bars":151,"last_bar_volume":25205.0,"baseline_avg":32626.3,"bar_rvol":0.772536,"raw_accel":0.510729,"smooth_accel":-0.583729,"accel_momentum":0.164068,"rvol_3bar":[0.161713,0.517035,0.772536],"trend_3bar":"ACCELERATING","projected_rvol":0.206609},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1073.0,"sell_vol":509.0,"unclassified_vol":0.0,"imbalance":0.356511,"bid":5.2,"ask":5.21,"spread_pct":0.192123,"quote_size_imbalance":null,"quote_age_s":4.44565},"context":{"vwap":5.175339,"price_vs_vwap_pct":0.573128,"ema9":5.221671,"ema20":5.2173,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.792453,"dist_to_hod_atr":3.087021,"atr":0.030774,"spread_atr":0.32495,"own_change_pct":-0.382409,"rel_strength_pct":{"SPY":-0.359056,"IWM":-0.338698}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.275417},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f4387d1192ea","ts":"2026-09-21T16:01:55.861973+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.3781,"target":7.775,"target_label":"range_20d_high","reward_risk":20.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4425,"vwap":6.3282,"ext_from_open_pct":2.42,"max_ext_allowed_pct":3.0,"volume_pace":1.368,"trend":"flat","recent_slope_pct":-0.0566,"volatility":"unknown"},"price":6.4425,"volume":{"bars":151,"last_bar_volume":85225.0,"baseline_avg":85393.6,"bar_rvol":0.998026,"raw_accel":-0.439983,"smooth_accel":1.724089,"accel_momentum":1.632699,"rvol_3bar":[0.836311,1.799659,0.998026],"trend_3bar":"MIXED","projected_rvol":4.809466},"flow":{"window_s":30,"trades":296,"trade_rate":9.866667,"buy_vol":132635.0,"sell_vol":155137.0,"unclassified_vol":0.0,"imbalance":-0.078194,"bid":6.44,"ask":6.45,"spread_pct":0.155159,"quote_size_imbalance":null,"quote_age_s":0.03275},"context":{"vwap":6.324675,"price_vs_vwap_pct":1.862949,"ema9":6.440318,"ema20":6.438483,"ema_stack":true,"ema_warm":true,"hod":6.47,"dist_to_hod_pct":-0.425039,"dist_to_hod_atr":0.644056,"atr":0.042698,"spread_atr":0.234202,"own_change_pct":-0.619195,"rel_strength_pct":{"SPY":-0.595842,"IWM":-0.575483}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.078039},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"82ed978d49ee","ts":"2026-09-21T16:02:42.168119+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.05% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":11.165,"target":12.0486,"target_label":"premarket_high","reward_risk":2.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.405,"vwap":11.3242,"ext_from_open_pct":-1.68,"max_ext_allowed_pct":3.0,"volume_pace":0.684,"trend":"flat","recent_slope_pct":0.0526,"volatility":"unknown"},"price":11.405,"volume":{"bars":140,"last_bar_volume":36.0,"baseline_avg":1282.35,"bar_rvol":0.028073,"raw_accel":-0.887706,"smooth_accel":0.689579,"accel_momentum":0.640034,"rvol_3bar":[0.577131,0.004675,0.028073],"trend_3bar":"MIXED","projected_rvol":1.242735},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":101.0,"sell_vol":1019.0,"unclassified_vol":0.0,"imbalance":-0.819643,"bid":11.33,"ask":11.45,"spread_pct":1.053556,"quote_size_imbalance":null,"quote_age_s":3.975817},"context":{"vwap":11.323483,"price_vs_vwap_pct":0.719894,"ema9":11.396192,"ema20":11.378963,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.560669,"dist_to_hod_atr":4.728186,"atr":0.115266,"spread_atr":1.041069,"own_change_pct":-0.128669,"rel_strength_pct":{"SPY":-0.120883,"IWM":-0.100693}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.02301},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6ff9c1c7b56f","ts":"2026-09-21T16:02:47.254722+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 41.1s, plan says WATCH; stop 12.77, target 13.65 (premarket_high), R:R 1.24; R:R 1.24 < 2.0 at 13.16; pullback: buy 12.90-13.09 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":12.7732,"target":13.65,"target_label":"premarket_high","reward_risk":1.24,"pos_in_5d_range_pct":155.7,"room_to_5d_high_atr":-1.67},"price":13.165,"vwap":12.8286,"ext_from_open_pct":1.19,"max_ext_allowed_pct":3.0,"volume_pace":0.718,"trend":"flat","recent_slope_pct":0.3642,"volatility":"high"},"price":13.165,"volume":{"bars":152,"last_bar_volume":7012.0,"baseline_avg":11038.35,"bar_rvol":0.63524,"raw_accel":0.418285,"smooth_accel":0.491151,"accel_momentum":0.931848,"rvol_3bar":[1.294925,0.419017,0.63524],"trend_3bar":"MIXED","projected_rvol":3.081933},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":7257.0,"sell_vol":7514.0,"unclassified_vol":0.0,"imbalance":-0.017399,"bid":13.15,"ask":13.18,"spread_pct":0.227877,"quote_size_imbalance":null,"quote_age_s":1.146877},"context":{"vwap":12.826837,"price_vs_vwap_pct":2.636367,"ema9":12.960434,"ema20":12.968378,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.601449,"dist_to_hod_atr":5.279175,"atr":0.120284,"spread_atr":0.24941,"own_change_pct":-0.053241,"rel_strength_pct":{"SPY":-0.045456,"IWM":-0.025265}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.011053},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4a2dc082be8e","ts":"2026-09-21T16:02:57.496793+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.5786,"target":9.74,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":110.0,"room_to_5d_high_atr":-0.1},"price":9.71,"vwap":9.683,"ext_from_open_pct":0.21,"max_ext_allowed_pct":4.0,"volume_pace":0.715,"trend":"flat","recent_slope_pct":-0.0352,"volatility":"medium"},"price":9.71,"volume":{"bars":152,"last_bar_volume":2360.0,"baseline_avg":7382.65,"bar_rvol":0.319668,"raw_accel":0.126492,"smooth_accel":-0.277668,"accel_momentum":0.161539,"rvol_3bar":[0.33654,0.283309,0.319668],"trend_3bar":"MIXED","projected_rvol":0.738836},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":3106.0,"sell_vol":1646.0,"unclassified_vol":0.0,"imbalance":0.307239,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":2.229441},"context":{"vwap":9.68287,"price_vs_vwap_pct":0.28019,"ema9":9.72257,"ema20":9.715291,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.220753,"dist_to_hod_atr":3.974268,"atr":0.030194,"spread_atr":0.331189,"own_change_pct":-0.081168,"rel_strength_pct":{"SPY":-0.073383,"IWM":-0.053192}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.098215},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f47ea8d1fe3d","ts":"2026-09-21T16:02:57.496793+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"held 174.9s, plan says WATCH; stop 5.17, target 5.30 (prev_day_high), R:R 1.49; R:R 1.49 < 2.0 at 5.22; breakout: 1-min close > 5.26 on >= 39229 sh","plan":{"state":"WATCH","setup":"","stop":5.17,"target":5.3,"target_label":"prev_day_high","reward_risk":1.49,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2222,"vwap":5.1759,"ext_from_open_pct":0.43,"max_ext_allowed_pct":3.0,"volume_pace":0.901,"trend":"flat","recent_slope_pct":-0.043,"volatility":"unknown"},"price":5.2222,"volume":{"bars":152,"last_bar_volume":6473.0,"baseline_avg":32567.65,"bar_rvol":0.198756,"raw_accel":-0.743186,"smooth_accel":0.072186,"accel_momentum":0.655915,"rvol_3bar":[0.517035,0.772536,0.198756],"trend_3bar":"MIXED","projected_rvol":2.175019},"flow":{"window_s":30,"trades":117,"trade_rate":3.9,"buy_vol":11782.0,"sell_vol":18524.0,"unclassified_vol":0.0,"imbalance":-0.222464,"bid":5.19,"ask":5.2,"spread_pct":0.192493,"quote_size_imbalance":null,"quote_age_s":0.96168},"context":{"vwap":5.175385,"price_vs_vwap_pct":0.904562,"ema9":5.218337,"ema20":5.216129,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.467925,"dist_to_hod_atr":2.535015,"atr":0.03069,"spread_atr":0.325837,"own_change_pct":-0.592055,"rel_strength_pct":{"SPY":-0.58427,"IWM":-0.564079}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.044216},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"722eec3533d6","ts":"2026-09-21T16:03:02.645397+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.13,"target":12.0486,"target_label":"premarket_high","reward_risk":3.18,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.35,"vwap":11.3242,"ext_from_open_pct":-2.16,"max_ext_allowed_pct":4.0,"volume_pace":0.684,"trend":"flat","recent_slope_pct":-0.1272,"volatility":"unknown"},"price":11.35,"volume":{"bars":141,"last_bar_volume":1245.0,"baseline_avg":1275.35,"bar_rvol":0.976203,"raw_accel":2.90481,"smooth_accel":0.192771,"accel_momentum":-0.496808,"rvol_3bar":[0.004675,0.028073,0.976203],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":60.0,"sell_vol":129.0,"unclassified_vol":0.0,"imbalance":-0.365079,"bid":11.34,"ask":11.45,"spread_pct":0.965336,"quote_size_imbalance":null,"quote_age_s":0.928391},"context":{"vwap":11.324198,"price_vs_vwap_pct":0.227846,"ema9":11.394954,"ema20":11.380014,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-5.020921,"dist_to_hod_atr":5.442316,"atr":0.110247,"spread_atr":0.997758,"own_change_pct":0.087873,"rel_strength_pct":{"SPY":0.05024,"IWM":0.124589}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.356391},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e5c040ac7c18","ts":"2026-09-21T16:03:02.645397+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6207,"target":9.74,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":112.3,"room_to_5d_high_atr":-0.12},"price":9.7192,"vwap":9.683,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.714,"trend":"flat","recent_slope_pct":-0.0119,"volatility":"medium"},"price":9.7192,"volume":{"bars":153,"last_bar_volume":5232.0,"baseline_avg":7109.45,"bar_rvol":0.735922,"raw_accel":1.216949,"smooth_accel":0.716336,"accel_momentum":0.994004,"rvol_3bar":[0.283309,0.319668,0.735922],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":3012.0,"sell_vol":1643.0,"unclassified_vol":0.0,"imbalance":0.294092,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":1.018484},"context":{"vwap":9.68297,"price_vs_vwap_pct":0.374157,"ema9":9.721876,"ema20":9.715654,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.127162,"dist_to_hod_atr":3.806391,"atr":0.029109,"spread_atr":0.343537,"own_change_pct":-0.096623,"rel_strength_pct":{"SPY":-0.134256,"IWM":-0.059908}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.216429},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"373d16fc5c5c","ts":"2026-09-21T16:03:02.645397+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.25,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1901,"vwap":5.1758,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":3.0,"volume_pace":0.901,"trend":"flat","recent_slope_pct":-0.0765,"volatility":"unknown"},"price":5.1901,"volume":{"bars":153,"last_bar_volume":67889.0,"baseline_avg":29950.1,"bar_rvol":2.266737,"raw_accel":8.066948,"smooth_accel":1.988205,"accel_momentum":1.91602,"rvol_3bar":[0.772536,0.198756,2.266737],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":11374.0,"sell_vol":16229.0,"unclassified_vol":0.0,"imbalance":-0.175887,"bid":5.19,"ask":5.2,"spread_pct":0.192493,"quote_size_imbalance":null,"quote_age_s":2.046061},"context":{"vwap":5.175787,"price_vs_vwap_pct":0.276546,"ema9":5.21467,"ema20":5.214593,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.073585,"dist_to_hod_atr":3.535614,"atr":0.031084,"spread_atr":0.321712,"own_change_pct":-0.451796,"rel_strength_pct":{"SPY":-0.489429,"IWM":-0.41508}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.398689},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"73f8621ad427","ts":"2026-09-21T16:03:07.784239+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2473,"target":5.48,"target_label":"premarket_high","reward_risk":3.03,"pos_in_5d_range_pct":98.7,"room_to_5d_high_atr":0.04},"price":5.305,"vwap":5.2612,"ext_from_open_pct":-0.28,"max_ext_allowed_pct":3.0,"volume_pace":0.256,"trend":"flat","recent_slope_pct":0.0988,"volatility":"medium"},"price":5.305,"volume":{"bars":152,"last_bar_volume":4086.0,"baseline_avg":1390.1,"bar_rvol":2.939357,"raw_accel":0.180925,"smooth_accel":2.30112,"accel_momentum":1.381829,"rvol_3bar":[0.341125,2.816901,2.939357],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":307.0,"sell_vol":1012.0,"unclassified_vol":0.0,"imbalance":-0.534496,"bid":5.3,"ask":5.31,"spread_pct":0.188501,"quote_size_imbalance":null,"quote_age_s":1.995573},"context":{"vwap":5.261174,"price_vs_vwap_pct":0.833012,"ema9":5.287508,"ema20":5.284223,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.281955,"dist_to_hod_atr":1.786449,"atr":0.008397,"spread_atr":1.190966,"own_change_pct":0.27068,"rel_strength_pct":{"SPY":0.233047,"IWM":0.307395}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.571074},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7443d1a5d111","ts":"2026-09-21T16:03:07.784239+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.1696,"target":5.3,"target_label":"prev_day_high","reward_risk":1.5,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2218,"vwap":5.1758,"ext_from_open_pct":0.42,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":0.0453,"volatility":"unknown"},"price":5.2218,"volume":{"bars":153,"last_bar_volume":67889.0,"baseline_avg":29950.1,"bar_rvol":2.266737,"raw_accel":8.066948,"smooth_accel":1.988205,"accel_momentum":1.91602,"rvol_3bar":[0.772536,0.198756,2.266737],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":10352.0,"sell_vol":16228.0,"unclassified_vol":0.0,"imbalance":-0.221068,"bid":5.19,"ask":5.2,"spread_pct":0.192493,"quote_size_imbalance":null,"quote_age_s":7.184903},"context":{"vwap":5.175787,"price_vs_vwap_pct":0.889014,"ema9":5.21467,"ema20":5.214593,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.475472,"dist_to_hod_atr":2.515787,"atr":0.031084,"spread_atr":0.321712,"own_change_pct":-0.451796,"rel_strength_pct":{"SPY":-0.489429,"IWM":-0.41508}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.501104},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fb07661062a6","ts":"2026-09-21T16:03:12.960909+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1533,"target":5.25,"target_label":"ceiling","reward_risk":0.86,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.2054,"vwap":5.1758,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":-0.0177,"volatility":"unknown"},"price":5.2054,"volume":{"bars":153,"last_bar_volume":67889.0,"baseline_avg":29950.1,"bar_rvol":2.266737,"raw_accel":8.066948,"smooth_accel":1.988205,"accel_momentum":1.91602,"rvol_3bar":[0.772536,0.198756,2.266737],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":6764.0,"sell_vol":15199.0,"unclassified_vol":0.0,"imbalance":-0.384055,"bid":5.19,"ask":5.2,"spread_pct":0.192493,"quote_size_imbalance":null,"quote_age_s":0.892872},"context":{"vwap":5.175787,"price_vs_vwap_pct":0.572154,"ema9":5.21467,"ema20":5.214593,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.784906,"dist_to_hod_atr":3.043395,"atr":0.031084,"spread_atr":0.321712,"own_change_pct":-0.451796,"rel_strength_pct":{"SPY":-0.489429,"IWM":-0.41508}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.870552},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6e147f96541b","ts":"2026-09-21T16:03:23.464537+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.05% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":11.11,"target":12.0486,"target_label":"premarket_high","reward_risk":2.91,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.35,"vwap":11.3242,"ext_from_open_pct":-2.16,"max_ext_allowed_pct":3.0,"volume_pace":0.682,"trend":"flat","recent_slope_pct":-0.1272,"volatility":"unknown"},"price":11.35,"volume":{"bars":141,"last_bar_volume":1245.0,"baseline_avg":1275.35,"bar_rvol":0.976203,"raw_accel":2.90481,"smooth_accel":0.192771,"accel_momentum":-0.496808,"rvol_3bar":[0.004675,0.028073,0.976203],"trend_3bar":"ACCELERATING","projected_rvol":0.136339},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":60.0,"sell_vol":133.0,"unclassified_vol":0.0,"imbalance":-0.378238,"bid":11.33,"ask":11.45,"spread_pct":1.053556,"quote_size_imbalance":null,"quote_age_s":1.794105},"context":{"vwap":11.324198,"price_vs_vwap_pct":0.227846,"ema9":11.394954,"ema20":11.380014,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-5.020921,"dist_to_hod_atr":5.442316,"atr":0.110247,"spread_atr":1.088463,"own_change_pct":0.087873,"rel_strength_pct":{"SPY":0.05024,"IWM":0.124589}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.369237},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"64bc16774d38","ts":"2026-09-21T16:04:25.848822+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 139.7s, plan says PASS; stop 12.70, target 13.65 (premarket_high), R:R 1.42; target 0.55 away > ~0.53 reachable in 231 min","plan":{"state":"PASS","setup":"","stop":12.7036,"target":13.65,"target_label":"premarket_high","reward_risk":1.42,"pos_in_5d_range_pct":154.2,"room_to_5d_high_atr":-1.62},"price":13.0954,"vwap":12.8322,"ext_from_open_pct":0.66,"max_ext_allowed_pct":3.0,"volume_pace":0.719,"trend":"flat","recent_slope_pct":0.391,"volatility":"high"},"price":13.0954,"volume":{"bars":154,"last_bar_volume":20766.0,"baseline_avg":11161.0,"bar_rvol":1.860586,"raw_accel":-0.362732,"smooth_accel":1.203227,"accel_momentum":0.708077,"rvol_3bar":[0.63524,3.065461,1.860586],"trend_3bar":"MIXED","projected_rvol":4.359118},"flow":{"window_s":30,"trades":217,"trade_rate":7.233333,"buy_vol":11675.0,"sell_vol":10996.0,"unclassified_vol":0.0,"imbalance":0.02995,"bid":13.09,"ask":13.17,"spread_pct":0.609292,"quote_size_imbalance":null,"quote_age_s":0.458391},"context":{"vwap":12.830628,"price_vs_vwap_pct":2.063597,"ema9":13.034918,"ema20":13.004396,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.105797,"dist_to_hod_atr":5.735596,"atr":0.122847,"spread_atr":0.651217,"own_change_pct":1.880897,"rel_strength_pct":{"SPY":1.83029,"IWM":1.861661}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.055725},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bac203181c12","ts":"2026-09-21T16:04:31.012939+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 144.9s, plan says WATCH; stop 12.74, target 13.65 (premarket_high), R:R 1.33; R:R 1.33 < 2.0 at 13.13; pullback: buy 12.90-13.09 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":12.7382,"target":13.65,"target_label":"premarket_high","reward_risk":1.33,"pos_in_5d_range_pct":155.0,"room_to_5d_high_atr":-1.64},"price":13.13,"vwap":12.8323,"ext_from_open_pct":0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.719,"trend":"flat","recent_slope_pct":0.4437,"volatility":"high"},"price":13.13,"volume":{"bars":154,"last_bar_volume":20766.0,"baseline_avg":11161.0,"bar_rvol":1.860586,"raw_accel":-0.362732,"smooth_accel":1.203227,"accel_momentum":0.708077,"rvol_3bar":[0.63524,3.065461,1.860586],"trend_3bar":"MIXED","projected_rvol":3.818217},"flow":{"window_s":30,"trades":213,"trade_rate":7.1,"buy_vol":11981.0,"sell_vol":9946.0,"unclassified_vol":0.0,"imbalance":0.092808,"bid":13.09,"ask":13.17,"spread_pct":0.609292,"quote_size_imbalance":null,"quote_age_s":3.163418},"context":{"vwap":12.830628,"price_vs_vwap_pct":2.333264,"ema9":13.034918,"ema20":13.004396,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.855072,"dist_to_hod_atr":5.453944,"atr":0.122847,"spread_atr":0.651217,"own_change_pct":1.880897,"rel_strength_pct":{"SPY":1.83029,"IWM":1.861661}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.172677},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b77a8b601145","ts":"2026-09-21T16:04:36.074100+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 149.9s, plan says PASS; stop 12.73, target 13.65 (premarket_high), R:R 1.35; target 0.53 away > ~0.53 reachable in 230 min","plan":{"state":"PASS","setup":"","stop":12.7282,"target":13.65,"target_label":"premarket_high","reward_risk":1.35,"pos_in_5d_range_pct":154.7,"room_to_5d_high_atr":-1.64},"price":13.12,"vwap":12.8323,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":0.718,"trend":"flat","recent_slope_pct":0.4285,"volatility":"high"},"price":13.12,"volume":{"bars":154,"last_bar_volume":20766.0,"baseline_avg":11161.0,"bar_rvol":1.860586,"raw_accel":-0.362732,"smooth_accel":1.203227,"accel_momentum":0.708077,"rvol_3bar":[0.63524,3.065461,1.860586],"trend_3bar":"MIXED","projected_rvol":3.313819},"flow":{"window_s":30,"trades":137,"trade_rate":4.566667,"buy_vol":5502.0,"sell_vol":9833.0,"unclassified_vol":0.0,"imbalance":-0.282426,"bid":13.09,"ask":13.17,"spread_pct":0.609292,"quote_size_imbalance":null,"quote_age_s":2.283147},"context":{"vwap":12.830628,"price_vs_vwap_pct":2.255326,"ema9":13.034918,"ema20":13.004396,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.927536,"dist_to_hod_atr":5.535346,"atr":0.122847,"spread_atr":0.651217,"own_change_pct":1.880897,"rel_strength_pct":{"SPY":1.83029,"IWM":1.861661}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.525478},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"67cc21d5e36b","ts":"2026-09-21T16:04:41.202642+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 155.1s, plan says WATCH; stop 12.73, target 13.65 (premarket_high), R:R 1.34; R:R 1.34 < 2.0 at 13.12; pullback: buy 12.90-13.09 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":12.7326,"target":13.65,"target_label":"premarket_high","reward_risk":1.34,"pos_in_5d_range_pct":154.8,"room_to_5d_high_atr":-1.64},"price":13.1244,"vwap":12.8324,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.718,"trend":"flat","recent_slope_pct":0.4352,"volatility":"high"},"price":13.1244,"volume":{"bars":154,"last_bar_volume":20766.0,"baseline_avg":11161.0,"bar_rvol":1.860586,"raw_accel":-0.362732,"smooth_accel":1.203227,"accel_momentum":0.708077,"rvol_3bar":[0.63524,3.065461,1.860586],"trend_3bar":"MIXED","projected_rvol":2.960579},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":5855.0,"sell_vol":3539.0,"unclassified_vol":0.0,"imbalance":0.24654,"bid":13.13,"ask":13.17,"spread_pct":0.304183,"quote_size_imbalance":null,"quote_age_s":0.129043},"context":{"vwap":12.830628,"price_vs_vwap_pct":2.289618,"ema9":13.034918,"ema20":13.004396,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.895652,"dist_to_hod_atr":5.499529,"atr":0.122847,"spread_atr":0.325609,"own_change_pct":1.880897,"rel_strength_pct":{"SPY":1.83029,"IWM":1.861661}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.45871},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"02a9656a7db6","ts":"2026-09-21T16:05:32.833031+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6861,"target":8.82,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":83.6,"room_to_5d_high_atr":0.28},"price":8.795,"vwap":8.6775,"ext_from_open_pct":0.86,"max_ext_allowed_pct":4.0,"volume_pace":0.806,"trend":"flat","recent_slope_pct":-0.0344,"volatility":"medium"},"price":8.795,"volume":{"bars":155,"last_bar_volume":7213.0,"baseline_avg":15004.3,"bar_rvol":0.480729,"raw_accel":-0.28236,"smooth_accel":0.196578,"accel_momentum":0.202892,"rvol_3bar":[0.653695,0.67894,0.480729],"trend_3bar":"MIXED","projected_rvol":1.049496},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":6050.0,"sell_vol":2339.0,"unclassified_vol":0.0,"imbalance":0.442365,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":3.090266},"context":{"vwap":8.677181,"price_vs_vwap_pct":1.357802,"ema9":8.821568,"ema20":8.828224,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.075787,"dist_to_hod_atr":4.591038,"atr":0.060792,"spread_atr":0.164494,"own_change_pct":-0.218714,"rel_strength_pct":{"SPY":-0.258287,"IWM":-0.236202}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.212658},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"93c73d623249","ts":"2026-09-21T16:05:53.336116+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0197,"target":12.29,"target_label":"prev_day_high","reward_risk":0.54,"pos_in_5d_range_pct":63.8,"room_to_5d_high_atr":0.58},"price":12.195,"vwap":12.1664,"ext_from_open_pct":-0.85,"max_ext_allowed_pct":3.0,"volume_pace":0.81,"trend":"flat","recent_slope_pct":0.1503,"volatility":"medium"},"price":12.195,"volume":{"bars":155,"last_bar_volume":20060.0,"baseline_avg":8673.25,"bar_rvol":2.312859,"raw_accel":2.34668,"smooth_accel":0.949079,"accel_momentum":1.030318,"rvol_3bar":[0.81622,0.68195,2.312859],"trend_3bar":"MIXED","projected_rvol":2.675371},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":6974.0,"sell_vol":198.0,"unclassified_vol":0.0,"imbalance":0.944785,"bid":12.19,"ask":12.2,"spread_pct":0.082001,"quote_size_imbalance":null,"quote_age_s":0.4289},"context":{"vwap":12.166301,"price_vs_vwap_pct":0.23589,"ema9":12.139872,"ema20":12.138481,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.36189,"dist_to_hod_atr":5.404045,"atr":0.054589,"spread_atr":0.183188,"own_change_pct":0.268041,"rel_strength_pct":{"SPY":0.228469,"IWM":0.250554}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.185155},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"02143bf1be7f","ts":"2026-09-21T16:05:58.424141+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.16 below VWAP $12.17","plan":{"state":"PASS","setup":"","stop":11.9879,"target":12.29,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":61.0,"room_to_5d_high_atr":0.62},"price":12.1632,"vwap":12.1663,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.81,"trend":"flat","recent_slope_pct":0.098,"volatility":"medium"},"price":12.1632,"volume":{"bars":155,"last_bar_volume":20060.0,"baseline_avg":8673.25,"bar_rvol":2.312859,"raw_accel":2.34668,"smooth_accel":0.949079,"accel_momentum":1.030318,"rvol_3bar":[0.81622,0.68195,2.312859],"trend_3bar":"MIXED","projected_rvol":2.44534},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":6947.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.971619,"bid":12.19,"ask":12.2,"spread_pct":0.082001,"quote_size_imbalance":null,"quote_age_s":0.012022},"context":{"vwap":12.166301,"price_vs_vwap_pct":-0.025488,"ema9":12.139872,"ema20":12.138481,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.616493,"dist_to_hod_atr":5.986583,"atr":0.054589,"spread_atr":0.183188,"own_change_pct":0.268041,"rel_strength_pct":{"SPY":0.228469,"IWM":0.250554}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.247218},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0078ab6c3810","ts":"2026-09-21T16:06:03.544751+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0197,"target":12.29,"target_label":"prev_day_high","reward_risk":0.54,"pos_in_5d_range_pct":63.8,"room_to_5d_high_atr":0.58},"price":12.195,"vwap":12.1664,"ext_from_open_pct":-0.85,"max_ext_allowed_pct":4.0,"volume_pace":0.81,"trend":"flat","recent_slope_pct":0.1856,"volatility":"medium"},"price":12.195,"volume":{"bars":156,"last_bar_volume":20792.0,"baseline_avg":9358.75,"bar_rvol":2.221664,"raw_accel":0.036491,"smooth_accel":1.84346,"accel_momentum":0.894381,"rvol_3bar":[0.68195,2.312859,2.221664],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":4125.0,"sell_vol":811.0,"unclassified_vol":0.0,"imbalance":0.671394,"bid":12.19,"ask":12.2,"spread_pct":0.082001,"quote_size_imbalance":null,"quote_age_s":1.022781},"context":{"vwap":12.166386,"price_vs_vwap_pct":0.235187,"ema9":12.150898,"ema20":12.143864,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.36189,"dist_to_hod_atr":5.423125,"atr":0.054397,"spread_atr":0.183835,"own_change_pct":0.450565,"rel_strength_pct":{"SPY":0.394764,"IWM":0.419079}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.491612},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bfab162fd484","ts":"2026-09-21T16:06:13.832051+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7226,"target":13.65,"target_label":"premarket_high","reward_risk":1.37,"pos_in_5d_range_pct":154.6,"room_to_5d_high_atr":-1.63},"price":13.1144,"vwap":12.8336,"ext_from_open_pct":0.8,"max_ext_allowed_pct":3.0,"volume_pace":0.713,"trend":"flat","recent_slope_pct":-0.0895,"volatility":"high"},"price":13.1144,"volume":{"bars":156,"last_bar_volume":11197.0,"baseline_avg":12165.75,"bar_rvol":0.920371,"raw_accel":-0.533556,"smooth_accel":0.256522,"accel_momentum":-1.594823,"rvol_3bar":[1.860586,2.064937,0.920371],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":3620.0,"sell_vol":4075.0,"unclassified_vol":0.0,"imbalance":-0.059129,"bid":13.11,"ask":13.14,"spread_pct":0.228571,"quote_size_imbalance":null,"quote_age_s":0.961149},"context":{"vwap":12.833449,"price_vs_vwap_pct":2.189206,"ema9":13.080855,"ema20":13.033279,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.968116,"dist_to_hod_atr":5.657785,"atr":0.121178,"spread_atr":0.247569,"own_change_pct":1.518919,"rel_strength_pct":{"SPY":1.463118,"IWM":1.487433}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.054421},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"44403a4e05ba","ts":"2026-09-21T16:06:18.964622+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.7382,"target":13.65,"target_label":"premarket_high","reward_risk":1.33,"pos_in_5d_range_pct":155.0,"room_to_5d_high_atr":-1.64},"price":13.13,"vwap":12.8336,"ext_from_open_pct":0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.713,"trend":"flat","recent_slope_pct":-0.0657,"volatility":"high"},"price":13.13,"volume":{"bars":156,"last_bar_volume":11197.0,"baseline_avg":12165.75,"bar_rvol":0.920371,"raw_accel":-0.533556,"smooth_accel":0.256522,"accel_momentum":-1.594823,"rvol_3bar":[1.860586,2.064937,0.920371],"trend_3bar":"MIXED","projected_rvol":0.703714},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":3649.0,"sell_vol":2797.0,"unclassified_vol":0.0,"imbalance":0.132175,"bid":13.11,"ask":13.14,"spread_pct":0.228571,"quote_size_imbalance":null,"quote_age_s":6.09372},"context":{"vwap":12.833449,"price_vs_vwap_pct":2.310763,"ema9":13.080855,"ema20":13.033279,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.855072,"dist_to_hod_atr":5.529049,"atr":0.121178,"spread_atr":0.247569,"own_change_pct":1.518919,"rel_strength_pct":{"SPY":1.463118,"IWM":1.487433}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.12165},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c82f28f5fab9","ts":"2026-09-21T16:06:24.076149+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7071,"target":13.65,"target_label":"premarket_high","reward_risk":1.41,"pos_in_5d_range_pct":154.3,"room_to_5d_high_atr":-1.62},"price":13.0989,"vwap":12.8337,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":0.713,"trend":"flat","recent_slope_pct":-0.1131,"volatility":"high"},"price":13.0989,"volume":{"bars":156,"last_bar_volume":11197.0,"baseline_avg":12165.75,"bar_rvol":0.920371,"raw_accel":-0.533556,"smooth_accel":0.256522,"accel_momentum":-1.594823,"rvol_3bar":[1.860586,2.064937,0.920371],"trend_3bar":"MIXED","projected_rvol":0.728838},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":1397.0,"sell_vol":3400.0,"unclassified_vol":0.0,"imbalance":-0.417553,"bid":13.08,"ask":13.11,"spread_pct":0.229095,"quote_size_imbalance":null,"quote_age_s":1.113774},"context":{"vwap":12.833449,"price_vs_vwap_pct":2.068428,"ema9":13.080855,"ema20":13.033279,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.080435,"dist_to_hod_atr":5.785696,"atr":0.121178,"spread_atr":0.247569,"own_change_pct":1.518919,"rel_strength_pct":{"SPY":1.463118,"IWM":1.487433}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.384303},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c0f67e3535af","ts":"2026-09-21T16:06:34.342059+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.2,"target_label":"premarket_high","reward_risk":0.18,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.18,"vwap":5.1763,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":-0.0962,"volatility":"unknown"},"price":5.18,"volume":{"bars":156,"last_bar_volume":61438.0,"baseline_avg":30362.85,"bar_rvol":2.02346,"raw_accel":3.559406,"smooth_accel":0.047988,"accel_momentum":-1.242984,"rvol_3bar":[0.95946,0.444012,2.02346],"trend_3bar":"MIXED","projected_rvol":0.353766},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":2859.0,"sell_vol":2945.0,"unclassified_vol":0.0,"imbalance":-0.014817,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.621276},"context":{"vwap":5.176311,"price_vs_vwap_pct":0.071275,"ema9":5.207151,"ema20":5.210721,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.264151,"dist_to_hod_atr":4.041519,"atr":0.029692,"spread_atr":0.336793,"own_change_pct":-0.287908,"rel_strength_pct":{"SPY":-0.343709,"IWM":-0.319394}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.029982},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1839f449906e","ts":"2026-09-21T16:07:00.075529+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.7405,"target":13.65,"target_label":"premarket_high","reward_risk":1.32,"pos_in_5d_range_pct":155.0,"room_to_5d_high_atr":-1.64},"price":13.1323,"vwap":12.8339,"ext_from_open_pct":0.94,"max_ext_allowed_pct":3.0,"volume_pace":0.711,"trend":"flat","recent_slope_pct":-0.0622,"volatility":"high"},"price":13.1323,"volume":{"bars":156,"last_bar_volume":11197.0,"baseline_avg":12165.75,"bar_rvol":0.920371,"raw_accel":-0.533556,"smooth_accel":0.256522,"accel_momentum":-1.594823,"rvol_3bar":[1.860586,2.064937,0.920371],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1093.0,"sell_vol":1132.0,"unclassified_vol":0.0,"imbalance":-0.017528,"bid":13.1,"ask":13.14,"spread_pct":0.304878,"quote_size_imbalance":null,"quote_age_s":0.389903},"context":{"vwap":12.833449,"price_vs_vwap_pct":2.328685,"ema9":13.080855,"ema20":13.033279,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.838406,"dist_to_hod_atr":5.510068,"atr":0.121178,"spread_atr":0.330092,"own_change_pct":1.518919,"rel_strength_pct":{"SPY":1.47999,"IWM":1.525915}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.016132},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e35428b9a6ab","ts":"2026-09-21T16:07:05.310038+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.7432,"target":13.65,"target_label":"premarket_high","reward_risk":1.31,"pos_in_5d_range_pct":155.1,"room_to_5d_high_atr":-1.65},"price":13.135,"vwap":12.8339,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":0.71,"trend":"flat","recent_slope_pct":-0.0961,"volatility":"high"},"price":13.135,"volume":{"bars":157,"last_bar_volume":6211.0,"baseline_avg":12459.35,"bar_rvol":0.498501,"raw_accel":-0.445298,"smooth_accel":-0.313945,"accel_momentum":-0.570467,"rvol_3bar":[2.064937,0.920371,0.498501],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":1956.0,"sell_vol":797.0,"unclassified_vol":0.0,"imbalance":0.420995,"bid":13.12,"ask":13.15,"spread_pct":0.228397,"quote_size_imbalance":null,"quote_age_s":1.328643},"context":{"vwap":12.833874,"price_vs_vwap_pct":2.346334,"ema9":13.091144,"ema20":13.042709,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.818841,"dist_to_hod_atr":5.693089,"atr":0.116808,"spread_atr":0.256831,"own_change_pct":1.383453,"rel_strength_pct":{"SPY":1.344524,"IWM":1.390449}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.209867},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"fd792dec6fcf","ts":"2026-09-21T16:07:05.310038+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6921,"target":8.82,"target_label":"prev_day_high","reward_risk":0.17,"pos_in_5d_range_pct":84.4,"room_to_5d_high_atr":0.26},"price":8.801,"vwap":8.6778,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.8,"trend":"flat","recent_slope_pct":-0.0376,"volatility":"medium"},"price":8.801,"volume":{"bars":157,"last_bar_volume":6480.0,"baseline_avg":13863.95,"bar_rvol":0.467399,"raw_accel":-0.448698,"smooth_accel":-0.111549,"accel_momentum":-0.309898,"rvol_3bar":[0.480729,0.844202,0.467399],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1051.0,"sell_vol":2568.0,"unclassified_vol":0.0,"imbalance":-0.419177,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":1.076982},"context":{"vwap":8.677833,"price_vs_vwap_pct":1.419329,"ema9":8.814255,"ema20":8.823352,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.009665,"dist_to_hod_atr":4.944581,"atr":0.055232,"spread_atr":0.181054,"own_change_pct":-0.060193,"rel_strength_pct":{"SPY":-0.099122,"IWM":-0.053197}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.195923},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e1193855b699","ts":"2026-09-21T16:07:05.310038+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":10.5614,"target":11.14,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":112.0,"room_to_5d_high_atr":-0.28},"price":11.005,"vwap":10.8491,"ext_from_open_pct":0.23,"max_ext_allowed_pct":3.0,"volume_pace":0.708,"trend":"flat","recent_slope_pct":-0.0636,"volatility":"medium"},"price":11.005,"volume":{"bars":157,"last_bar_volume":97076.0,"baseline_avg":143746.2,"bar_rvol":0.675329,"raw_accel":-0.541125,"smooth_accel":0.15714,"accel_momentum":0.340287,"rvol_3bar":[0.656353,1.56921,0.675329],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":194,"trade_rate":6.466667,"buy_vol":47783.0,"sell_vol":33871.0,"unclassified_vol":0.0,"imbalance":0.170377,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":0.704952},"context":{"vwap":10.849101,"price_vs_vwap_pct":1.436979,"ema9":11.019364,"ema20":11.015117,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.029723,"dist_to_hod_atr":2.815641,"atr":0.040666,"spread_atr":0.245908,"own_change_pct":-0.226757,"rel_strength_pct":{"SPY":-0.265686,"IWM":-0.219761}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.115061},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5563f25d9d5f","ts":"2026-09-21T16:07:35.961890+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.17,"target":12.0486,"target_label":"premarket_high","reward_risk":2.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.39,"vwap":11.3243,"ext_from_open_pct":-1.81,"max_ext_allowed_pct":3.0,"volume_pace":0.665,"trend":"flat","recent_slope_pct":0.1625,"volatility":"unknown"},"price":11.39,"volume":{"bars":145,"last_bar_volume":122.0,"baseline_avg":210.5,"bar_rvol":0.579572,"raw_accel":1.31829,"smooth_accel":-0.865144,"accel_momentum":0.028407,"rvol_3bar":[0.021741,0.174777,0.579572],"trend_3bar":"ACCELERATING","projected_rvol":0.166447},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":11.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":0.047619,"bid":11.33,"ask":11.44,"spread_pct":0.966184,"quote_size_imbalance":null,"quote_age_s":1.97036},"context":{"vwap":11.324304,"price_vs_vwap_pct":0.580129,"ema9":11.392061,"ema20":11.381773,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.686192,"dist_to_hod_atr":5.409222,"atr":0.103527,"spread_atr":1.062526,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.038929,"IWM":0.006996}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.027599},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d0516517af60","ts":"2026-09-21T16:07:56.363694+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.686,"target":13.65,"target_label":"premarket_high","reward_risk":1.46,"pos_in_5d_range_pct":153.8,"room_to_5d_high_atr":-1.61},"price":13.0778,"vwap":12.8352,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.71,"trend":"flat","recent_slope_pct":-0.1832,"volatility":"high"},"price":13.0778,"volume":{"bars":157,"last_bar_volume":6211.0,"baseline_avg":12459.35,"bar_rvol":0.498501,"raw_accel":-0.445298,"smooth_accel":-0.313945,"accel_momentum":-0.570467,"rvol_3bar":[2.064937,0.920371,0.498501],"trend_3bar":"DECELERATING","projected_rvol":1.975778},"flow":{"window_s":30,"trades":146,"trade_rate":4.866667,"buy_vol":2399.0,"sell_vol":15145.0,"unclassified_vol":0.0,"imbalance":-0.726516,"bid":13.0,"ask":13.08,"spread_pct":0.613497,"quote_size_imbalance":null,"quote_age_s":0.245324},"context":{"vwap":12.833874,"price_vs_vwap_pct":1.900638,"ema9":13.091144,"ema20":13.042709,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.233333,"dist_to_hod_atr":6.18278,"atr":0.116808,"spread_atr":0.684883,"own_change_pct":1.383453,"rel_strength_pct":{"SPY":1.344524,"IWM":1.390449}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.362169},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"cf3abc4af22a","ts":"2026-09-21T16:08:01.425109+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9385,"target":9.1299,"target_label":"ceiling","reward_risk":1.21,"pos_in_5d_range_pct":126.8,"room_to_5d_high_atr":-0.85},"price":9.025,"vwap":9.0151,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.096,"trend":"flat","recent_slope_pct":0.0646,"volatility":"medium"},"price":9.025,"volume":{"bars":158,"last_bar_volume":14647.0,"baseline_avg":12793.6,"bar_rvol":1.144869,"raw_accel":-0.241756,"smooth_accel":2.520143,"accel_momentum":2.409806,"rvol_3bar":[0.940503,1.57896,1.144869],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":1909.0,"sell_vol":3006.0,"unclassified_vol":0.0,"imbalance":-0.223194,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.214056},"context":{"vwap":9.015074,"price_vs_vwap_pct":0.110104,"ema9":9.010583,"ema20":9.010928,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.148972,"dist_to_hod_atr":4.18614,"atr":0.025059,"spread_atr":0.39906,"own_change_pct":0.257726,"rel_strength_pct":{"SPY":0.207135,"IWM":0.205257}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.255528},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"85801df8aa07","ts":"2026-09-21T16:08:01.425109+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.6947,"target":8.82,"target_label":"prev_day_high","reward_risk":0.15,"pos_in_5d_range_pct":84.7,"room_to_5d_high_atr":0.26},"price":8.8036,"vwap":8.6786,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":0.801,"trend":"flat","recent_slope_pct":-0.0007,"volatility":"medium"},"price":8.8036,"volume":{"bars":158,"last_bar_volume":22852.0,"baseline_avg":13672.65,"bar_rvol":1.671366,"raw_accel":2.526543,"smooth_accel":0.506306,"accel_momentum":0.617855,"rvol_3bar":[0.844202,0.467399,1.671366],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":645.0,"sell_vol":1503.0,"unclassified_vol":0.0,"imbalance":-0.399441,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":1.293746},"context":{"vwap":8.678646,"price_vs_vwap_pct":1.43979,"ema9":8.812484,"ema20":8.821642,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.981012,"dist_to_hod_atr":5.131308,"atr":0.052716,"spread_atr":0.189697,"own_change_pct":-0.112305,"rel_strength_pct":{"SPY":-0.162896,"IWM":-0.164774}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.667613},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"562aab3eda1e","ts":"2026-09-21T16:08:01.425109+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.5614,"target":11.14,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":112.0,"room_to_5d_high_atr":-0.28},"price":11.005,"vwap":10.8493,"ext_from_open_pct":0.23,"max_ext_allowed_pct":4.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":-0.05,"volatility":"medium"},"price":11.005,"volume":{"bars":158,"last_bar_volume":69066.0,"baseline_avg":146634.85,"bar_rvol":0.471007,"raw_accel":-0.288537,"smooth_accel":0.395497,"accel_momentum":0.238357,"rvol_3bar":[1.56921,0.675329,0.471007],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":30646.0,"sell_vol":2530.0,"unclassified_vol":0.0,"imbalance":0.84748,"bid":11.0,"ask":11.01,"spread_pct":0.090868,"quote_size_imbalance":null,"quote_age_s":0.039524},"context":{"vwap":10.849338,"price_vs_vwap_pct":1.434761,"ema9":11.016491,"ema20":11.014154,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.029723,"dist_to_hod_atr":2.930241,"atr":0.039075,"spread_atr":0.255916,"own_change_pct":-0.181406,"rel_strength_pct":{"SPY":-0.231997,"IWM":-0.233875}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.399169},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7d6699d23041","ts":"2026-09-21T16:08:01.425109+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1437,"target":5.25,"target_label":"ceiling","reward_risk":1.05,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1957,"vwap":5.1764,"ext_from_open_pct":-0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.895,"trend":"flat","recent_slope_pct":-0.0071,"volatility":"unknown"},"price":5.1957,"volume":{"bars":158,"last_bar_volume":19662.0,"baseline_avg":29997.0,"bar_rvol":0.655466,"raw_accel":1.403961,"smooth_accel":-0.194204,"accel_momentum":0.005249,"rvol_3bar":[2.02346,0.271955,0.655466],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1780.0,"sell_vol":2808.0,"unclassified_vol":0.0,"imbalance":-0.224063,"bid":5.19,"ask":5.2,"spread_pct":0.192493,"quote_size_imbalance":null,"quote_age_s":1.415473},"context":{"vwap":5.176399,"price_vs_vwap_pct":0.372864,"ema9":5.202909,"ema20":5.207879,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.967925,"dist_to_hod_atr":3.632845,"atr":0.02871,"spread_atr":0.348307,"own_change_pct":-0.001923,"rel_strength_pct":{"SPY":-0.052514,"IWM":-0.054393}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.146865},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"afa23d5a4ef0","ts":"2026-09-21T16:08:06.604371+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9213,"target":9.1299,"target_label":"ceiling","reward_risk":1.41,"pos_in_5d_range_pct":125.3,"room_to_5d_high_atr":-0.8},"price":9.0078,"vwap":9.0151,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":3.0,"volume_pace":1.095,"trend":"flat","recent_slope_pct":0.0264,"volatility":"medium"},"price":9.0078,"volume":{"bars":158,"last_bar_volume":14647.0,"baseline_avg":12793.6,"bar_rvol":1.144869,"raw_accel":-0.241756,"smooth_accel":2.520143,"accel_momentum":2.409806,"rvol_3bar":[0.940503,1.57896,1.144869],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":2231.0,"sell_vol":3036.0,"unclassified_vol":0.0,"imbalance":-0.152838,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":1.895852},"context":{"vwap":9.015074,"price_vs_vwap_pct":-0.080687,"ema9":9.010583,"ema20":9.010928,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.337364,"dist_to_hod_atr":4.872523,"atr":0.025059,"spread_atr":0.39906,"own_change_pct":0.257726,"rel_strength_pct":{"SPY":0.207135,"IWM":0.205257}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.17498},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7a10304b8b41","ts":"2026-09-21T16:08:11.680960+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9385,"target":9.1299,"target_label":"ceiling","reward_risk":1.21,"pos_in_5d_range_pct":126.8,"room_to_5d_high_atr":-0.85},"price":9.025,"vwap":9.0151,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.095,"trend":"flat","recent_slope_pct":0.0646,"volatility":"medium"},"price":9.025,"volume":{"bars":158,"last_bar_volume":14647.0,"baseline_avg":12793.6,"bar_rvol":1.144869,"raw_accel":-0.241756,"smooth_accel":2.520143,"accel_momentum":2.409806,"rvol_3bar":[0.940503,1.57896,1.144869],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":2344.0,"sell_vol":2366.0,"unclassified_vol":0.0,"imbalance":-0.004671,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.963242},"context":{"vwap":9.015074,"price_vs_vwap_pct":0.110104,"ema9":9.010583,"ema20":9.010928,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.148972,"dist_to_hod_atr":4.18614,"atr":0.025059,"spread_atr":0.39906,"own_change_pct":0.257726,"rel_strength_pct":{"SPY":0.207135,"IWM":0.205257}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.005348},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"92ca24d149bf","ts":"2026-09-21T16:09:02.577422+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.4% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.1298,"target":9.26,"target_label":"premarket_high","reward_risk":0.11,"pos_in_5d_range_pct":314.0,"room_to_5d_high_atr":-4.64},"price":9.2467,"vwap":9.178,"ext_from_open_pct":6.41,"max_ext_allowed_pct":4.0,"volume_pace":8.441,"trend":"flat","recent_slope_pct":-0.1124,"volatility":"medium"},"price":9.2467,"volume":{"bars":159,"last_bar_volume":93971.0,"baseline_avg":71704.6,"bar_rvol":1.31053,"raw_accel":1.933111,"smooth_accel":-0.140248,"accel_momentum":0.176285,"rvol_3bar":[0.841707,0.447153,1.31053],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":14279.0,"sell_vol":37380.0,"unclassified_vol":0.0,"imbalance":-0.447182,"bid":9.24,"ask":9.25,"spread_pct":0.108167,"quote_size_imbalance":null,"quote_age_s":0.145981},"context":{"vwap":9.177975,"price_vs_vwap_pct":0.7488,"ema9":9.298765,"ema20":9.281366,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.079876,"dist_to_hod_atr":3.942158,"atr":0.099768,"spread_atr":0.100233,"own_change_pct":-1.037826,"rel_strength_pct":{"SPY":-1.081923,"IWM":-1.053562}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.586046},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4c7ccc2af71d","ts":"2026-09-21T16:10:04.307897+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.5982,"target":13.65,"target_label":"premarket_high","reward_risk":1.68,"pos_in_5d_range_pct":152.0,"room_to_5d_high_atr":-1.55},"price":12.99,"vwap":12.8361,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.707,"trend":"flat","recent_slope_pct":-0.2591,"volatility":"high"},"price":12.99,"volume":{"bars":160,"last_bar_volume":13478.0,"baseline_avg":13834.35,"bar_rvol":0.974242,"raw_accel":-0.284645,"smooth_accel":0.426364,"accel_momentum":0.500781,"rvol_3bar":[2.143346,1.396918,0.974242],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2182.0,"sell_vol":779.0,"unclassified_vol":0.0,"imbalance":0.473826,"bid":12.97,"ask":13.01,"spread_pct":0.307929,"quote_size_imbalance":null,"quote_age_s":10.433513},"context":{"vwap":12.836107,"price_vs_vwap_pct":1.19891,"ema9":13.031626,"ema20":13.024082,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.869565,"dist_to_hod_atr":6.759948,"atr":0.119823,"spread_atr":0.333825,"own_change_pct":-1.55284,"rel_strength_pct":{"SPY":-1.631421,"IWM":-1.587808}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.461621},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"8e62132a0fa6","ts":"2026-09-21T16:10:56.123531+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3365,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.382,"trend":"flat","recent_slope_pct":-0.0068,"volatility":"unknown"},"price":6.48,"volume":{"bars":160,"last_bar_volume":118975.0,"baseline_avg":101402.75,"bar_rvol":1.173292,"raw_accel":0.946103,"smooth_accel":0.233882,"accel_momentum":0.797805,"rvol_3bar":[0.956861,0.614363,1.173292],"trend_3bar":"MIXED","projected_rvol":0.848159},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":23961.0,"sell_vol":40526.0,"unclassified_vol":0.0,"imbalance":-0.256873,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.019637},"context":{"vwap":6.335733,"price_vs_vwap_pct":2.27704,"ema9":6.456701,"ema20":6.450418,"ema_stack":true,"ema_warm":true,"hod":6.48,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.037463,"spread_atr":0.266928,"own_change_pct":-0.210481,"rel_strength_pct":{"SPY":-0.289062,"IWM":-0.245449}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.301388},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9c9396046dbb","ts":"2026-09-21T16:11:01.334020+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.387,"target":7.775,"target_label":"range_20d_high","reward_risk":20.51,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4515,"vwap":6.3365,"ext_from_open_pct":2.57,"max_ext_allowed_pct":3.0,"volume_pace":1.381,"trend":"flat","recent_slope_pct":-0.0566,"volatility":"unknown"},"price":6.4515,"volume":{"bars":161,"last_bar_volume":81512.0,"baseline_avg":105688.3,"bar_rvol":0.771249,"raw_accel":-0.314881,"smooth_accel":0.762025,"accel_momentum":0.528143,"rvol_3bar":[0.614363,1.173292,0.771249],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":23523.0,"sell_vol":41128.0,"unclassified_vol":0.0,"imbalance":-0.272308,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.585202},"context":{"vwap":6.336528,"price_vs_vwap_pct":1.814433,"ema9":6.459441,"ema20":6.452321,"ema_stack":false,"ema_warm":true,"hod":6.48,"dist_to_hod_pct":-0.439815,"dist_to_hod_atr":0.768457,"atr":0.037087,"spread_atr":0.269634,"own_change_pct":0.027827,"rel_strength_pct":{"SPY":-0.078526,"IWM":-0.028131}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.210017},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2b9a7083f5aa","ts":"2026-09-21T16:11:06.563147+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"held 339.0s, plan says WATCH; stop 8.20, target 8.49 (ceiling), R:R 1.46; R:R 1.46 < 2.0 at 8.32; pullback: buy 8.26-8.32 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.2,"target":8.495,"target_label":"ceiling","reward_risk":1.46,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.32,"vwap":8.2085,"ext_from_open_pct":3.87,"max_ext_allowed_pct":5.0,"volume_pace":3.066,"trend":"flat","recent_slope_pct":0.0457,"volatility":"unknown"},"price":8.32,"volume":{"bars":160,"last_bar_volume":45.0,"baseline_avg":1510.45,"bar_rvol":0.029792,"raw_accel":-0.88083,"smooth_accel":-0.914632,"accel_momentum":-0.220771,"rvol_3bar":[0.084194,0.151648,0.029792],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":3.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.26,"ask":8.32,"spread_pct":0.723764,"quote_size_imbalance":null,"quote_age_s":11.500412},"context":{"vwap":8.208473,"price_vs_vwap_pct":1.358681,"ema9":8.275608,"ema20":8.271428,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.030303,"dist_to_hod_atr":4.019015,"atr":0.064692,"spread_atr":0.927465,"own_change_pct":-0.467098,"rel_strength_pct":{"SPY":-0.573451,"IWM":-0.523056}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.029792},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8e6c0f85e0bd","ts":"2026-09-21T16:11:11.803402+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"held 344.2s, plan says PASS; stop 8.17, target 8.49 (ceiling), R:R 1.71; target 0.21 away > ~0.20 reachable in 224 min","plan":{"state":"PASS","setup":"","stop":8.17,"target":8.495,"target_label":"ceiling","reward_risk":1.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.29,"vwap":8.2085,"ext_from_open_pct":3.5,"max_ext_allowed_pct":5.0,"volume_pace":3.064,"trend":"flat","recent_slope_pct":-0.0267,"volatility":"unknown"},"price":8.29,"volume":{"bars":160,"last_bar_volume":45.0,"baseline_avg":1510.45,"bar_rvol":0.029792,"raw_accel":-0.88083,"smooth_accel":-0.914632,"accel_momentum":-0.220771,"rvol_3bar":[0.084194,0.151648,0.029792],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":3.0,"sell_vol":40.0,"unclassified_vol":0.0,"imbalance":-0.860465,"bid":8.26,"ask":8.32,"spread_pct":0.723764,"quote_size_imbalance":null,"quote_age_s":4.038843},"context":{"vwap":8.208473,"price_vs_vwap_pct":0.993205,"ema9":8.275608,"ema20":8.271428,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.379953,"dist_to_hod_atr":4.482747,"atr":0.064692,"spread_atr":0.927465,"own_change_pct":-0.467098,"rel_strength_pct":{"SPY":-0.573451,"IWM":-0.523056}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.025635},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"97716af672c7","ts":"2026-09-21T16:11:17.124097+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"held 349.5s, plan says WATCH; stop 8.18, target 8.49 (ceiling), R:R 1.62; pullback low 7.90 broke support 8.21; no reclaim yet (needs a close > 8.32); R:R 1.62 < 2.0 at 8.30; pullback: buy 8.26-8.32 h","plan":{"state":"WATCH","setup":"","stop":8.18,"target":8.495,"target_label":"ceiling","reward_risk":1.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3,"vwap":8.2085,"ext_from_open_pct":3.62,"max_ext_allowed_pct":5.0,"volume_pace":3.064,"trend":"flat","recent_slope_pct":-0.0025,"volatility":"unknown"},"price":8.3,"volume":{"bars":160,"last_bar_volume":45.0,"baseline_avg":1510.45,"bar_rvol":0.029792,"raw_accel":-0.88083,"smooth_accel":-0.914632,"accel_momentum":-0.220771,"rvol_3bar":[0.084194,0.151648,0.029792],"trend_3bar":"MIXED","projected_rvol":0.737674},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":244.0,"sell_vol":74.0,"unclassified_vol":0.0,"imbalance":0.534591,"bid":8.26,"ask":8.32,"spread_pct":0.723764,"quote_size_imbalance":null,"quote_age_s":2.602106},"context":{"vwap":8.208473,"price_vs_vwap_pct":1.11503,"ema9":8.275608,"ema20":8.271428,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.263403,"dist_to_hod_atr":4.32817,"atr":0.064692,"spread_atr":0.927465,"own_change_pct":-0.467098,"rel_strength_pct":{"SPY":-0.573451,"IWM":-0.523056}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.015927},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d526d092fa5a","ts":"2026-09-21T16:11:22.313198+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":15.87,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4815,"vwap":6.3371,"ext_from_open_pct":3.04,"max_ext_allowed_pct":3.0,"volume_pace":1.383,"trend":"flat","recent_slope_pct":0.0362,"volatility":"unknown"},"price":6.4815,"volume":{"bars":161,"last_bar_volume":81512.0,"baseline_avg":105688.3,"bar_rvol":0.771249,"raw_accel":-0.314881,"smooth_accel":0.762025,"accel_momentum":0.528143,"rvol_3bar":[0.614363,1.173292,0.771249],"trend_3bar":"MIXED","projected_rvol":1.327598},"flow":{"window_s":30,"trades":193,"trade_rate":6.433333,"buy_vol":40780.0,"sell_vol":14303.0,"unclassified_vol":0.0,"imbalance":0.480675,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.081509},"context":{"vwap":6.336528,"price_vs_vwap_pct":2.287879,"ema9":6.459441,"ema20":6.452321,"ema_stack":true,"ema_warm":true,"hod":6.48,"dist_to_hod_pct":0.023148,"dist_to_hod_atr":-0.040445,"atr":0.037087,"spread_atr":0.269634,"own_change_pct":0.027827,"rel_strength_pct":{"SPY":-0.078526,"IWM":-0.028131}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.37072},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"aed6592d13c3","ts":"2026-09-21T16:11:27.448242+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":17.12,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4759,"vwap":6.3372,"ext_from_open_pct":2.96,"max_ext_allowed_pct":3.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":0.0189,"volatility":"unknown"},"price":6.4759,"volume":{"bars":161,"last_bar_volume":81512.0,"baseline_avg":105688.3,"bar_rvol":0.771249,"raw_accel":-0.314881,"smooth_accel":0.762025,"accel_momentum":0.528143,"rvol_3bar":[0.614363,1.173292,0.771249],"trend_3bar":"MIXED","projected_rvol":1.362605},"flow":{"window_s":30,"trades":203,"trade_rate":6.766667,"buy_vol":40906.0,"sell_vol":25838.0,"unclassified_vol":0.0,"imbalance":0.225758,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.300929},"context":{"vwap":6.336528,"price_vs_vwap_pct":2.199502,"ema9":6.459441,"ema20":6.452321,"ema_stack":true,"ema_warm":true,"hod":6.48,"dist_to_hod_pct":-0.063272,"dist_to_hod_atr":0.11055,"atr":0.037087,"spread_atr":0.269634,"own_change_pct":0.027827,"rel_strength_pct":{"SPY":-0.078526,"IWM":-0.028131}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.174116},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dc51fc2f9a6d","ts":"2026-09-21T16:11:32.582642+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"held 365.0s, plan says PASS; stop 8.19, target 8.49 (ceiling), R:R 2.05; target 0.21 away > ~0.20 reachable in 223 min","plan":{"state":"PASS","setup":"","stop":8.19,"target":8.495,"target_label":"ceiling","reward_risk":2.05,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.29,"vwap":8.2086,"ext_from_open_pct":3.5,"max_ext_allowed_pct":5.0,"volume_pace":3.062,"trend":"flat","recent_slope_pct":-0.0267,"volatility":"unknown"},"price":8.29,"volume":{"bars":160,"last_bar_volume":45.0,"baseline_avg":1510.45,"bar_rvol":0.029792,"raw_accel":-0.88083,"smooth_accel":-0.914632,"accel_momentum":-0.220771,"rvol_3bar":[0.084194,0.151648,0.029792],"trend_3bar":"MIXED","projected_rvol":1.433725},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":1041.0,"sell_vol":132.0,"unclassified_vol":0.0,"imbalance":0.774936,"bid":8.27,"ask":8.32,"spread_pct":0.602773,"quote_size_imbalance":null,"quote_age_s":0.398872},"context":{"vwap":8.208473,"price_vs_vwap_pct":0.993205,"ema9":8.275608,"ema20":8.271428,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.379953,"dist_to_hod_atr":4.482747,"atr":0.064692,"spread_atr":0.772887,"own_change_pct":-0.467098,"rel_strength_pct":{"SPY":-0.573451,"IWM":-0.523056}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.023087},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7c4354460023","ts":"2026-09-21T16:11:32.582642+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.17,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4801,"vwap":6.3373,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":0.0319,"volatility":"unknown"},"price":6.4801,"volume":{"bars":161,"last_bar_volume":81512.0,"baseline_avg":105688.3,"bar_rvol":0.771249,"raw_accel":-0.314881,"smooth_accel":0.762025,"accel_momentum":0.528143,"rvol_3bar":[0.614363,1.173292,0.771249],"trend_3bar":"MIXED","projected_rvol":1.325867},"flow":{"window_s":30,"trades":177,"trade_rate":5.9,"buy_vol":38937.0,"sell_vol":35252.0,"unclassified_vol":0.0,"imbalance":0.04967,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.176154},"context":{"vwap":6.336528,"price_vs_vwap_pct":2.265784,"ema9":6.459441,"ema20":6.452321,"ema_stack":true,"ema_warm":true,"hod":6.48,"dist_to_hod_pct":0.001543,"dist_to_hod_atr":-0.002696,"atr":0.037087,"spread_atr":0.269634,"own_change_pct":0.027827,"rel_strength_pct":{"SPY":-0.078526,"IWM":-0.028131}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.038308},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"80117772999a","ts":"2026-09-21T16:11:42.857122+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"held 375.3s, plan says WATCH; stop 8.22, target 8.49 (ceiling), R:R 2.26; pullback low 7.90 broke support 8.21; no reclaim yet (needs a close > 8.32); pullback: buy 8.26-8.32 holding + reclaim/fading ","plan":{"state":"WATCH","setup":"","stop":8.2239,"target":8.495,"target_label":"ceiling","reward_risk":2.26,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.307,"vwap":8.2086,"ext_from_open_pct":3.71,"max_ext_allowed_pct":5.0,"volume_pace":3.059,"trend":"flat","recent_slope_pct":0.0144,"volatility":"unknown"},"price":8.307,"volume":{"bars":160,"last_bar_volume":45.0,"baseline_avg":1510.45,"bar_rvol":0.029792,"raw_accel":-0.88083,"smooth_accel":-0.914632,"accel_momentum":-0.220771,"rvol_3bar":[0.084194,0.151648,0.029792],"trend_3bar":"MIXED","projected_rvol":1.174353},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":1131.0,"sell_vol":93.0,"unclassified_vol":0.0,"imbalance":0.848039,"bid":8.28,"ask":8.32,"spread_pct":0.481928,"quote_size_imbalance":null,"quote_age_s":3.880165},"context":{"vwap":8.208473,"price_vs_vwap_pct":1.200308,"ema9":8.275608,"ema20":8.271428,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.181818,"dist_to_hod_atr":4.219966,"atr":0.064692,"spread_atr":0.61831,"own_change_pct":-0.467098,"rel_strength_pct":{"SPY":-0.573451,"IWM":-0.523056}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.025265},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"37949125f7ed","ts":"2026-09-21T16:11:53.219467+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"held 385.6s, plan says PASS; stop 8.19, target 8.49 (ceiling), R:R 2.66; target 0.22 away > ~0.20 reachable in 223 min","plan":{"state":"PASS","setup":"","stop":8.1919,"target":8.495,"target_label":"ceiling","reward_risk":2.66,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2746,"vwap":8.2086,"ext_from_open_pct":3.3,"max_ext_allowed_pct":5.0,"volume_pace":3.056,"trend":"flat","recent_slope_pct":-0.0639,"volatility":"unknown"},"price":8.2746,"volume":{"bars":160,"last_bar_volume":45.0,"baseline_avg":1510.45,"bar_rvol":0.029792,"raw_accel":-0.88083,"smooth_accel":-0.914632,"accel_momentum":-0.220771,"rvol_3bar":[0.084194,0.151648,0.029792],"trend_3bar":"MIXED","projected_rvol":0.953905},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":890.0,"sell_vol":70.0,"unclassified_vol":0.0,"imbalance":0.854167,"bid":8.28,"ask":8.32,"spread_pct":0.481928,"quote_size_imbalance":null,"quote_age_s":5.454416},"context":{"vwap":8.208473,"price_vs_vwap_pct":0.805593,"ema9":8.275608,"ema20":8.271428,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.559441,"dist_to_hod_atr":4.720797,"atr":0.064692,"spread_atr":0.61831,"own_change_pct":-0.467098,"rel_strength_pct":{"SPY":-0.573451,"IWM":-0.523056}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.025448},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"775eea1157ee","ts":"2026-09-21T16:11:53.219467+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.3943,"target":7.775,"target_label":"range_20d_high","reward_risk":20.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4589,"vwap":6.3373,"ext_from_open_pct":2.69,"max_ext_allowed_pct":3.0,"volume_pace":1.382,"trend":"flat","recent_slope_pct":-0.0337,"volatility":"unknown"},"price":6.4589,"volume":{"bars":161,"last_bar_volume":81512.0,"baseline_avg":105688.3,"bar_rvol":0.771249,"raw_accel":-0.314881,"smooth_accel":0.762025,"accel_momentum":0.528143,"rvol_3bar":[0.614363,1.173292,0.771249],"trend_3bar":"MIXED","projected_rvol":0.845158},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":2405.0,"sell_vol":24544.0,"unclassified_vol":0.0,"imbalance":-0.821515,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.665062},"context":{"vwap":6.336528,"price_vs_vwap_pct":1.931216,"ema9":6.459441,"ema20":6.452321,"ema_stack":false,"ema_warm":true,"hod":6.48,"dist_to_hod_pct":-0.325617,"dist_to_hod_atr":0.568928,"atr":0.037087,"spread_atr":0.269634,"own_change_pct":0.027827,"rel_strength_pct":{"SPY":-0.078526,"IWM":-0.028131}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.633592},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"aeb8e78917d3","ts":"2026-09-21T16:11:58.366543+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":14.52,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4886,"vwap":6.3374,"ext_from_open_pct":3.16,"max_ext_allowed_pct":3.0,"volume_pace":1.381,"trend":"flat","recent_slope_pct":0.0581,"volatility":"unknown"},"price":6.4886,"volume":{"bars":161,"last_bar_volume":81512.0,"baseline_avg":105688.3,"bar_rvol":0.771249,"raw_accel":-0.314881,"smooth_accel":0.762025,"accel_momentum":0.528143,"rvol_3bar":[0.614363,1.173292,0.771249],"trend_3bar":"MIXED","projected_rvol":0.791676},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":2293.0,"sell_vol":13194.0,"unclassified_vol":0.0,"imbalance":-0.703881,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":3.508775},"context":{"vwap":6.336528,"price_vs_vwap_pct":2.399927,"ema9":6.459441,"ema20":6.452321,"ema_stack":true,"ema_warm":true,"hod":6.48,"dist_to_hod_pct":0.132716,"dist_to_hod_atr":-0.231885,"atr":0.037087,"spread_atr":0.269634,"own_change_pct":0.027827,"rel_strength_pct":{"SPY":-0.078526,"IWM":-0.028131}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.542867},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b6eaa580dc9e","ts":"2026-09-21T16:12:03.524408+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"held 395.9s, plan says WATCH; stop 8.22, target 8.49 (ceiling), R:R 2.28; pullback low 7.90 broke support 8.21; no reclaim yet (needs a close > 8.28); pullback: buy 8.26-8.32 holding + reclaim/fading ","plan":{"state":"WATCH","setup":"","stop":8.2223,"target":8.495,"target_label":"ceiling","reward_risk":2.28,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3054,"vwap":8.2086,"ext_from_open_pct":3.69,"max_ext_allowed_pct":5.0,"volume_pace":3.053,"trend":"flat","recent_slope_pct":0.0216,"volatility":"unknown"},"price":8.3054,"volume":{"bars":161,"last_bar_volume":1278.0,"baseline_avg":1415.95,"bar_rvol":0.902574,"raw_accel":2.610297,"smooth_accel":-0.511606,"accel_momentum":0.403026,"rvol_3bar":[0.151648,0.029792,0.902574],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":162.0,"sell_vol":12.0,"unclassified_vol":0.0,"imbalance":0.862069,"bid":8.28,"ask":8.32,"spread_pct":0.481928,"quote_size_imbalance":null,"quote_age_s":15.759357},"context":{"vwap":8.208611,"price_vs_vwap_pct":1.17912,"ema9":8.275407,"ema20":8.27173,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.200466,"dist_to_hod_atr":4.304065,"atr":0.0638,"spread_atr":0.626958,"own_change_pct":-0.113472,"rel_strength_pct":{"SPY":-0.21789,"IWM":-0.162447}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.778081},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"729c587cf2bd","ts":"2026-09-21T16:12:03.524408+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7061,"target":8.88,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":86.3,"room_to_5d_high_atr":0.23},"price":8.815,"vwap":8.6795,"ext_from_open_pct":1.09,"max_ext_allowed_pct":3.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":0.0245,"volatility":"medium"},"price":8.815,"volume":{"bars":162,"last_bar_volume":5171.0,"baseline_avg":12461.55,"bar_rvol":0.414956,"raw_accel":-0.310349,"smooth_accel":-0.423968,"accel_momentum":0.101539,"rvol_3bar":[0.507588,0.605549,0.414956],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":101.0,"sell_vol":3885.0,"unclassified_vol":0.0,"imbalance":-0.949323,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.07232},"context":{"vwap":8.679522,"price_vs_vwap_pct":1.560892,"ema9":8.808706,"ema20":8.81647,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.85538,"dist_to_hod_atr":6.004601,"atr":0.04315,"spread_atr":0.231748,"own_change_pct":0.082957,"rel_strength_pct":{"SPY":-0.021461,"IWM":0.033982}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.393928},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"42ad75cfc1fd","ts":"2026-09-21T16:12:08.665496+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.3% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.6267,"target":6.84,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":121.0,"room_to_5d_high_atr":-0.57},"price":6.79,"vwap":6.5492,"ext_from_open_pct":6.26,"max_ext_allowed_pct":3.0,"volume_pace":0.691,"trend":"flat","recent_slope_pct":0.0013,"volatility":"high"},"price":6.79,"volume":{"bars":162,"last_bar_volume":2838.0,"baseline_avg":4040.3,"bar_rvol":0.702423,"raw_accel":1.809692,"smooth_accel":0.212832,"accel_momentum":0.602093,"rvol_3bar":[1.621132,0.06019,0.702423],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":4.0,"sell_vol":935.0,"unclassified_vol":0.0,"imbalance":-0.99148,"bid":6.79,"ask":6.82,"spread_pct":0.440852,"quote_size_imbalance":null,"quote_age_s":2.930861},"context":{"vwap":6.549233,"price_vs_vwap_pct":3.67626,"ema9":6.793363,"ema20":6.777316,"ema_stack":false,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-0.730994,"dist_to_hod_atr":1.54188,"atr":0.032428,"spread_atr":0.925128,"own_change_pct":0.124908,"rel_strength_pct":{"SPY":0.02049,"IWM":0.075933}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.696439},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"31d11bfc8d57","ts":"2026-09-21T16:12:08.665496+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.3956,"target":7.775,"target_label":"range_20d_high","reward_risk":20.35,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4602,"vwap":6.3375,"ext_from_open_pct":2.71,"max_ext_allowed_pct":3.0,"volume_pace":1.381,"trend":"flat","recent_slope_pct":0.0582,"volatility":"unknown"},"price":6.4602,"volume":{"bars":162,"last_bar_volume":82442.0,"baseline_avg":97408.0,"bar_rvol":0.846358,"raw_accel":0.011409,"smooth_accel":0.591492,"accel_momentum":-0.170534,"rvol_3bar":[1.173292,0.771249,0.846358],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":3315.0,"sell_vol":13676.0,"unclassified_vol":0.0,"imbalance":-0.609793,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.610254},"context":{"vwap":6.337378,"price_vs_vwap_pct":1.938057,"ema9":6.464553,"ema20":6.455433,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.459168,"dist_to_hod_atr":0.801329,"atr":0.037188,"spread_atr":0.268902,"own_change_pct":0.253532,"rel_strength_pct":{"SPY":0.149114,"IWM":0.204557}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.516103},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"276ee5fc0ebc","ts":"2026-09-21T16:12:13.799835+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"held 406.2s, plan says PASS; stop 8.21, target 8.49 (ceiling), R:R 2.45; target 0.20 away > ~0.20 reachable in 223 min","plan":{"state":"PASS","setup":"","stop":8.2089,"target":8.495,"target_label":"ceiling","reward_risk":2.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2918,"vwap":8.2086,"ext_from_open_pct":3.52,"max_ext_allowed_pct":5.0,"volume_pace":3.05,"trend":"flat","recent_slope_pct":-0.0112,"volatility":"unknown"},"price":8.2918,"volume":{"bars":161,"last_bar_volume":1278.0,"baseline_avg":1415.95,"bar_rvol":0.902574,"raw_accel":2.610297,"smooth_accel":-0.511606,"accel_momentum":0.403026,"rvol_3bar":[0.151648,0.029792,0.902574],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":72.0,"sell_vol":20.0,"unclassified_vol":0.0,"imbalance":0.565217,"bid":8.28,"ask":8.32,"spread_pct":0.481928,"quote_size_imbalance":null,"quote_age_s":26.034784},"context":{"vwap":8.208611,"price_vs_vwap_pct":1.013441,"ema9":8.275407,"ema20":8.27173,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.358974,"dist_to_hod_atr":4.517231,"atr":0.0638,"spread_atr":0.626958,"own_change_pct":-0.113472,"rel_strength_pct":{"SPY":-0.21789,"IWM":-0.162447}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.510151},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b85e8990282a","ts":"2026-09-21T16:12:13.799835+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.7% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.6562,"target":6.95,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":122.7,"room_to_5d_high_atr":-0.61},"price":6.8195,"vwap":6.5493,"ext_from_open_pct":6.72,"max_ext_allowed_pct":3.0,"volume_pace":0.69,"trend":"flat","recent_slope_pct":0.0881,"volatility":"high"},"price":6.8195,"volume":{"bars":162,"last_bar_volume":2838.0,"baseline_avg":4040.3,"bar_rvol":0.702423,"raw_accel":1.809692,"smooth_accel":0.212832,"accel_momentum":0.602093,"rvol_3bar":[1.621132,0.06019,0.702423],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":203.0,"sell_vol":935.0,"unclassified_vol":0.0,"imbalance":-0.643234,"bid":6.79,"ask":6.82,"spread_pct":0.440852,"quote_size_imbalance":null,"quote_age_s":8.0652},"context":{"vwap":6.549233,"price_vs_vwap_pct":4.126694,"ema9":6.793363,"ema20":6.777316,"ema_stack":true,"ema_warm":true,"hod":6.84,"dist_to_hod_pct":-0.299708,"dist_to_hod_atr":0.632171,"atr":0.032428,"spread_atr":0.925128,"own_change_pct":0.124908,"rel_strength_pct":{"SPY":0.02049,"IWM":0.075933}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.451822},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5319df71c645","ts":"2026-09-21T16:12:13.799835+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3375,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.381,"trend":"flat","recent_slope_pct":0.1193,"volatility":"unknown"},"price":6.48,"volume":{"bars":162,"last_bar_volume":82442.0,"baseline_avg":97408.0,"bar_rvol":0.846358,"raw_accel":0.011409,"smooth_accel":0.591492,"accel_momentum":-0.170534,"rvol_3bar":[1.173292,0.771249,0.846358],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":5071.0,"sell_vol":15692.0,"unclassified_vol":0.0,"imbalance":-0.511535,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.314958},"context":{"vwap":6.337378,"price_vs_vwap_pct":2.250489,"ema9":6.464553,"ema20":6.455433,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.268902,"atr":0.037188,"spread_atr":0.268902,"own_change_pct":0.253532,"rel_strength_pct":{"SPY":0.149114,"IWM":0.204557}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.432941},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b9d03d4445a3","ts":"2026-09-21T16:12:23.957731+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"held 416.4s, plan says WATCH; stop 8.22, target 8.49 (ceiling), R:R 2.35; pullback low 7.90 broke support 8.21; no reclaim yet (needs a close > 8.28); pullback: buy 8.26-8.32 holding + reclaim/fading ","plan":{"state":"WATCH","setup":"","stop":8.217,"target":8.495,"target_label":"ceiling","reward_risk":2.35,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.3,"vwap":8.2086,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":3.047,"trend":"flat","recent_slope_pct":0.0086,"volatility":"unknown"},"price":8.3,"volume":{"bars":161,"last_bar_volume":1278.0,"baseline_avg":1415.95,"bar_rvol":0.902574,"raw_accel":2.610297,"smooth_accel":-0.511606,"accel_momentum":0.403026,"rvol_3bar":[0.151648,0.029792,0.902574],"trend_3bar":"MIXED","projected_rvol":0.328981},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":82.0,"sell_vol":104.0,"unclassified_vol":0.0,"imbalance":-0.11828,"bid":8.28,"ask":8.32,"spread_pct":0.481928,"quote_size_imbalance":null,"quote_age_s":36.19268},"context":{"vwap":8.208611,"price_vs_vwap_pct":1.113336,"ema9":8.275407,"ema20":8.27173,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.263403,"dist_to_hod_atr":4.388704,"atr":0.0638,"spread_atr":0.626958,"own_change_pct":-0.113472,"rel_strength_pct":{"SPY":-0.21789,"IWM":-0.162447}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.106756},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"730ee1651ce4","ts":"2026-09-21T16:12:23.957731+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.49,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4786,"vwap":6.3377,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":1.381,"trend":"flat","recent_slope_pct":0.115,"volatility":"unknown"},"price":6.4786,"volume":{"bars":162,"last_bar_volume":82442.0,"baseline_avg":97408.0,"bar_rvol":0.846358,"raw_accel":0.011409,"smooth_accel":0.591492,"accel_momentum":-0.170534,"rvol_3bar":[1.173292,0.771249,0.846358],"trend_3bar":"MIXED","projected_rvol":0.769927},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":11029.0,"sell_vol":22130.0,"unclassified_vol":0.0,"imbalance":-0.334781,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":4.111787},"context":{"vwap":6.337378,"price_vs_vwap_pct":2.228398,"ema9":6.464553,"ema20":6.455433,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.175655,"dist_to_hod_atr":0.306549,"atr":0.037188,"spread_atr":0.268902,"own_change_pct":0.253532,"rel_strength_pct":{"SPY":0.149114,"IWM":0.204557}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.283344},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"690a187ec889","ts":"2026-09-21T16:12:29.008467+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.5614,"target":11.05,"target_label":"ceiling","reward_risk":0.17,"pos_in_5d_range_pct":109.9,"room_to_5d_high_atr":-0.23},"price":10.98,"vwap":10.8513,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.695,"trend":"flat","recent_slope_pct":-0.0456,"volatility":"medium"},"price":10.98,"volume":{"bars":162,"last_bar_volume":194644.0,"baseline_avg":129927.75,"bar_rvol":1.498094,"raw_accel":1.85888,"smooth_accel":0.821219,"accel_momentum":1.276529,"rvol_3bar":[0.766887,0.495229,1.498094],"trend_3bar":"MIXED","projected_rvol":3.51142},"flow":{"window_s":30,"trades":194,"trade_rate":6.466667,"buy_vol":19894.0,"sell_vol":204869.0,"unclassified_vol":0.0,"imbalance":-0.822978,"bid":10.98,"ask":10.99,"spread_pct":0.091033,"quote_size_imbalance":null,"quote_age_s":2.239629},"context":{"vwap":10.850681,"price_vs_vwap_pct":1.191805,"ema9":11.008531,"ema20":11.010551,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.254553,"dist_to_hod_atr":3.931908,"atr":0.035479,"spread_atr":0.281857,"own_change_pct":-0.047273,"rel_strength_pct":{"SPY":-0.151691,"IWM":-0.096248}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.232898},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"43cd3efc01bf","ts":"2026-09-21T16:12:39.214522+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":10.5614,"target":11.14,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":110.3,"room_to_5d_high_atr":-0.24},"price":10.985,"vwap":10.8514,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.694,"trend":"flat","recent_slope_pct":-0.0365,"volatility":"medium"},"price":10.985,"volume":{"bars":162,"last_bar_volume":194644.0,"baseline_avg":129927.75,"bar_rvol":1.498094,"raw_accel":1.85888,"smooth_accel":0.821219,"accel_momentum":1.276529,"rvol_3bar":[0.766887,0.495229,1.498094],"trend_3bar":"MIXED","projected_rvol":2.777894},"flow":{"window_s":30,"trades":263,"trade_rate":8.766667,"buy_vol":18151.0,"sell_vol":208676.0,"unclassified_vol":0.0,"imbalance":-0.839957,"bid":10.98,"ask":10.99,"spread_pct":0.091033,"quote_size_imbalance":null,"quote_age_s":0.261541},"context":{"vwap":10.850681,"price_vs_vwap_pct":1.237885,"ema9":11.008531,"ema20":11.010551,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.209587,"dist_to_hod_atr":3.790979,"atr":0.035479,"spread_atr":0.281857,"own_change_pct":-0.047273,"rel_strength_pct":{"SPY":-0.151691,"IWM":-0.096248}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.258335},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"693048c6c671","ts":"2026-09-21T16:12:44.360711+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"held 436.8s, plan says PASS; stop 8.20, target 8.49 (ceiling), R:R 2.60; target 0.21 away > ~0.20 reachable in 222 min","plan":{"state":"PASS","setup":"","stop":8.1972,"target":8.495,"target_label":"ceiling","reward_risk":2.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.28,"vwap":8.2086,"ext_from_open_pct":3.37,"max_ext_allowed_pct":4.0,"volume_pace":3.041,"trend":"flat","recent_slope_pct":-0.0397,"volatility":"unknown"},"price":8.28,"volume":{"bars":161,"last_bar_volume":1278.0,"baseline_avg":1415.95,"bar_rvol":0.902574,"raw_accel":2.610297,"smooth_accel":-0.511606,"accel_momentum":0.403026,"rvol_3bar":[0.151648,0.029792,0.902574],"trend_3bar":"MIXED","projected_rvol":0.296119},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":21.0,"sell_vol":208.0,"unclassified_vol":0.0,"imbalance":-0.816594,"bid":8.28,"ask":8.31,"spread_pct":0.361664,"quote_size_imbalance":null,"quote_age_s":1.242654},"context":{"vwap":8.208611,"price_vs_vwap_pct":0.869689,"ema9":8.275407,"ema20":8.27173,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.496503,"dist_to_hod_atr":4.702183,"atr":0.0638,"spread_atr":0.470218,"own_change_pct":-0.113472,"rel_strength_pct":{"SPY":-0.21789,"IWM":-0.162447}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.737037},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ffdf3b8c7450","ts":"2026-09-21T16:12:49.497422+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9185,"target":9.1186,"target_label":"ceiling","reward_risk":1.31,"pos_in_5d_range_pct":125.0,"room_to_5d_high_atr":-0.79},"price":9.005,"vwap":9.0155,"ext_from_open_pct":-0.17,"max_ext_allowed_pct":3.0,"volume_pace":1.086,"trend":"flat","recent_slope_pct":-0.1163,"volatility":"medium"},"price":9.005,"volume":{"bars":162,"last_bar_volume":8447.0,"baseline_avg":15911.85,"bar_rvol":0.530862,"raw_accel":0.098154,"smooth_accel":-0.773237,"accel_momentum":-1.48211,"rvol_3bar":[0.390815,0.471837,0.530862],"trend_3bar":"ACCELERATING","projected_rvol":0.242409},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":968.0,"sell_vol":471.0,"unclassified_vol":0.0,"imbalance":0.345379,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":0.061873},"context":{"vwap":9.015479,"price_vs_vwap_pct":-0.116236,"ema9":9.025319,"ema20":9.019455,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.368033,"dist_to_hod_atr":4.786313,"atr":0.026095,"spread_atr":0.383212,"own_change_pct":0.155366,"rel_strength_pct":{"SPY":0.050948,"IWM":0.106391}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.183349},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"011f43adc567","ts":"2026-09-21T16:13:04.975097+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9353,"target":9.1186,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.84},"price":9.0218,"vwap":9.0155,"ext_from_open_pct":0.02,"max_ext_allowed_pct":3.0,"volume_pace":1.085,"trend":"flat","recent_slope_pct":-0.0581,"volatility":"medium"},"price":9.0218,"volume":{"bars":163,"last_bar_volume":6109.0,"baseline_avg":16013.45,"bar_rvol":0.381492,"raw_accel":-0.276785,"smooth_accel":-0.742037,"accel_momentum":0.0312,"rvol_3bar":[0.471837,0.530862,0.381492],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":2466.0,"sell_vol":2131.0,"unclassified_vol":0.0,"imbalance":0.072874,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":1.348548},"context":{"vwap":9.015491,"price_vs_vwap_pct":0.069982,"ema9":9.027255,"ema20":9.020936,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.184022,"dist_to_hod_atr":4.026733,"atr":0.026846,"spread_atr":0.372501,"own_change_pct":0.110803,"rel_strength_pct":{"SPY":0.073722,"IWM":0.152757}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.027801},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"386e41825647","ts":"2026-09-21T16:13:10.174872+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9235,"target":9.1186,"target_label":"ceiling","reward_risk":1.26,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":9.0155,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":3.0,"volume_pace":1.084,"trend":"flat","recent_slope_pct":-0.0843,"volatility":"medium"},"price":9.01,"volume":{"bars":163,"last_bar_volume":6109.0,"baseline_avg":16013.45,"bar_rvol":0.381492,"raw_accel":-0.276785,"smooth_accel":-0.742037,"accel_momentum":0.0312,"rvol_3bar":[0.471837,0.530862,0.381492],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":2427.0,"sell_vol":1978.0,"unclassified_vol":0.0,"imbalance":0.10193,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":6.548323},"context":{"vwap":9.015491,"price_vs_vwap_pct":-0.060904,"ema9":9.027255,"ema20":9.020936,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.313267,"dist_to_hod_atr":4.466284,"atr":0.026846,"spread_atr":0.372501,"own_change_pct":0.110803,"rel_strength_pct":{"SPY":0.073722,"IWM":0.152757}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.038885},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"079667e7ac17","ts":"2026-09-21T16:13:15.454971+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.935,"target":9.1186,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.84},"price":9.0215,"vwap":9.0155,"ext_from_open_pct":0.02,"max_ext_allowed_pct":3.0,"volume_pace":1.084,"trend":"flat","recent_slope_pct":-0.0588,"volatility":"medium"},"price":9.0215,"volume":{"bars":163,"last_bar_volume":6109.0,"baseline_avg":16013.45,"bar_rvol":0.381492,"raw_accel":-0.276785,"smooth_accel":-0.742037,"accel_momentum":0.0312,"rvol_3bar":[0.471837,0.530862,0.381492],"trend_3bar":"MIXED","projected_rvol":0.145947},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":2424.0,"sell_vol":2078.0,"unclassified_vol":0.0,"imbalance":0.076855,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":4.862036},"context":{"vwap":9.015491,"price_vs_vwap_pct":0.066654,"ema9":9.027255,"ema20":9.020936,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.187308,"dist_to_hod_atr":4.037908,"atr":0.026846,"spread_atr":0.372501,"own_change_pct":0.110803,"rel_strength_pct":{"SPY":0.073722,"IWM":0.152757}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.029319},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"363888c3914b","ts":"2026-09-21T16:13:20.594752+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.00 below VWAP $9.02","plan":{"state":"PASS","setup":"","stop":8.9135,"target":9.1186,"target_label":"ceiling","reward_risk":1.37,"pos_in_5d_range_pct":124.5,"room_to_5d_high_atr":-0.78},"price":9.0,"vwap":9.0155,"ext_from_open_pct":-0.22,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":-0.1064,"volatility":"medium"},"price":9.0,"volume":{"bars":163,"last_bar_volume":6109.0,"baseline_avg":16013.45,"bar_rvol":0.381492,"raw_accel":-0.276785,"smooth_accel":-0.742037,"accel_momentum":0.0312,"rvol_3bar":[0.471837,0.530862,0.381492],"trend_3bar":"MIXED","projected_rvol":0.137541},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1616.0,"sell_vol":2066.0,"unclassified_vol":0.0,"imbalance":-0.122216,"bid":9.0,"ask":9.01,"spread_pct":0.111049,"quote_size_imbalance":null,"quote_age_s":1.363265},"context":{"vwap":9.015491,"price_vs_vwap_pct":-0.171824,"ema9":9.027255,"ema20":9.020936,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.422798,"dist_to_hod_atr":4.838785,"atr":0.026846,"spread_atr":0.372501,"own_change_pct":0.110803,"rel_strength_pct":{"SPY":0.073722,"IWM":0.152757}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.046624},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0bf27fd9d866","ts":"2026-09-21T16:13:35.898384+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.1717,"target":8.495,"target_label":"ceiling","reward_risk":2.92,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2542,"vwap":8.2087,"ext_from_open_pct":3.05,"max_ext_allowed_pct":4.0,"volume_pace":3.031,"trend":"flat","recent_slope_pct":-0.0421,"volatility":"unknown"},"price":8.2542,"volume":{"bars":162,"last_bar_volume":881.0,"baseline_avg":1473.5,"bar_rvol":0.597896,"raw_accel":-0.310642,"smooth_accel":0.529493,"accel_momentum":1.041099,"rvol_3bar":[0.029792,0.902574,0.597896],"trend_3bar":"MIXED","projected_rvol":0.798544},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":551.0,"sell_vol":152.0,"unclassified_vol":0.0,"imbalance":0.567568,"bid":8.25,"ask":8.28,"spread_pct":0.362976,"quote_size_imbalance":null,"quote_age_s":23.376663},"context":{"vwap":8.20869,"price_vs_vwap_pct":0.554413,"ema9":8.272325,"ema20":8.270613,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.797203,"dist_to_hod_atr":5.186707,"atr":0.062814,"spread_atr":0.477597,"own_change_pct":-0.30175,"rel_strength_pct":{"SPY":-0.338831,"IWM":-0.259797}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.339346},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5718b4f945c6","ts":"2026-09-21T16:13:35.898384+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.17,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4801,"vwap":6.3394,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.388,"trend":"flat","recent_slope_pct":0.1223,"volatility":"unknown"},"price":6.4801,"volume":{"bars":163,"last_bar_volume":171203.0,"baseline_avg":99178.95,"bar_rvol":1.726203,"raw_accel":1.076648,"smooth_accel":0.215284,"accel_momentum":-0.376208,"rvol_3bar":[0.771249,0.846358,1.726203],"trend_3bar":"ACCELERATING","projected_rvol":0.443449},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":14742.0,"sell_vol":10761.0,"unclassified_vol":0.0,"imbalance":0.156099,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.418925},"context":{"vwap":6.339141,"price_vs_vwap_pct":2.223628,"ema9":6.468642,"ema20":6.458249,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.152542,"dist_to_hod_atr":0.270784,"atr":0.03656,"spread_atr":0.273519,"own_change_pct":0.15444,"rel_strength_pct":{"SPY":0.117359,"IWM":0.196394}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.269459},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4ef71137e7bb","ts":"2026-09-21T16:13:56.157582+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2056,"target":8.495,"target_label":"ceiling","reward_risk":2.49,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2885,"vwap":8.2088,"ext_from_open_pct":3.48,"max_ext_allowed_pct":5.0,"volume_pace":3.024,"trend":"flat","recent_slope_pct":0.0409,"volatility":"unknown"},"price":8.2885,"volume":{"bars":162,"last_bar_volume":881.0,"baseline_avg":1473.5,"bar_rvol":0.597896,"raw_accel":-0.310642,"smooth_accel":0.529493,"accel_momentum":1.041099,"rvol_3bar":[0.029792,0.902574,0.597896],"trend_3bar":"MIXED","projected_rvol":0.524966},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":16.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.52381,"bid":8.25,"ask":8.28,"spread_pct":0.362976,"quote_size_imbalance":null,"quote_age_s":43.635861},"context":{"vwap":8.20869,"price_vs_vwap_pct":0.972263,"ema9":8.272325,"ema20":8.270613,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.397436,"dist_to_hod_atr":4.640654,"atr":0.062814,"spread_atr":0.477597,"own_change_pct":-0.30175,"rel_strength_pct":{"SPY":-0.338831,"IWM":-0.259797}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.313184},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1957187ca560","ts":"2026-09-21T16:13:56.157582+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.5786,"target":9.74,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":106.3,"room_to_5d_high_atr":-0.06},"price":9.695,"vwap":9.6842,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.692,"trend":"flat","recent_slope_pct":-0.0503,"volatility":"medium"},"price":9.695,"volume":{"bars":163,"last_bar_volume":2643.0,"baseline_avg":4705.0,"bar_rvol":0.561743,"raw_accel":1.15228,"smooth_accel":-0.732729,"accel_momentum":-0.1469,"rvol_3bar":[1.406807,0.241601,0.561743],"trend_3bar":"MIXED","projected_rvol":0.816134},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":463.0,"sell_vol":2605.0,"unclassified_vol":0.0,"imbalance":-0.698175,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":1.959448},"context":{"vwap":9.684148,"price_vs_vwap_pct":0.112055,"ema9":9.714593,"ema20":9.715305,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.373347,"dist_to_hod_atr":6.292133,"atr":0.021455,"spread_atr":0.466084,"own_change_pct":-0.154321,"rel_strength_pct":{"SPY":-0.191402,"IWM":-0.112367}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.392195},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9ff17f1eadbb","ts":"2026-09-21T16:13:56.157582+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":17.26,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4753,"vwap":6.3394,"ext_from_open_pct":2.95,"max_ext_allowed_pct":3.0,"volume_pace":1.385,"trend":"flat","recent_slope_pct":0.1075,"volatility":"unknown"},"price":6.4753,"volume":{"bars":163,"last_bar_volume":171203.0,"baseline_avg":99178.95,"bar_rvol":1.726203,"raw_accel":1.076648,"smooth_accel":0.215284,"accel_momentum":-0.376208,"rvol_3bar":[0.771249,0.846358,1.726203],"trend_3bar":"ACCELERATING","projected_rvol":0.326153},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":10645.0,"sell_vol":11381.0,"unclassified_vol":0.0,"imbalance":-0.033415,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.157609},"context":{"vwap":6.339141,"price_vs_vwap_pct":2.147908,"ema9":6.468642,"ema20":6.458249,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.226502,"dist_to_hod_atr":0.402074,"atr":0.03656,"spread_atr":0.273519,"own_change_pct":0.15444,"rel_strength_pct":{"SPY":0.117359,"IWM":0.196394}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.057681},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b03c5fed0633","ts":"2026-09-21T16:14:01.208983+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":10.5614,"target":11.14,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":111.0,"room_to_5d_high_atr":-0.26},"price":10.9929,"vwap":10.8518,"ext_from_open_pct":0.12,"max_ext_allowed_pct":3.0,"volume_pace":0.69,"trend":"flat","recent_slope_pct":-0.0329,"volatility":"medium"},"price":10.9929,"volume":{"bars":164,"last_bar_volume":58655.0,"baseline_avg":143169.0,"bar_rvol":0.409691,"raw_accel":-0.799825,"smooth_accel":1.655561,"accel_momentum":-0.032999,"rvol_3bar":[1.498094,2.20082,0.409691],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":1257.0,"sell_vol":33589.0,"unclassified_vol":0.0,"imbalance":-0.927854,"bid":10.99,"ask":11.0,"spread_pct":0.09095,"quote_size_imbalance":null,"quote_age_s":1.207746},"context":{"vwap":10.851755,"price_vs_vwap_pct":1.300665,"ema9":11.004404,"ema20":11.008068,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.13854,"dist_to_hod_atr":3.787964,"atr":0.033422,"spread_atr":0.299207,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.016853,"IWM":0.048948}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.380133},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dceb1c430d28","ts":"2026-09-21T16:14:01.208983+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":14.28,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3395,"ext_from_open_pct":3.18,"max_ext_allowed_pct":3.0,"volume_pace":1.385,"trend":"flat","recent_slope_pct":0.1529,"volatility":"unknown"},"price":6.49,"volume":{"bars":163,"last_bar_volume":171203.0,"baseline_avg":99178.95,"bar_rvol":1.726203,"raw_accel":1.076648,"smooth_accel":0.215284,"accel_momentum":-0.376208,"rvol_3bar":[0.771249,0.846358,1.726203],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":5535.0,"sell_vol":11005.0,"unclassified_vol":0.0,"imbalance":-0.330713,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.208797},"context":{"vwap":6.339141,"price_vs_vwap_pct":2.379801,"ema9":6.468642,"ema20":6.458249,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.03656,"spread_atr":0.273519,"own_change_pct":0.15444,"rel_strength_pct":{"SPY":0.137587,"IWM":0.203388}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.570878},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ef012f4ae95b","ts":"2026-09-21T16:14:06.320885+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0097,"target":12.29,"target_label":"prev_day_high","reward_risk":0.6,"pos_in_5d_range_pct":62.9,"room_to_5d_high_atr":0.59},"price":12.185,"vwap":12.1676,"ext_from_open_pct":-0.93,"max_ext_allowed_pct":4.0,"volume_pace":0.792,"trend":"flat","recent_slope_pct":-0.0777,"volatility":"medium"},"price":12.185,"volume":{"bars":164,"last_bar_volume":6114.0,"baseline_avg":10703.85,"bar_rvol":0.571196,"raw_accel":-0.510919,"smooth_accel":-0.032313,"accel_momentum":0.539173,"rvol_3bar":[0.439539,1.166726,0.571196],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":947.0,"sell_vol":321.0,"unclassified_vol":0.0,"imbalance":0.493691,"bid":12.18,"ask":12.19,"spread_pct":0.082068,"quote_size_imbalance":null,"quote_age_s":0.668905},"context":{"vwap":12.167566,"price_vs_vwap_pct":0.143281,"ema9":12.202557,"ema20":12.183214,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.441954,"dist_to_hod_atr":6.107271,"atr":0.04994,"spread_atr":0.200238,"own_change_pct":-0.388173,"rel_strength_pct":{"SPY":-0.405027,"IWM":-0.339226}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.281994},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c78b4701b916","ts":"2026-09-21T16:14:16.568455+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.1884,"target":8.495,"target_label":"ceiling","reward_risk":2.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2711,"vwap":8.2088,"ext_from_open_pct":3.26,"max_ext_allowed_pct":5.0,"volume_pace":3.019,"trend":"flat","recent_slope_pct":-0.0036,"volatility":"unknown"},"price":8.2711,"volume":{"bars":163,"last_bar_volume":831.0,"baseline_avg":1442.3,"bar_rvol":0.576163,"raw_accel":-0.056754,"smooth_accel":6.310513,"accel_momentum":5.78102,"rvol_3bar":[0.902574,0.597896,0.576163],"trend_3bar":"DECELERATING","projected_rvol":0.130562},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":66.0,"sell_vol":109.0,"unclassified_vol":0.0,"imbalance":-0.245714,"bid":8.25,"ask":8.28,"spread_pct":0.362976,"quote_size_imbalance":null,"quote_age_s":64.046734},"context":{"vwap":8.208756,"price_vs_vwap_pct":0.759477,"ema9":8.27086,"ema20":8.270079,"ema_stack":true,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.600233,"dist_to_hod_atr":5.082458,"atr":0.060778,"spread_atr":0.493602,"own_change_pct":-0.420487,"rel_strength_pct":{"SPY":-0.43734,"IWM":-0.371539}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.141571},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7c7973b3a858","ts":"2026-09-21T16:14:42.272230+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":18.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.3399,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.383,"trend":"flat","recent_slope_pct":0.0065,"volatility":"unknown"},"price":6.47,"volume":{"bars":164,"last_bar_volume":31149.0,"baseline_avg":106750.4,"bar_rvol":0.291793,"raw_accel":-0.818058,"smooth_accel":0.088571,"accel_momentum":-0.126713,"rvol_3bar":[0.846358,1.726203,0.291793],"trend_3bar":"MIXED","projected_rvol":0.577041},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":19585.0,"sell_vol":21092.0,"unclassified_vol":0.0,"imbalance":-0.037048,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.355461},"context":{"vwap":6.339465,"price_vs_vwap_pct":2.059088,"ema9":6.472914,"ema20":6.461273,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.308166,"dist_to_hod_atr":0.558563,"atr":0.035806,"spread_atr":0.279282,"own_change_pct":0.464396,"rel_strength_pct":{"SPY":0.447543,"IWM":0.513344}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.01081},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5b23d06876df","ts":"2026-09-21T16:14:52.617341+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.5% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":6.6417,"target":6.85,"target_label":"ceiling","reward_risk":0.28,"pos_in_5d_range_pct":121.9,"room_to_5d_high_atr":-0.59},"price":6.805,"vwap":6.5528,"ext_from_open_pct":6.49,"max_ext_allowed_pct":4.0,"volume_pace":0.688,"trend":"flat","recent_slope_pct":0.0765,"volatility":"high"},"price":6.805,"volume":{"bars":164,"last_bar_volume":7271.0,"baseline_avg":4745.0,"bar_rvol":1.53235,"raw_accel":-0.502838,"smooth_accel":2.119828,"accel_momentum":1.300311,"rvol_3bar":[0.702423,3.568422,1.53235],"trend_3bar":"MIXED","projected_rvol":0.37009},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":643.0,"sell_vol":18.0,"unclassified_vol":0.0,"imbalance":0.945537,"bid":6.79,"ask":6.82,"spread_pct":0.440852,"quote_size_imbalance":null,"quote_age_s":8.00733},"context":{"vwap":6.55258,"price_vs_vwap_pct":3.852217,"ema9":6.807224,"ema20":6.78736,"ema_stack":false,"ema_warm":true,"hod":6.85,"dist_to_hod_pct":-0.656934,"dist_to_hod_atr":1.32949,"atr":0.033848,"spread_atr":0.886327,"own_change_pct":0.294118,"rel_strength_pct":{"SPY":0.277265,"IWM":0.343065}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.448894},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"834d88288581","ts":"2026-09-21T16:15:02.968943+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.1605,"target":8.495,"target_label":"ceiling","reward_risk":2.35,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2605,"vwap":8.2088,"ext_from_open_pct":3.13,"max_ext_allowed_pct":4.0,"volume_pace":3.008,"trend":"flat","recent_slope_pct":-0.0462,"volatility":"unknown"},"price":8.2605,"volume":{"bars":164,"last_bar_volume":912.0,"baseline_avg":1427.05,"bar_rvol":0.639081,"raw_accel":0.097473,"smooth_accel":0.685292,"accel_momentum":-5.625221,"rvol_3bar":[0.597896,0.576163,0.639081],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":334.0,"sell_vol":510.0,"unclassified_vol":0.0,"imbalance":-0.208531,"bid":8.22,"ask":8.27,"spread_pct":0.606428,"quote_size_imbalance":null,"quote_age_s":2.890959},"context":{"vwap":8.208818,"price_vs_vwap_pct":0.62959,"ema9":8.266688,"ema20":8.268166,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.723776,"dist_to_hod_atr":5.454147,"atr":0.058579,"spread_atr":0.853544,"own_change_pct":-0.214086,"rel_strength_pct":{"SPY":-0.20101,"IWM":-0.175634}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.133268},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e1c2c160cc60","ts":"2026-09-21T16:15:02.968943+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.6129,"target":9.74,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":110.3,"room_to_5d_high_atr":-0.11},"price":9.7114,"vwap":9.6844,"ext_from_open_pct":0.22,"max_ext_allowed_pct":4.0,"volume_pace":0.694,"trend":"flat","recent_slope_pct":-0.0023,"volatility":"medium"},"price":9.7114,"volume":{"bars":165,"last_bar_volume":6654.0,"baseline_avg":4824.85,"bar_rvol":1.37911,"raw_accel":0.851419,"smooth_accel":-0.188633,"accel_momentum":0.329909,"rvol_3bar":[0.561743,0.745233,1.37911],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":8421.0,"sell_vol":9162.0,"unclassified_vol":0.0,"imbalance":-0.042143,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":0.089088},"context":{"vwap":9.684253,"price_vs_vwap_pct":0.280319,"ema9":9.710539,"ema20":9.71305,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.206511,"dist_to_hod_atr":5.509668,"atr":0.021526,"spread_atr":0.464559,"own_change_pct":-0.07101,"rel_strength_pct":{"SPY":-0.057934,"IWM":-0.032558}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.05812},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a4a54826e657","ts":"2026-09-21T16:15:02.968943+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0247,"target":12.29,"target_label":"prev_day_high","reward_risk":0.51,"pos_in_5d_range_pct":64.3,"room_to_5d_high_atr":0.57},"price":12.2,"vwap":12.1676,"ext_from_open_pct":-0.81,"max_ext_allowed_pct":4.0,"volume_pace":0.788,"trend":"flat","recent_slope_pct":-0.0442,"volatility":"medium"},"price":12.2,"volume":{"bars":165,"last_bar_volume":5115.0,"baseline_avg":10592.25,"bar_rvol":0.4829,"raw_accel":-0.163395,"smooth_accel":0.138566,"accel_momentum":0.170879,"rvol_3bar":[1.166726,0.571196,0.4829],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":2566.0,"sell_vol":1216.0,"unclassified_vol":0.0,"imbalance":0.356954,"bid":12.2,"ask":12.21,"spread_pct":0.081934,"quote_size_imbalance":null,"quote_age_s":0.095247},"context":{"vwap":12.167606,"price_vs_vwap_pct":0.266234,"ema9":12.201646,"ema20":12.184622,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.321857,"dist_to_hod_atr":5.974751,"atr":0.048538,"spread_atr":0.206026,"own_change_pct":-0.192284,"rel_strength_pct":{"SPY":-0.179208,"IWM":-0.153832}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.172373},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"812ec795ef72","ts":"2026-09-21T16:15:08.239969+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.7% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":6.6539,"target":6.95,"target_label":"premarket_high","reward_risk":0.81,"pos_in_5d_range_pct":122.6,"room_to_5d_high_atr":-0.61},"price":6.8172,"vwap":6.5528,"ext_from_open_pct":6.69,"max_ext_allowed_pct":4.0,"volume_pace":0.687,"trend":"flat","recent_slope_pct":-0.0503,"volatility":"high"},"price":6.8172,"volume":{"bars":165,"last_bar_volume":1540.0,"baseline_avg":5097.45,"bar_rvol":0.302112,"raw_accel":-0.7882,"smooth_accel":1.504649,"accel_momentum":-0.61518,"rvol_3bar":[3.568422,1.53235,0.302112],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":34.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":0.096774,"bid":6.8,"ask":6.82,"spread_pct":0.293686,"quote_size_imbalance":null,"quote_age_s":0.39963},"context":{"vwap":6.552799,"price_vs_vwap_pct":4.034935,"ema9":6.806779,"ema20":6.78904,"ema_stack":true,"ema_warm":true,"hod":6.85,"dist_to_hod_pct":-0.478832,"dist_to_hod_atr":0.998221,"atr":0.032858,"spread_atr":0.608671,"own_change_pct":0.182552,"rel_strength_pct":{"SPY":0.195627,"IWM":0.221004}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.029237},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0f9c286081b5","ts":"2026-09-21T16:15:08.239969+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5993,"target":8.76,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":127.4,"room_to_5d_high_atr":-0.86},"price":8.7012,"vwap":8.6277,"ext_from_open_pct":0.94,"max_ext_allowed_pct":3.0,"volume_pace":0.97,"trend":"flat","recent_slope_pct":-0.1234,"volatility":"medium"},"price":8.7012,"volume":{"bars":165,"last_bar_volume":385.0,"baseline_avg":3182.85,"bar_rvol":0.120961,"raw_accel":-0.516157,"smooth_accel":-0.125044,"accel_momentum":0.132913,"rvol_3bar":[0.452223,0.220303,0.120961],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":20.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":-0.68,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":0.136966},"context":{"vwap":8.627701,"price_vs_vwap_pct":0.851901,"ema9":8.720301,"ema20":8.726488,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.761418,"dist_to_hod_atr":8.245999,"atr":0.029966,"spread_atr":0.333711,"own_change_pct":-0.129642,"rel_strength_pct":{"SPY":-0.116566,"IWM":-0.09119}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.082253},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a4b989b6ea9e","ts":"2026-09-21T16:15:13.448254+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.1675,"target":8.495,"target_label":"ceiling","reward_risk":2.97,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.25,"vwap":8.2089,"ext_from_open_pct":3.0,"max_ext_allowed_pct":5.0,"volume_pace":3.008,"trend":"flat","recent_slope_pct":-0.0717,"volatility":"unknown"},"price":8.25,"volume":{"bars":164,"last_bar_volume":912.0,"baseline_avg":1427.05,"bar_rvol":0.639081,"raw_accel":0.097473,"smooth_accel":0.685292,"accel_momentum":-5.625221,"rvol_3bar":[0.597896,0.576163,0.639081],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1013.0,"sell_vol":535.0,"unclassified_vol":0.0,"imbalance":0.308786,"bid":8.24,"ask":8.28,"spread_pct":0.484262,"quote_size_imbalance":null,"quote_age_s":1.954107},"context":{"vwap":8.208818,"price_vs_vwap_pct":0.501679,"ema9":8.266688,"ema20":8.268166,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.846154,"dist_to_hod_atr":5.633392,"atr":0.058579,"spread_atr":0.682835,"own_change_pct":-0.214086,"rel_strength_pct":{"SPY":-0.20101,"IWM":-0.175634}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.197339},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c7788d9cdf0a","ts":"2026-09-21T16:15:49.779240+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.34,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4793,"vwap":6.3412,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":1.387,"trend":"flat","recent_slope_pct":-0.0253,"volatility":"unknown"},"price":6.4793,"volume":{"bars":165,"last_bar_volume":66873.0,"baseline_avg":106593.9,"bar_rvol":0.627362,"raw_accel":1.146875,"smooth_accel":-0.048436,"accel_momentum":-0.137007,"rvol_3bar":[1.726203,0.291793,0.627362],"trend_3bar":"MIXED","projected_rvol":1.208353},"flow":{"window_s":30,"trades":144,"trade_rate":4.8,"buy_vol":31485.0,"sell_vol":36940.0,"unclassified_vol":0.0,"imbalance":-0.079722,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.038348},"context":{"vwap":6.340148,"price_vs_vwap_pct":2.194767,"ema9":6.474331,"ema20":6.463057,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.164869,"dist_to_hod_atr":0.308561,"atr":0.034677,"spread_atr":0.288374,"own_change_pct":0.499395,"rel_strength_pct":{"SPY":0.512471,"IWM":0.537847}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.050015},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f1f556f61b29","ts":"2026-09-21T16:15:54.931134+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.49,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4786,"vwap":6.3414,"ext_from_open_pct":3.0,"max_ext_allowed_pct":4.0,"volume_pace":1.388,"trend":"flat","recent_slope_pct":-0.0275,"volatility":"unknown"},"price":6.4786,"volume":{"bars":165,"last_bar_volume":66873.0,"baseline_avg":106593.9,"bar_rvol":0.627362,"raw_accel":1.146875,"smooth_accel":-0.048436,"accel_momentum":-0.137007,"rvol_3bar":[1.726203,0.291793,0.627362],"trend_3bar":"MIXED","projected_rvol":1.297506},"flow":{"window_s":30,"trades":144,"trade_rate":4.8,"buy_vol":50980.0,"sell_vol":36989.0,"unclassified_vol":0.0,"imbalance":0.159045,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.109835},"context":{"vwap":6.340148,"price_vs_vwap_pct":2.183727,"ema9":6.474331,"ema20":6.463057,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.175655,"dist_to_hod_atr":0.328747,"atr":0.034677,"spread_atr":0.288374,"own_change_pct":0.499395,"rel_strength_pct":{"SPY":0.512471,"IWM":0.537847}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.099779},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aa4afb02acde","ts":"2026-09-21T16:16:05.524054+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6066,"target":8.76,"target_label":"premarket_high","reward_risk":0.51,"pos_in_5d_range_pct":127.9,"room_to_5d_high_atr":-0.88},"price":8.7085,"vwap":8.6277,"ext_from_open_pct":1.03,"max_ext_allowed_pct":4.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":-0.0379,"volatility":"medium"},"price":8.7085,"volume":{"bars":166,"last_bar_volume":206.0,"baseline_avg":3160.5,"bar_rvol":0.06518,"raw_accel":-0.739282,"smooth_accel":-0.643349,"accel_momentum":-0.518305,"rvol_3bar":[0.220303,0.120961,0.06518],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":40.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.904762,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":6.637997},"context":{"vwap":8.627722,"price_vs_vwap_pct":0.936258,"ema9":8.717241,"ema20":8.724442,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.679839,"dist_to_hod_atr":7.937419,"atr":0.030211,"spread_atr":0.331002,"own_change_pct":-0.343446,"rel_strength_pct":{"SPY":-0.324012,"IWM":-0.324221}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.058972},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"8c3612da8042","ts":"2026-09-21T16:16:10.624503+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.47,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4787,"vwap":6.3421,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":1.393,"trend":"flat","recent_slope_pct":-0.0271,"volatility":"unknown"},"price":6.4787,"volume":{"bars":166,"last_bar_volume":160891.0,"baseline_avg":101719.2,"bar_rvol":1.581717,"raw_accel":1.405919,"smooth_accel":-0.227487,"accel_momentum":-0.179051,"rvol_3bar":[0.291793,0.627362,1.581717],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":55787.0,"sell_vol":41808.0,"unclassified_vol":0.0,"imbalance":0.143235,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.333629},"context":{"vwap":6.341786,"price_vs_vwap_pct":2.158925,"ema9":6.476465,"ema20":6.465146,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.174114,"dist_to_hod_atr":0.336022,"atr":0.033629,"spread_atr":0.297364,"own_change_pct":0.225643,"rel_strength_pct":{"SPY":0.245077,"IWM":0.244868}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.226557},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f5340ba35ca8","ts":"2026-09-21T16:16:26.032386+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":18.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.3425,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.395,"trend":"flat","recent_slope_pct":-0.054,"volatility":"unknown"},"price":6.47,"volume":{"bars":166,"last_bar_volume":160891.0,"baseline_avg":101719.2,"bar_rvol":1.581717,"raw_accel":1.405919,"smooth_accel":-0.227487,"accel_momentum":-0.179051,"rvol_3bar":[0.291793,0.627362,1.581717],"trend_3bar":"ACCELERATING","projected_rvol":1.775057},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":42203.0,"sell_vol":53971.0,"unclassified_vol":0.0,"imbalance":-0.122362,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.569656},"context":{"vwap":6.341786,"price_vs_vwap_pct":2.021739,"ema9":6.476465,"ema20":6.465146,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.308166,"dist_to_hod_atr":0.594729,"atr":0.033629,"spread_atr":0.297364,"own_change_pct":0.225643,"rel_strength_pct":{"SPY":0.245077,"IWM":0.244868}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.193541},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7cf53a49126e","ts":"2026-09-21T16:16:36.326137+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.43,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4789,"vwap":6.3431,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":1.399,"trend":"flat","recent_slope_pct":-0.0265,"volatility":"unknown"},"price":6.4789,"volume":{"bars":166,"last_bar_volume":160891.0,"baseline_avg":101719.2,"bar_rvol":1.581717,"raw_accel":1.405919,"smooth_accel":-0.227487,"accel_momentum":-0.179051,"rvol_3bar":[0.291793,0.627362,1.581717],"trend_3bar":"ACCELERATING","projected_rvol":2.115048},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":53109.0,"sell_vol":51832.0,"unclassified_vol":0.0,"imbalance":0.012169,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.65667},"context":{"vwap":6.341786,"price_vs_vwap_pct":2.162078,"ema9":6.476465,"ema20":6.465146,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.171032,"dist_to_hod_atr":0.330074,"atr":0.033629,"spread_atr":0.297364,"own_change_pct":0.225643,"rel_strength_pct":{"SPY":0.245077,"IWM":0.244868}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.019248},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0544ad861076","ts":"2026-09-21T16:17:16.998712+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.06% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":11.12,"target":12.0486,"target_label":"premarket_high","reward_risk":2.87,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.36,"vwap":11.3249,"ext_from_open_pct":-2.07,"max_ext_allowed_pct":3.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":-0.1753,"volatility":"unknown"},"price":11.36,"volume":{"bars":155,"last_bar_volume":51.0,"baseline_avg":183.55,"bar_rvol":0.277853,"raw_accel":-0.203125,"smooth_accel":0.244755,"accel_momentum":-5.806527,"rvol_3bar":[1.066136,0.287189,0.277853],"trend_3bar":"DECELERATING","projected_rvol":3.942164},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":15.0,"sell_vol":205.0,"unclassified_vol":0.0,"imbalance":-0.863636,"bid":11.29,"ask":11.41,"spread_pct":1.057269,"quote_size_imbalance":null,"quote_age_s":0.407247},"context":{"vwap":11.324868,"price_vs_vwap_pct":0.310221,"ema9":11.412483,"ema20":11.401394,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.937238,"dist_to_hod_atr":6.984615,"atr":0.084471,"spread_atr":1.4206,"own_change_pct":-0.34965,"rel_strength_pct":{"SPY":-0.350298,"IWM":-0.370629}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.239964},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"da8748de3374","ts":"2026-09-21T16:17:27.124457+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":17.33,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3437,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.398,"trend":"flat","recent_slope_pct":-0.0358,"volatility":"unknown"},"price":6.475,"volume":{"bars":167,"last_bar_volume":156497.0,"baseline_avg":108036.3,"bar_rvol":1.448559,"raw_accel":-0.02731,"smooth_accel":0.349259,"accel_momentum":0.576747,"rvol_3bar":[0.627362,1.581717,1.448559],"trend_3bar":"MIXED","projected_rvol":0.670858},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":1893.0,"sell_vol":31587.0,"unclassified_vol":0.0,"imbalance":-0.886918,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.110646},"context":{"vwap":6.343349,"price_vs_vwap_pct":2.075421,"ema9":6.478532,"ema20":6.467209,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.231125,"dist_to_hod_atr":0.459344,"atr":0.032655,"spread_atr":0.306229,"own_change_pct":0.027756,"rel_strength_pct":{"SPY":0.027108,"IWM":0.006777}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.284753},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"61e7063ccb0b","ts":"2026-09-21T16:17:32.221742+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.02,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4808,"vwap":6.3437,"ext_from_open_pct":3.03,"max_ext_allowed_pct":3.0,"volume_pace":1.398,"trend":"flat","recent_slope_pct":-0.0179,"volatility":"unknown"},"price":6.4808,"volume":{"bars":167,"last_bar_volume":156497.0,"baseline_avg":108036.3,"bar_rvol":1.448559,"raw_accel":-0.02731,"smooth_accel":0.349259,"accel_momentum":0.576747,"rvol_3bar":[0.627362,1.581717,1.448559],"trend_3bar":"MIXED","projected_rvol":0.689003},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":8172.0,"sell_vol":31297.0,"unclassified_vol":0.0,"imbalance":-0.585903,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.215825},"context":{"vwap":6.343349,"price_vs_vwap_pct":2.166855,"ema9":6.478532,"ema20":6.467209,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.141757,"dist_to_hod_atr":0.281731,"atr":0.032655,"spread_atr":0.306229,"own_change_pct":0.027756,"rel_strength_pct":{"SPY":0.027108,"IWM":0.006777}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.848715},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"220d85b35c6a","ts":"2026-09-21T16:17:37.385897+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5614,"target":11.05,"target_label":"ceiling","reward_risk":0.18,"pos_in_5d_range_pct":109.5,"room_to_5d_high_atr":-0.22},"price":10.975,"vwap":10.8525,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":-0.0409,"volatility":"medium"},"price":10.975,"volume":{"bars":167,"last_bar_volume":130642.0,"baseline_avg":123307.75,"bar_rvol":1.059479,"raw_accel":3.237917,"smooth_accel":-0.670533,"accel_momentum":0.135122,"rvol_3bar":[0.168897,0.201642,1.059479],"trend_3bar":"ACCELERATING","projected_rvol":0.87827},"flow":{"window_s":30,"trades":194,"trade_rate":6.466667,"buy_vol":7432.0,"sell_vol":58274.0,"unclassified_vol":0.0,"imbalance":-0.77378,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":1.101547},"context":{"vwap":10.852303,"price_vs_vwap_pct":1.130609,"ema9":10.999975,"ema20":11.00472,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.299519,"dist_to_hod_atr":4.969932,"atr":0.029075,"spread_atr":0.34394,"own_change_pct":0.001819,"rel_strength_pct":{"SPY":0.001171,"IWM":-0.01916}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.819804},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6389f7c74ad9","ts":"2026-09-21T16:17:37.385897+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":17.33,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3437,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.397,"trend":"flat","recent_slope_pct":-0.0358,"volatility":"unknown"},"price":6.475,"volume":{"bars":167,"last_bar_volume":156497.0,"baseline_avg":108036.3,"bar_rvol":1.448559,"raw_accel":-0.02731,"smooth_accel":0.349259,"accel_momentum":0.576747,"rvol_3bar":[0.627362,1.581717,1.448559],"trend_3bar":"MIXED","projected_rvol":0.596653},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":8167.0,"sell_vol":31260.0,"unclassified_vol":0.0,"imbalance":-0.585715,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":3.155667},"context":{"vwap":6.343349,"price_vs_vwap_pct":2.075421,"ema9":6.478532,"ema20":6.467209,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.231125,"dist_to_hod_atr":0.459344,"atr":0.032655,"spread_atr":0.306229,"own_change_pct":0.027756,"rel_strength_pct":{"SPY":0.027108,"IWM":0.006777}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.848444},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a6becd31ea21","ts":"2026-09-21T16:17:42.571185+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":10.8667,"target":11.14,"target_label":"premarket_high","reward_risk":1.12,"pos_in_5d_range_pct":111.2,"room_to_5d_high_atr":-0.26},"price":10.9957,"vwap":10.8525,"ext_from_open_pct":0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":-0.0033,"volatility":"medium"},"price":10.9957,"volume":{"bars":167,"last_bar_volume":130642.0,"baseline_avg":123307.75,"bar_rvol":1.059479,"raw_accel":3.237917,"smooth_accel":-0.670533,"accel_momentum":0.135122,"rvol_3bar":[0.168897,0.201642,1.059479],"trend_3bar":"ACCELERATING","projected_rvol":0.875261},"flow":{"window_s":30,"trades":236,"trade_rate":7.866667,"buy_vol":7834.0,"sell_vol":63846.0,"unclassified_vol":0.0,"imbalance":-0.781417,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":0.019918},"context":{"vwap":10.852303,"price_vs_vwap_pct":1.321352,"ema9":10.999975,"ema20":11.00472,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.113359,"dist_to_hod_atr":4.257977,"atr":0.029075,"spread_atr":0.34394,"own_change_pct":0.001819,"rel_strength_pct":{"SPY":0.001171,"IWM":-0.01916}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.827896},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"277761a7fdb1","ts":"2026-09-21T16:17:47.707307+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5614,"target":11.05,"target_label":"ceiling","reward_risk":0.19,"pos_in_5d_range_pct":109.4,"room_to_5d_high_atr":-0.22},"price":10.9733,"vwap":10.8526,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.678,"trend":"flat","recent_slope_pct":-0.044,"volatility":"medium"},"price":10.9733,"volume":{"bars":167,"last_bar_volume":130642.0,"baseline_avg":123307.75,"bar_rvol":1.059479,"raw_accel":3.237917,"smooth_accel":-0.670533,"accel_momentum":0.135122,"rvol_3bar":[0.168897,0.201642,1.059479],"trend_3bar":"ACCELERATING","projected_rvol":0.925884},"flow":{"window_s":30,"trades":257,"trade_rate":8.566667,"buy_vol":17180.0,"sell_vol":66423.0,"unclassified_vol":0.0,"imbalance":-0.58901,"bid":10.97,"ask":10.98,"spread_pct":0.091116,"quote_size_imbalance":null,"quote_age_s":0.12108},"context":{"vwap":10.852303,"price_vs_vwap_pct":1.114944,"ema9":10.999975,"ema20":11.00472,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.314807,"dist_to_hod_atr":5.028402,"atr":0.029075,"spread_atr":0.34394,"own_change_pct":0.001819,"rel_strength_pct":{"SPY":0.001171,"IWM":-0.01916}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.624044},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4304ae239ac2","ts":"2026-09-21T16:18:08.459639+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.5614,"target":11.05,"target_label":"ceiling","reward_risk":0.21,"pos_in_5d_range_pct":108.7,"room_to_5d_high_atr":-0.2},"price":10.965,"vwap":10.8526,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.678,"trend":"flat","recent_slope_pct":-0.0728,"volatility":"medium"},"price":10.965,"volume":{"bars":168,"last_bar_volume":103890.0,"baseline_avg":120744.25,"bar_rvol":0.860414,"raw_accel":-0.204773,"smooth_accel":-0.307264,"accel_momentum":0.363268,"rvol_3bar":[0.201642,1.059479,0.860414],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":276,"trade_rate":9.2,"buy_vol":11595.0,"sell_vol":43788.0,"unclassified_vol":0.0,"imbalance":-0.581279,"bid":10.96,"ask":10.97,"spread_pct":0.091199,"quote_size_imbalance":null,"quote_age_s":0.374258},"context":{"vwap":10.852584,"price_vs_vwap_pct":1.035848,"ema9":10.99398,"ema20":11.001413,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.389451,"dist_to_hod_atr":5.301822,"atr":0.029141,"spread_atr":0.34316,"own_change_pct":-0.212855,"rel_strength_pct":{"SPY":-0.208837,"IWM":-0.233841}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.500141},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5581cbc695ce","ts":"2026-09-21T16:18:29.239207+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.344,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.392,"trend":"flat","recent_slope_pct":-0.0133,"volatility":"unknown"},"price":6.48,"volume":{"bars":168,"last_bar_volume":57353.0,"baseline_avg":113700.1,"bar_rvol":0.504423,"raw_accel":-0.63352,"smooth_accel":0.391925,"accel_momentum":0.042666,"rvol_3bar":[1.581717,1.448559,0.504423],"trend_3bar":"DECELERATING","projected_rvol":0.168693},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":5302.0,"sell_vol":4045.0,"unclassified_vol":0.0,"imbalance":0.134482,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.166244},"context":{"vwap":6.343899,"price_vs_vwap_pct":2.145388,"ema9":6.478105,"ema20":6.468084,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.315018,"atr":0.031744,"spread_atr":0.315018,"own_change_pct":-0.132614,"rel_strength_pct":{"SPY":-0.128596,"IWM":-0.153599}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.067836},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"c8d0294952e0","ts":"2026-09-21T16:18:39.466996+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":18.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.344,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.391,"trend":"flat","recent_slope_pct":-0.0441,"volatility":"unknown"},"price":6.47,"volume":{"bars":168,"last_bar_volume":57353.0,"baseline_avg":113700.1,"bar_rvol":0.504423,"raw_accel":-0.63352,"smooth_accel":0.391925,"accel_momentum":0.042666,"rvol_3bar":[1.581717,1.448559,0.504423],"trend_3bar":"DECELERATING","projected_rvol":0.15831},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":3186.0,"sell_vol":2942.0,"unclassified_vol":0.0,"imbalance":0.039817,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.772074},"context":{"vwap":6.343899,"price_vs_vwap_pct":1.987756,"ema9":6.478105,"ema20":6.468084,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.308166,"dist_to_hod_atr":0.630036,"atr":0.031744,"spread_atr":0.315018,"own_change_pct":-0.132614,"rel_strength_pct":{"SPY":-0.128596,"IWM":-0.153599}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.020085},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"5995c0e9befd","ts":"2026-09-21T16:18:44.521778+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.2,"target":12.0486,"target_label":"premarket_high","reward_risk":4.3,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.36,"vwap":11.325,"ext_from_open_pct":-2.07,"max_ext_allowed_pct":4.0,"volume_pace":0.627,"trend":"flat","recent_slope_pct":-0.1756,"volatility":"unknown"},"price":11.36,"volume":{"bars":156,"last_bar_volume":205.0,"baseline_avg":181.5,"bar_rvol":1.129477,"raw_accel":3.019608,"smooth_accel":-0.366337,"accel_momentum":-0.611092,"rvol_3bar":[0.287189,0.277853,1.129477],"trend_3bar":"MIXED","projected_rvol":1.329092},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":6.0,"sell_vol":13.0,"unclassified_vol":0.0,"imbalance":-0.368421,"bid":11.33,"ask":11.41,"spread_pct":0.703606,"quote_size_imbalance":null,"quote_age_s":0.25659},"context":{"vwap":11.324923,"price_vs_vwap_pct":0.309733,"ema9":11.401987,"ema20":11.397452,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.937238,"dist_to_hod_atr":7.257533,"atr":0.081295,"spread_atr":0.984072,"own_change_pct":-0.699301,"rel_strength_pct":{"SPY":-0.695283,"IWM":-0.720286}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.416123},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1b9640864657","ts":"2026-09-21T16:18:54.657791+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":16.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4799,"vwap":6.3441,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.39,"trend":"flat","recent_slope_pct":-0.0136,"volatility":"unknown"},"price":6.4799,"volume":{"bars":168,"last_bar_volume":57353.0,"baseline_avg":113700.1,"bar_rvol":0.504423,"raw_accel":-0.63352,"smooth_accel":0.391925,"accel_momentum":0.042666,"rvol_3bar":[1.581717,1.448559,0.504423],"trend_3bar":"DECELERATING","projected_rvol":0.176179},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":1237.0,"sell_vol":7907.0,"unclassified_vol":0.0,"imbalance":-0.72944,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.735223},"context":{"vwap":6.343899,"price_vs_vwap_pct":2.143811,"ema9":6.478105,"ema20":6.468084,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.155624,"dist_to_hod_atr":0.318168,"atr":0.031744,"spread_atr":0.315018,"own_change_pct":-0.132614,"rel_strength_pct":{"SPY":-0.128596,"IWM":-0.153599}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.367947},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"62aba26d9032","ts":"2026-09-21T16:18:59.782412+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":17.33,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3441,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.389,"trend":"flat","recent_slope_pct":-0.0287,"volatility":"unknown"},"price":6.475,"volume":{"bars":168,"last_bar_volume":57353.0,"baseline_avg":113700.1,"bar_rvol":0.504423,"raw_accel":-0.63352,"smooth_accel":0.391925,"accel_momentum":0.042666,"rvol_3bar":[1.581717,1.448559,0.504423],"trend_3bar":"DECELERATING","projected_rvol":0.200869},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":3207.0,"sell_vol":10202.0,"unclassified_vol":0.0,"imbalance":-0.521665,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.084612},"context":{"vwap":6.343899,"price_vs_vwap_pct":2.066572,"ema9":6.478105,"ema20":6.468084,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.231125,"dist_to_hod_atr":0.472527,"atr":0.031744,"spread_atr":0.315018,"own_change_pct":-0.132614,"rel_strength_pct":{"SPY":-0.128596,"IWM":-0.153599}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.26314},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"c0f8784eaaab","ts":"2026-09-21T16:19:04.899385+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.1338,"target":8.495,"target_label":"ceiling","reward_risk":2.01,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2538,"vwap":8.2089,"ext_from_open_pct":3.04,"max_ext_allowed_pct":4.0,"volume_pace":2.942,"trend":"flat","recent_slope_pct":0.0102,"volatility":"unknown"},"price":8.2538,"volume":{"bars":168,"last_bar_volume":151.0,"baseline_avg":1308.05,"bar_rvol":0.115439,"raw_accel":-0.538244,"smooth_accel":-0.703571,"accel_momentum":-0.226818,"rvol_3bar":[0.314013,0.099478,0.115439],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":12.0,"sell_vol":12.0,"unclassified_vol":0.0,"imbalance":0.0,"bid":8.22,"ask":8.28,"spread_pct":0.727273,"quote_size_imbalance":null,"quote_age_s":4.476914},"context":{"vwap":8.208912,"price_vs_vwap_pct":0.546815,"ema9":8.259372,"ema20":8.263396,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.801865,"dist_to_hod_atr":6.002308,"atr":0.054346,"spread_atr":1.104042,"own_change_pct":0.113733,"rel_strength_pct":{"SPY":0.114381,"IWM":0.075255}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.0},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"86d5375bdfaa","ts":"2026-09-21T16:19:20.421663+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6081,"target":8.76,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":128.1,"room_to_5d_high_atr":-0.88},"price":8.71,"vwap":8.6282,"ext_from_open_pct":1.04,"max_ext_allowed_pct":3.0,"volume_pace":0.952,"trend":"flat","recent_slope_pct":0.0031,"volatility":"medium"},"price":8.71,"volume":{"bars":169,"last_bar_volume":879.0,"baseline_avg":3001.8,"bar_rvol":0.292824,"raw_accel":-0.354151,"smooth_accel":1.611583,"accel_momentum":1.530146,"rvol_3bar":[0.369537,0.460326,0.292824],"trend_3bar":"MIXED","projected_rvol":0.943529},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":491.0,"sell_vol":473.0,"unclassified_vol":0.0,"imbalance":0.018672,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":0.017374},"context":{"vwap":8.628085,"price_vs_vwap_pct":0.949395,"ema9":8.715482,"ema20":8.7217,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.663076,"dist_to_hod_atr":8.356435,"atr":0.028517,"spread_atr":0.350669,"own_change_pct":0.114877,"rel_strength_pct":{"SPY":0.115525,"IWM":0.076399}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.005468},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"586d209b75fa","ts":"2026-09-21T16:19:35.937400+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $8.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.14,"target":8.495,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.26,"vwap":8.2089,"ext_from_open_pct":3.12,"max_ext_allowed_pct":3.0,"volume_pace":2.934,"trend":"flat","recent_slope_pct":0.0252,"volatility":"unknown"},"price":8.26,"volume":{"bars":168,"last_bar_volume":151.0,"baseline_avg":1308.05,"bar_rvol":0.115439,"raw_accel":-0.538244,"smooth_accel":-0.703571,"accel_momentum":-0.226818,"rvol_3bar":[0.314013,0.099478,0.115439],"trend_3bar":"MIXED","projected_rvol":0.225919},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":42.0,"sell_vol":127.0,"unclassified_vol":0.0,"imbalance":-0.502959,"bid":8.23,"ask":8.29,"spread_pct":0.726392,"quote_size_imbalance":null,"quote_age_s":4.958736},"context":{"vwap":8.208912,"price_vs_vwap_pct":0.622343,"ema9":8.259372,"ema20":8.263396,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.729604,"dist_to_hod_atr":5.888224,"atr":0.054346,"spread_atr":1.104042,"own_change_pct":0.113733,"rel_strength_pct":{"SPY":0.114381,"IWM":0.075255}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.058061},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2994894dd5aa","ts":"2026-09-21T16:19:41.060150+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.11,"target":8.495,"target_label":"ceiling","reward_risk":2.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.23,"vwap":8.2089,"ext_from_open_pct":2.75,"max_ext_allowed_pct":3.0,"volume_pace":2.932,"trend":"flat","recent_slope_pct":-0.0475,"volatility":"unknown"},"price":8.23,"volume":{"bars":168,"last_bar_volume":151.0,"baseline_avg":1308.05,"bar_rvol":0.115439,"raw_accel":-0.538244,"smooth_accel":-0.703571,"accel_momentum":-0.226818,"rvol_3bar":[0.314013,0.099478,0.115439],"trend_3bar":"MIXED","projected_rvol":0.20667},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":11.0,"sell_vol":135.0,"unclassified_vol":0.0,"imbalance":-0.849315,"bid":8.23,"ask":8.29,"spread_pct":0.726392,"quote_size_imbalance":null,"quote_age_s":3.746019},"context":{"vwap":8.208912,"price_vs_vwap_pct":0.256886,"ema9":8.259372,"ema20":8.263396,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.079254,"dist_to_hod_atr":6.440245,"atr":0.054346,"spread_atr":1.104042,"own_change_pct":0.113733,"rel_strength_pct":{"SPY":0.114381,"IWM":0.075255}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.098044},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f91c6b50497b","ts":"2026-09-21T16:19:51.320828+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $8.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.14,"target":8.495,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.26,"vwap":8.2089,"ext_from_open_pct":3.12,"max_ext_allowed_pct":3.0,"volume_pace":2.93,"trend":"flat","recent_slope_pct":0.0252,"volatility":"unknown"},"price":8.26,"volume":{"bars":168,"last_bar_volume":151.0,"baseline_avg":1308.05,"bar_rvol":0.115439,"raw_accel":-0.538244,"smooth_accel":-0.703571,"accel_momentum":-0.226818,"rvol_3bar":[0.314013,0.099478,0.115439],"trend_3bar":"MIXED","projected_rvol":0.168925},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":12.0,"sell_vol":8.0,"unclassified_vol":0.0,"imbalance":0.2,"bid":8.23,"ask":8.29,"spread_pct":0.726392,"quote_size_imbalance":null,"quote_age_s":8.073982},"context":{"vwap":8.208912,"price_vs_vwap_pct":0.622343,"ema9":8.259372,"ema20":8.263396,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.729604,"dist_to_hod_atr":5.888224,"atr":0.054346,"spread_atr":1.104042,"own_change_pct":0.113733,"rel_strength_pct":{"SPY":0.114381,"IWM":0.075255}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.023088},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e89072a190b3","ts":"2026-09-21T16:20:01.569060+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6107,"target":8.76,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":128.3,"room_to_5d_high_atr":-0.89},"price":8.7126,"vwap":8.6284,"ext_from_open_pct":1.07,"max_ext_allowed_pct":4.0,"volume_pace":0.95,"trend":"flat","recent_slope_pct":-0.0165,"volatility":"medium"},"price":8.7126,"volume":{"bars":170,"last_bar_volume":2816.0,"baseline_avg":2896.4,"bar_rvol":0.972241,"raw_accel":2.203641,"smooth_accel":1.917484,"accel_momentum":0.305901,"rvol_3bar":[0.460326,0.292824,0.972241],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":903.0,"sell_vol":342.0,"unclassified_vol":0.0,"imbalance":0.450602,"bid":8.7,"ask":8.72,"spread_pct":0.229621,"quote_size_imbalance":null,"quote_age_s":34.114266},"context":{"vwap":8.628371,"price_vs_vwap_pct":0.976185,"ema9":8.714385,"ema20":8.720586,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.63402,"dist_to_hod_atr":8.408842,"atr":0.02803,"spread_atr":0.713521,"own_change_pct":0.057438,"rel_strength_pct":{"SPY":0.050958,"IWM":0.060935}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.438094},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1fca85fbeefe","ts":"2026-09-21T16:20:01.569060+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5614,"target":11.05,"target_label":"ceiling","reward_risk":0.27,"pos_in_5d_range_pct":107.0,"room_to_5d_high_atr":-0.16},"price":10.945,"vwap":10.8552,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.687,"trend":"flat","recent_slope_pct":-0.1186,"volatility":"medium"},"price":10.945,"volume":{"bars":170,"last_bar_volume":1094410.0,"baseline_avg":113308.0,"bar_rvol":9.658718,"raw_accel":7.915473,"smooth_accel":6.339434,"accel_momentum":4.031444,"rvol_3bar":[0.860414,1.058675,9.658718],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":741,"trade_rate":24.7,"buy_vol":573004.0,"sell_vol":530189.0,"unclassified_vol":0.0,"imbalance":0.03881,"bid":10.94,"ask":10.95,"spread_pct":0.091366,"quote_size_imbalance":null,"quote_age_s":0.920185},"context":{"vwap":10.855143,"price_vs_vwap_pct":0.827783,"ema9":10.978275,"ema20":10.99228,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.569315,"dist_to_hod_atr":5.19407,"atr":0.033596,"spread_atr":0.297654,"own_change_pct":-0.454959,"rel_strength_pct":{"SPY":-0.46144,"IWM":-0.451462}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.374856},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b273be73439f","ts":"2026-09-21T16:20:01.569060+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4142,"target":7.775,"target_label":"range_20d_high","reward_risk":20.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.479,"vwap":6.3445,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":1.385,"trend":"flat","recent_slope_pct":-0.0262,"volatility":"unknown"},"price":6.479,"volume":{"bars":170,"last_bar_volume":36919.0,"baseline_avg":112101.4,"bar_rvol":0.329336,"raw_accel":0.317343,"smooth_accel":-0.695447,"accel_momentum":-0.60929,"rvol_3bar":[0.504423,0.198362,0.329336],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":14423.0,"sell_vol":11344.0,"unclassified_vol":0.0,"imbalance":0.119494,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.715295},"context":{"vwap":6.34445,"price_vs_vwap_pct":2.120744,"ema9":6.476988,"ema20":6.469339,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.169492,"dist_to_hod_atr":0.382624,"atr":0.028749,"spread_atr":0.34784,"own_change_pct":-0.07716,"rel_strength_pct":{"SPY":-0.083641,"IWM":-0.073664}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.039354},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2f294f640f64","ts":"2026-09-21T16:20:07.004289+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.155,"target":8.495,"target_label":"ceiling","reward_risk":2.4,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.255,"vwap":8.2089,"ext_from_open_pct":3.06,"max_ext_allowed_pct":4.0,"volume_pace":2.925,"trend":"flat","recent_slope_pct":0.0788,"volatility":"unknown"},"price":8.255,"volume":{"bars":169,"last_bar_volume":189.0,"baseline_avg":882.05,"bar_rvol":0.214274,"raw_accel":-0.142906,"smooth_accel":-0.775082,"accel_momentum":-0.07151,"rvol_3bar":[0.099478,0.115439,0.214274],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":4.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":-0.428571,"bid":8.23,"ask":8.28,"spread_pct":0.605694,"quote_size_imbalance":null,"quote_age_s":13.7573},"context":{"vwap":8.208925,"price_vs_vwap_pct":0.561281,"ema9":8.259497,"ema20":8.263073,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-3.787879,"dist_to_hod_atr":5.962561,"atr":0.054507,"spread_atr":0.917317,"own_change_pct":0.121212,"rel_strength_pct":{"SPY":0.114732,"IWM":0.124709}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.091832},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5c27fbe285b6","ts":"2026-09-21T16:20:07.004289+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.15,"target":12.0486,"target_label":"premarket_high","reward_risk":3.49,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.35,"vwap":11.325,"ext_from_open_pct":-2.16,"max_ext_allowed_pct":3.0,"volume_pace":0.622,"trend":"flat","recent_slope_pct":-0.0791,"volatility":"unknown"},"price":11.35,"volume":{"bars":158,"last_bar_volume":45.0,"baseline_avg":185.05,"bar_rvol":0.243178,"raw_accel":-0.8,"smooth_accel":0.33427,"accel_momentum":0.459724,"rvol_3bar":[1.129477,1.187962,0.243178],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":11.31,"ask":11.41,"spread_pct":0.880282,"quote_size_imbalance":null,"quote_age_s":29.585102},"context":{"vwap":11.325013,"price_vs_vwap_pct":0.220636,"ema9":11.396872,"ema20":11.395918,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-5.020921,"dist_to_hod_atr":7.476717,"atr":0.080249,"spread_atr":1.246119,"own_change_pct":-0.611888,"rel_strength_pct":{"SPY":-0.618369,"IWM":-0.608391}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.243178},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"86432c8a8aec","ts":"2026-09-21T16:20:07.004289+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":18.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.3446,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.385,"trend":"flat","recent_slope_pct":-0.054,"volatility":"unknown"},"price":6.47,"volume":{"bars":170,"last_bar_volume":36919.0,"baseline_avg":112101.4,"bar_rvol":0.329336,"raw_accel":0.317343,"smooth_accel":-0.695447,"accel_momentum":-0.60929,"rvol_3bar":[0.504423,0.198362,0.329336],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":20427.0,"sell_vol":13499.0,"unclassified_vol":0.0,"imbalance":0.204209,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.189244},"context":{"vwap":6.34445,"price_vs_vwap_pct":1.978888,"ema9":6.476988,"ema20":6.469339,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.308166,"dist_to_hod_atr":0.695681,"atr":0.028749,"spread_atr":0.34784,"own_change_pct":-0.07716,"rel_strength_pct":{"SPY":-0.083641,"IWM":-0.073664}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.067253},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a6560e0fbc6d","ts":"2026-09-21T16:20:22.561929+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.21,"target":12.0486,"target_label":"premarket_high","reward_risk":3.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.41,"vwap":11.3251,"ext_from_open_pct":-1.64,"max_ext_allowed_pct":4.0,"volume_pace":0.622,"trend":"flat","recent_slope_pct":0.0263,"volatility":"unknown"},"price":11.41,"volume":{"bars":158,"last_bar_volume":45.0,"baseline_avg":185.05,"bar_rvol":0.243178,"raw_accel":-0.8,"smooth_accel":0.33427,"accel_momentum":0.459724,"rvol_3bar":[1.129477,1.187962,0.243178],"trend_3bar":"MIXED","projected_rvol":2.946048},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":200.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.95122,"bid":11.34,"ask":11.44,"spread_pct":0.877963,"quote_size_imbalance":null,"quote_age_s":2.698299},"context":{"vwap":11.325013,"price_vs_vwap_pct":0.750437,"ema9":11.396872,"ema20":11.395918,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.518828,"dist_to_hod_atr":6.729045,"atr":0.080249,"spread_atr":1.246119,"own_change_pct":-0.611888,"rel_strength_pct":{"SPY":-0.618369,"IWM":-0.608391}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.231315},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9abdc0bdac2e","ts":"2026-09-21T16:20:37.909429+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3449,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":-0.0232,"volatility":"unknown"},"price":6.48,"volume":{"bars":170,"last_bar_volume":36919.0,"baseline_avg":112101.4,"bar_rvol":0.329336,"raw_accel":0.317343,"smooth_accel":-0.695447,"accel_momentum":-0.60929,"rvol_3bar":[0.504423,0.198362,0.329336],"trend_3bar":"MIXED","projected_rvol":0.643485},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":18826.0,"sell_vol":12657.0,"unclassified_vol":0.0,"imbalance":0.195947,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":1.476882},"context":{"vwap":6.34445,"price_vs_vwap_pct":2.136506,"ema9":6.476988,"ema20":6.469339,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.34784,"atr":0.028749,"spread_atr":0.34784,"own_change_pct":-0.07716,"rel_strength_pct":{"SPY":-0.083641,"IWM":-0.073664}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.064532},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c0d4bae17ec3","ts":"2026-09-21T16:20:43.034132+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3449,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":-0.0386,"volatility":"unknown"},"price":6.475,"volume":{"bars":170,"last_bar_volume":36919.0,"baseline_avg":112101.4,"bar_rvol":0.329336,"raw_accel":0.317343,"smooth_accel":-0.695447,"accel_momentum":-0.60929,"rvol_3bar":[0.504423,0.198362,0.329336],"trend_3bar":"MIXED","projected_rvol":0.590375},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":20506.0,"sell_vol":12767.0,"unclassified_vol":0.0,"imbalance":0.232591,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.465063},"context":{"vwap":6.34445,"price_vs_vwap_pct":2.057697,"ema9":6.476988,"ema20":6.469339,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.231125,"dist_to_hod_atr":0.52176,"atr":0.028749,"spread_atr":0.34784,"own_change_pct":-0.07716,"rel_strength_pct":{"SPY":-0.083641,"IWM":-0.073664}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.076601},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fc9992809378","ts":"2026-09-21T16:21:03.629286+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5982,"target":8.76,"target_label":"premarket_high","reward_risk":0.59,"pos_in_5d_range_pct":127.3,"room_to_5d_high_atr":-0.86},"price":8.7001,"vwap":8.6284,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.944,"trend":"flat","recent_slope_pct":-0.0227,"volatility":"medium"},"price":8.7001,"volume":{"bars":171,"last_bar_volume":112.0,"baseline_avg":2885.85,"bar_rvol":0.03881,"raw_accel":-0.960227,"smooth_accel":0.405316,"accel_momentum":-1.512169,"rvol_3bar":[0.292824,0.972241,0.03881],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":0.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":0.062141},"context":{"vwap":8.628382,"price_vs_vwap_pct":0.831186,"ema9":8.712508,"ema20":8.719102,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.773711,"dist_to_hod_atr":9.341105,"atr":0.026571,"spread_atr":0.376354,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.012959,"IWM":0.043701}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.03881},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5ab4456a20bc","ts":"2026-09-21T16:21:03.629286+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4151,"target":7.775,"target_label":"range_20d_high","reward_risk":19.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4799,"vwap":6.3451,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.383,"trend":"flat","recent_slope_pct":0.0108,"volatility":"unknown"},"price":6.4799,"volume":{"bars":171,"last_bar_volume":71255.0,"baseline_avg":106338.2,"bar_rvol":0.670079,"raw_accel":0.930036,"smooth_accel":-0.650612,"accel_momentum":0.044835,"rvol_3bar":[0.198362,0.329336,0.670079],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":12676.0,"sell_vol":15714.0,"unclassified_vol":0.0,"imbalance":-0.10701,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.501753},"context":{"vwap":6.345103,"price_vs_vwap_pct":2.124424,"ema9":6.47659,"ema20":6.469878,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.155624,"dist_to_hod_atr":0.368484,"atr":0.02741,"spread_atr":0.364835,"own_change_pct":-0.154202,"rel_strength_pct":{"SPY":-0.141243,"IWM":-0.110501}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.071705},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"306931636bdd","ts":"2026-09-21T16:21:08.800069+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4,"target":7.775,"target_label":"range_20d_high","reward_risk":18.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.3452,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":-0.0198,"volatility":"unknown"},"price":6.47,"volume":{"bars":171,"last_bar_volume":71255.0,"baseline_avg":106338.2,"bar_rvol":0.670079,"raw_accel":0.930036,"smooth_accel":-0.650612,"accel_momentum":0.044835,"rvol_3bar":[0.198362,0.329336,0.670079],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":12814.0,"sell_vol":25825.0,"unclassified_vol":0.0,"imbalance":-0.336732,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.813056},"context":{"vwap":6.345103,"price_vs_vwap_pct":1.968398,"ema9":6.47659,"ema20":6.469878,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.308166,"dist_to_hod_atr":0.729671,"atr":0.02741,"spread_atr":0.364835,"own_change_pct":-0.154202,"rel_strength_pct":{"SPY":-0.141243,"IWM":-0.110501}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.225637},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c33c8b3e4739","ts":"2026-09-21T16:21:19.082317+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.1042,"target":8.495,"target_label":"ceiling","reward_risk":2.26,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.2242,"vwap":8.2089,"ext_from_open_pct":2.67,"max_ext_allowed_pct":3.0,"volume_pace":2.907,"trend":"flat","recent_slope_pct":-0.0679,"volatility":"unknown"},"price":8.2242,"volume":{"bars":170,"last_bar_volume":633.0,"baseline_avg":871.05,"bar_rvol":0.726709,"raw_accel":1.906837,"smooth_accel":-0.291333,"accel_momentum":0.483749,"rvol_3bar":[0.115439,0.214274,0.726709],"trend_3bar":"ACCELERATING","projected_rvol":0.382633},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":5.0,"sell_vol":114.0,"unclassified_vol":0.0,"imbalance":-0.915966,"bid":8.21,"ask":8.27,"spread_pct":0.728155,"quote_size_imbalance":null,"quote_age_s":26.968184},"context":{"vwap":8.208947,"price_vs_vwap_pct":0.185814,"ema9":8.255598,"ema20":8.260876,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.146853,"dist_to_hod_atr":6.566409,"atr":0.054185,"spread_atr":1.10732,"own_change_pct":-0.354323,"rel_strength_pct":{"SPY":-0.341364,"IWM":-0.310622}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.665641},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3e7f881bc6e6","ts":"2026-09-21T16:22:09.954260+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6131,"target":8.76,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":128.4,"room_to_5d_high_atr":-0.9},"price":8.715,"vwap":8.6286,"ext_from_open_pct":1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.941,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"medium"},"price":8.715,"volume":{"bars":172,"last_bar_volume":1828.0,"baseline_avg":2816.2,"bar_rvol":0.649102,"raw_accel":1.596407,"smooth_accel":0.406268,"accel_momentum":0.000953,"rvol_3bar":[0.972241,0.03881,0.649102],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1291.0,"sell_vol":644.0,"unclassified_vol":0.0,"imbalance":0.334367,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":0.897349},"context":{"vwap":8.628562,"price_vs_vwap_pct":1.001772,"ema9":8.711007,"ema20":8.717759,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.607199,"dist_to_hod_atr":8.940667,"atr":0.026094,"spread_atr":0.383226,"own_change_pct":-0.198342,"rel_strength_pct":{"SPY":-0.173723,"IWM":-0.117939}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.217038},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cf54735e8081","ts":"2026-09-21T16:22:15.109222+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +8.4% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":6.75,"target":6.95,"target_label":"premarket_high","reward_risk":0.14,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-0.77},"price":6.925,"vwap":6.5662,"ext_from_open_pct":8.37,"max_ext_allowed_pct":4.0,"volume_pace":0.685,"trend":"flat","recent_slope_pct":0.3819,"volatility":"high"},"price":6.925,"volume":{"bars":172,"last_bar_volume":18032.0,"baseline_avg":6159.5,"bar_rvol":2.92751,"raw_accel":-0.565651,"smooth_accel":20.560726,"accel_momentum":14.529526,"rvol_3bar":[1.303177,9.796357,2.92751],"trend_3bar":"MIXED","projected_rvol":0.005802},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":808.0,"sell_vol":607.0,"unclassified_vol":0.0,"imbalance":0.142049,"bid":6.91,"ask":6.93,"spread_pct":0.289017,"quote_size_imbalance":null,"quote_age_s":1.509819},"context":{"vwap":6.566197,"price_vs_vwap_pct":5.464395,"ema9":6.865853,"ema20":6.830418,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-0.216138,"dist_to_hod_atr":0.445552,"atr":0.033666,"spread_atr":0.59407,"own_change_pct":1.557833,"rel_strength_pct":{"SPY":1.582452,"IWM":1.638236}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.415851},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fa452bdec1fc","ts":"2026-09-21T16:22:15.109222+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.32 below VWAP $11.33","plan":{"state":"PASS","setup":"","stop":11.1,"target":12.0486,"target_label":"premarket_high","reward_risk":3.31,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.32,"vwap":11.3252,"ext_from_open_pct":-2.41,"max_ext_allowed_pct":4.0,"volume_pace":0.617,"trend":"flat","recent_slope_pct":-0.088,"volatility":"unknown"},"price":11.32,"volume":{"bars":159,"last_bar_volume":209.0,"baseline_avg":151.3,"bar_rvol":1.381362,"raw_accel":3.644444,"smooth_accel":0.496875,"accel_momentum":0.162605,"rvol_3bar":[1.187962,0.243178,1.381362],"trend_3bar":"MIXED","projected_rvol":10.577311},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":150.0,"sell_vol":253.0,"unclassified_vol":0.0,"imbalance":-0.255583,"bid":11.31,"ask":11.42,"spread_pct":0.967884,"quote_size_imbalance":null,"quote_age_s":6.99061},"context":{"vwap":11.325098,"price_vs_vwap_pct":-0.045012,"ema9":11.395497,"ema20":11.395355,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-5.271967,"dist_to_hod_atr":7.994644,"atr":0.078803,"spread_atr":1.39589,"own_change_pct":-0.087719,"rel_strength_pct":{"SPY":-0.0631,"IWM":-0.007317}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.353053},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"629a0935062f","ts":"2026-09-21T16:22:56.236710+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3457,"ext_from_open_pct":3.18,"max_ext_allowed_pct":3.0,"volume_pace":1.375,"trend":"flat","recent_slope_pct":0.0519,"volatility":"unknown"},"price":6.49,"volume":{"bars":172,"last_bar_volume":34100.0,"baseline_avg":105639.7,"bar_rvol":0.322795,"raw_accel":-0.521437,"smooth_accel":-0.398688,"accel_momentum":0.251924,"rvol_3bar":[0.329336,0.670079,0.322795],"trend_3bar":"MIXED","projected_rvol":0.345063},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":25594.0,"sell_vol":5301.0,"unclassified_vol":0.0,"imbalance":0.656838,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.568466},"context":{"vwap":6.345416,"price_vs_vwap_pct":2.278558,"ema9":6.476992,"ema20":6.470708,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.026166,"spread_atr":0.382174,"own_change_pct":-0.126411,"rel_strength_pct":{"SPY":-0.101791,"IWM":-0.046008}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.212024},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a9a465079ce0","ts":"2026-09-21T16:23:11.510113+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.16,"target":12.0486,"target_label":"premarket_high","reward_risk":3.94,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.34,"vwap":11.3252,"ext_from_open_pct":-2.24,"max_ext_allowed_pct":3.0,"volume_pace":0.614,"trend":"flat","recent_slope_pct":-0.1672,"volatility":"unknown"},"price":11.34,"volume":{"bars":160,"last_bar_volume":463.0,"baseline_avg":161.45,"bar_rvol":2.867761,"raw_accel":1.215311,"smooth_accel":0.490644,"accel_momentum":-0.006231,"rvol_3bar":[0.243178,1.381362,2.867761],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":8.0,"sell_vol":8.0,"unclassified_vol":0.0,"imbalance":0.0,"bid":11.33,"ask":11.42,"spread_pct":0.791209,"quote_size_imbalance":null,"quote_age_s":5.00966},"context":{"vwap":11.325176,"price_vs_vwap_pct":0.130891,"ema9":11.380398,"ema20":11.388178,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-5.104603,"dist_to_hod_atr":7.535277,"atr":0.080953,"spread_atr":1.111762,"own_change_pct":-0.701754,"rel_strength_pct":{"SPY":-0.721196,"IWM":-0.649301}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.0},"shadow":{"decision":"FAIL","failed":["imbalance","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7b3638390143","ts":"2026-09-21T16:23:11.510113+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4138,"target":7.775,"target_label":"range_20d_high","reward_risk":20.01,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4786,"vwap":6.3461,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":1.376,"trend":"flat","recent_slope_pct":0.0265,"volatility":"unknown"},"price":6.4786,"volume":{"bars":173,"last_bar_volume":36335.0,"baseline_avg":87722.5,"bar_rvol":0.414204,"raw_accel":0.065543,"smooth_accel":0.210736,"accel_momentum":0.609424,"rvol_3bar":[0.670079,0.322795,0.414204],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":16592.0,"sell_vol":22931.0,"unclassified_vol":0.0,"imbalance":-0.160388,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.183321},"context":{"vwap":6.345762,"price_vs_vwap_pct":2.093339,"ema9":6.478594,"ema20":6.47207,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.175655,"dist_to_hod_atr":0.443138,"atr":0.025726,"spread_atr":0.388717,"own_change_pct":0.13279,"rel_strength_pct":{"SPY":0.113348,"IWM":0.185243}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.066433},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cc6194261649","ts":"2026-09-21T16:23:21.644072+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4142,"target":7.775,"target_label":"range_20d_high","reward_risk":20.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.479,"vwap":6.3465,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":1.38,"trend":"flat","recent_slope_pct":0.0278,"volatility":"unknown"},"price":6.479,"volume":{"bars":173,"last_bar_volume":36335.0,"baseline_avg":87722.5,"bar_rvol":0.414204,"raw_accel":0.065543,"smooth_accel":0.210736,"accel_momentum":0.609424,"rvol_3bar":[0.670079,0.322795,0.414204],"trend_3bar":"MIXED","projected_rvol":2.668486},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":48045.0,"sell_vol":40414.0,"unclassified_vol":0.0,"imbalance":0.086266,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.169724},"context":{"vwap":6.345762,"price_vs_vwap_pct":2.099643,"ema9":6.478594,"ema20":6.47207,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.169492,"dist_to_hod_atr":0.427589,"atr":0.025726,"spread_atr":0.388717,"own_change_pct":0.13279,"rel_strength_pct":{"SPY":0.113348,"IWM":0.185243}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.035732},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"18d0e79391ff","ts":"2026-09-21T16:23:26.715911+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3467,"ext_from_open_pct":2.94,"max_ext_allowed_pct":4.0,"volume_pace":1.381,"trend":"flat","recent_slope_pct":0.0154,"volatility":"unknown"},"price":6.475,"volume":{"bars":173,"last_bar_volume":36335.0,"baseline_avg":87722.5,"bar_rvol":0.414204,"raw_accel":0.065543,"smooth_accel":0.210736,"accel_momentum":0.609424,"rvol_3bar":[0.670079,0.322795,0.414204],"trend_3bar":"MIXED","projected_rvol":2.59236},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":64313.0,"sell_vol":39113.0,"unclassified_vol":0.0,"imbalance":0.243652,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.831363},"context":{"vwap":6.345762,"price_vs_vwap_pct":2.036608,"ema9":6.478594,"ema20":6.47207,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.231125,"dist_to_hod_atr":0.583076,"atr":0.025726,"spread_atr":0.388717,"own_change_pct":0.13279,"rel_strength_pct":{"SPY":0.113348,"IWM":0.185243}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.100922},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"010a2cc4ec2d","ts":"2026-09-21T16:24:02.238781+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 312.7s, plan says WATCH; stop 12.83, target 13.65 (premarket_high), R:R 1.10; R:R 1.10 < 2.0 at 13.22; breakout: 1-min close > 13.28 on >= 18939 sh","plan":{"state":"WATCH","setup":"","stop":12.8282,"target":13.65,"target_label":"premarket_high","reward_risk":1.1,"pos_in_5d_range_pct":156.9,"room_to_5d_high_atr":-1.7},"price":13.22,"vwap":12.8431,"ext_from_open_pct":1.61,"max_ext_allowed_pct":4.0,"volume_pace":0.668,"trend":"flat","recent_slope_pct":0.3274,"volatility":"high"},"price":13.22,"volume":{"bars":174,"last_bar_volume":22100.0,"baseline_avg":10733.95,"bar_rvol":2.058888,"raw_accel":0.018245,"smooth_accel":1.292991,"accel_momentum":0.801428,"rvol_3bar":[0.914838,1.924446,2.058888],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":10811.0,"sell_vol":3693.0,"unclassified_vol":0.0,"imbalance":0.490761,"bid":13.2,"ask":13.23,"spread_pct":0.227015,"quote_size_imbalance":null,"quote_age_s":0.66459},"context":{"vwap":12.842882,"price_vs_vwap_pct":2.936395,"ema9":13.119555,"ema20":13.07063,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.202899,"dist_to_hod_atr":6.602124,"atr":0.087851,"spread_atr":0.341489,"own_change_pct":1.761137,"rel_strength_pct":{"SPY":1.73975,"IWM":1.820579}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.010422},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6c9326b60135","ts":"2026-09-21T16:24:02.238781+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +8.1% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.7439,"target":7.0271,"target_label":"clear air (typical 60-min move)","reward_risk":0.73,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.75},"price":6.9072,"vwap":6.5698,"ext_from_open_pct":8.09,"max_ext_allowed_pct":3.0,"volume_pace":0.685,"trend":"flat","recent_slope_pct":-0.1304,"volatility":"high"},"price":6.9072,"volume":{"bars":174,"last_bar_volume":16474.0,"baseline_avg":6469.85,"bar_rvol":2.546272,"raw_accel":2.733061,"smooth_accel":-0.193004,"accel_momentum":-7.461911,"rvol_3bar":[2.92751,0.704648,2.546272],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":2693.0,"sell_vol":2879.0,"unclassified_vol":0.0,"imbalance":-0.033381,"bid":6.89,"ask":6.91,"spread_pct":0.289855,"quote_size_imbalance":null,"quote_age_s":3.060267},"context":{"vwap":6.569798,"price_vs_vwap_pct":5.135654,"ema9":6.878306,"ema20":6.843217,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-0.472622,"dist_to_hod_atr":0.892211,"atr":0.036763,"spread_atr":0.544031,"own_change_pct":0.897314,"rel_strength_pct":{"SPY":0.875927,"IWM":0.956757}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.084998},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0e30dba45438","ts":"2026-09-21T16:24:22.770167+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 333.2s, plan says PASS; stop 12.81, target 13.27 (ceiling), R:R 0.19; R:R 0.19 < 2.0 at 13.20; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.8082,"target":13.2746,"target_label":"ceiling","reward_risk":0.19,"pos_in_5d_range_pct":156.5,"room_to_5d_high_atr":-1.69},"price":13.2,"vwap":12.8438,"ext_from_open_pct":1.46,"max_ext_allowed_pct":3.0,"volume_pace":0.668,"trend":"flat","recent_slope_pct":0.2971,"volatility":"high"},"price":13.2,"volume":{"bars":174,"last_bar_volume":22100.0,"baseline_avg":10733.95,"bar_rvol":2.058888,"raw_accel":0.018245,"smooth_accel":1.292991,"accel_momentum":0.801428,"rvol_3bar":[0.914838,1.924446,2.058888],"trend_3bar":"ACCELERATING","projected_rvol":2.662042},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":10041.0,"sell_vol":8234.0,"unclassified_vol":0.0,"imbalance":0.098878,"bid":13.2,"ask":13.24,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":1.545634},"context":{"vwap":12.842882,"price_vs_vwap_pct":2.780667,"ema9":13.119555,"ema20":13.07063,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.347826,"dist_to_hod_atr":6.829783,"atr":0.087851,"spread_atr":0.455319,"own_change_pct":1.761137,"rel_strength_pct":{"SPY":1.73975,"IWM":1.820579}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.203579},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c0be81e63ef1","ts":"2026-09-21T16:24:27.923668+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 338.4s, plan says WATCH; stop 12.85, target 13.65 (premarket_high), R:R 1.05; R:R 1.05 < 2.0 at 13.24; breakout: 1-min close > 13.28 on >= 18939 sh","plan":{"state":"WATCH","setup":"","stop":12.8468,"target":13.65,"target_label":"premarket_high","reward_risk":1.05,"pos_in_5d_range_pct":157.3,"room_to_5d_high_atr":-1.71},"price":13.2386,"vwap":12.8439,"ext_from_open_pct":1.76,"max_ext_allowed_pct":3.0,"volume_pace":0.667,"trend":"flat","recent_slope_pct":0.3555,"volatility":"high"},"price":13.2386,"volume":{"bars":174,"last_bar_volume":22100.0,"baseline_avg":10733.95,"bar_rvol":2.058888,"raw_accel":0.018245,"smooth_accel":1.292991,"accel_momentum":0.801428,"rvol_3bar":[0.914838,1.924446,2.058888],"trend_3bar":"ACCELERATING","projected_rvol":2.263027},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":9650.0,"sell_vol":8184.0,"unclassified_vol":0.0,"imbalance":0.082203,"bid":13.23,"ask":13.24,"spread_pct":0.075557,"quote_size_imbalance":null,"quote_age_s":0.508673},"context":{"vwap":12.842882,"price_vs_vwap_pct":3.081222,"ema9":13.119555,"ema20":13.07063,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.068116,"dist_to_hod_atr":6.390401,"atr":0.087851,"spread_atr":0.11383,"own_change_pct":1.761137,"rel_strength_pct":{"SPY":1.73975,"IWM":1.820579}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.169246},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3d84db71b81f","ts":"2026-09-21T16:25:04.075762+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +7.8% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.7267,"target":6.95,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":126.7,"room_to_5d_high_atr":-0.72},"price":6.89,"vwap":6.5702,"ext_from_open_pct":7.82,"max_ext_allowed_pct":3.0,"volume_pace":0.682,"trend":"flat","recent_slope_pct":-0.1489,"volatility":"high"},"price":6.89,"volume":{"bars":175,"last_bar_volume":1197.0,"baseline_avg":7183.0,"bar_rvol":0.166643,"raw_accel":-0.92734,"smooth_accel":-0.661957,"accel_momentum":-0.468953,"rvol_3bar":[0.704648,2.546272,0.166643],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":101.0,"sell_vol":1044.0,"unclassified_vol":0.0,"imbalance":-0.823581,"bid":6.87,"ask":6.9,"spread_pct":0.43573,"quote_size_imbalance":null,"quote_age_s":0.000959},"context":{"vwap":6.570006,"price_vs_vwap_pct":4.870534,"ema9":6.882645,"ema20":6.848625,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-0.720461,"dist_to_hod_atr":1.415246,"atr":0.03533,"spread_atr":0.849148,"own_change_pct":0.58309,"rel_strength_pct":{"SPY":0.575962,"IWM":0.642541}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.137244},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8a3491d0e42e","ts":"2026-09-21T16:25:09.369901+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0501,"target":12.29,"target_label":"prev_day_high","reward_risk":0.37,"pos_in_5d_range_pct":66.6,"room_to_5d_high_atr":0.53},"price":12.2254,"vwap":12.1687,"ext_from_open_pct":-0.61,"max_ext_allowed_pct":3.0,"volume_pace":0.758,"trend":"flat","recent_slope_pct":-0.0171,"volatility":"medium"},"price":12.2254,"volume":{"bars":175,"last_bar_volume":3941.0,"baseline_avg":10954.6,"bar_rvol":0.359758,"raw_accel":-0.492335,"smooth_accel":0.12327,"accel_momentum":-0.11299,"rvol_3bar":[0.71819,0.71442,0.359758],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":66.0,"sell_vol":2410.0,"unclassified_vol":0.0,"imbalance":-0.946688,"bid":12.21,"ask":12.22,"spread_pct":0.081867,"quote_size_imbalance":null,"quote_age_s":0.531371},"context":{"vwap":12.168699,"price_vs_vwap_pct":0.465958,"ema9":12.221334,"ema20":12.209441,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.118495,"dist_to_hod_atr":7.989616,"atr":0.033118,"spread_atr":0.301951,"own_change_pct":-0.0818,"rel_strength_pct":{"SPY":-0.088928,"IWM":-0.022349}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.340578},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"3a67bb7f2fa8","ts":"2026-09-21T16:25:19.660250+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.24% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":11.06,"target":12.0486,"target_label":"premarket_high","reward_risk":2.53,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.34,"vwap":11.3252,"ext_from_open_pct":-2.24,"max_ext_allowed_pct":3.0,"volume_pace":0.612,"trend":"flat","recent_slope_pct":-0.0264,"volatility":"unknown"},"price":11.34,"volume":{"bars":162,"last_bar_volume":14.0,"baseline_avg":121.75,"bar_rvol":0.11499,"raw_accel":-0.540041,"smooth_accel":0.045929,"accel_momentum":-0.419334,"rvol_3bar":[2.867761,0.131291,0.11499],"trend_3bar":"DECELERATING","projected_rvol":29.753904},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":582.0,"sell_vol":607.0,"unclassified_vol":0.0,"imbalance":-0.021026,"bid":11.26,"ask":11.4,"spread_pct":1.235658,"quote_size_imbalance":null,"quote_age_s":0.094684},"context":{"vwap":11.325188,"price_vs_vwap_pct":0.13079,"ema9":11.375855,"ema20":11.3842,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-5.104603,"dist_to_hod_atr":7.619663,"atr":0.080056,"spread_atr":1.748775,"own_change_pct":-0.175285,"rel_strength_pct":{"SPY":-0.182413,"IWM":-0.115834}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.002418},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"49faef06e2b9","ts":"2026-09-21T16:25:50.604449+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4151,"target":7.775,"target_label":"range_20d_high","reward_risk":19.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4799,"vwap":6.3483,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.379,"trend":"flat","recent_slope_pct":-0.0191,"volatility":"unknown"},"price":6.4799,"volume":{"bars":175,"last_bar_volume":97893.0,"baseline_avg":83113.6,"bar_rvol":1.177822,"raw_accel":-0.363057,"smooth_accel":1.023701,"accel_momentum":0.311893,"rvol_3bar":[0.414204,1.793679,1.177822],"trend_3bar":"MIXED","projected_rvol":0.447484},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":831.0,"sell_vol":26978.0,"unclassified_vol":0.0,"imbalance":-0.940235,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.169475},"context":{"vwap":6.347999,"price_vs_vwap_pct":2.077836,"ema9":6.4755,"ema20":6.471694,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.155624,"dist_to_hod_atr":0.416966,"atr":0.024223,"spread_atr":0.412837,"own_change_pct":-0.07722,"rel_strength_pct":{"SPY":-0.084348,"IWM":-0.017769}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.107429},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"73ec2131488c","ts":"2026-09-21T16:25:55.744148+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3483,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.378,"trend":"flat","recent_slope_pct":-0.0343,"volatility":"unknown"},"price":6.475,"volume":{"bars":175,"last_bar_volume":97893.0,"baseline_avg":83113.6,"bar_rvol":1.177822,"raw_accel":-0.363057,"smooth_accel":1.023701,"accel_momentum":0.311893,"rvol_3bar":[0.414204,1.793679,1.177822],"trend_3bar":"MIXED","projected_rvol":0.412001},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":900.0,"sell_vol":24802.0,"unclassified_vol":0.0,"imbalance":-0.929967,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.925738},"context":{"vwap":6.347999,"price_vs_vwap_pct":2.000647,"ema9":6.4755,"ema20":6.471694,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.231125,"dist_to_hod_atr":0.619256,"atr":0.024223,"spread_atr":0.412837,"own_change_pct":-0.07722,"rel_strength_pct":{"SPY":-0.084348,"IWM":-0.017769}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.095335},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2480541381f4","ts":"2026-09-21T16:26:06.100995+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6107,"target":9.74,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":109.8,"room_to_5d_high_atr":-0.1},"price":9.7092,"vwap":9.6851,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":0.663,"trend":"flat","recent_slope_pct":-0.0402,"volatility":"medium"},"price":9.7092,"volume":{"bars":176,"last_bar_volume":4850.0,"baseline_avg":5487.45,"bar_rvol":0.883835,"raw_accel":1.032691,"smooth_accel":0.482183,"accel_momentum":0.417473,"rvol_3bar":[0.479674,0.41741,0.883835],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":200.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.99005,"bid":9.7,"ask":9.71,"spread_pct":0.10304,"quote_size_imbalance":null,"quote_age_s":0.88124},"context":{"vwap":9.685086,"price_vs_vwap_pct":0.248978,"ema9":9.716997,"ema20":9.716867,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.228891,"dist_to_hod_atr":6.161042,"atr":0.019607,"spread_atr":0.51002,"own_change_pct":-0.154242,"rel_strength_pct":{"SPY":-0.176274,"IWM":-0.119266}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.875041},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"adbc22ef9a19","ts":"2026-09-21T16:28:03.595179+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 554.0s, plan says PASS; stop 12.96, target 13.65 (premarket_high), R:R 0.77; R:R 0.77 < 2.0 at 13.35; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.9582,"target":13.65,"target_label":"premarket_high","reward_risk":0.77,"pos_in_5d_range_pct":159.7,"room_to_5d_high_atr":-1.78},"price":13.35,"vwap":12.8573,"ext_from_open_pct":2.61,"max_ext_allowed_pct":4.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":0.1322,"volatility":"high"},"price":13.35,"volume":{"bars":178,"last_bar_volume":15456.0,"baseline_avg":15213.9,"bar_rvol":1.015913,"raw_accel":-0.709025,"smooth_accel":-0.143298,"accel_momentum":-1.545766,"rvol_3bar":[1.488534,4.127738,1.015913],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":2227.0,"sell_vol":2254.0,"unclassified_vol":0.0,"imbalance":-0.006025,"bid":13.31,"ask":13.38,"spread_pct":0.524541,"quote_size_imbalance":null,"quote_age_s":0.399138},"context":{"vwap":12.857211,"price_vs_vwap_pct":3.832787,"ema9":13.235661,"ema20":13.150718,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.26087,"dist_to_hod_atr":4.857256,"atr":0.092645,"spread_atr":0.755573,"own_change_pct":0.919862,"rel_strength_pct":{"SPY":0.876451,"IWM":0.895371}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.006121},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d80078704488","ts":"2026-09-21T16:28:03.595179+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0322,"target":12.29,"target_label":"prev_day_high","reward_risk":0.47,"pos_in_5d_range_pct":65.0,"room_to_5d_high_atr":0.56},"price":12.2075,"vwap":12.169,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.751,"trend":"flat","recent_slope_pct":-0.032,"volatility":"medium"},"price":12.2075,"volume":{"bars":178,"last_bar_volume":12446.0,"baseline_avg":9192.4,"bar_rvol":1.353945,"raw_accel":2.696466,"smooth_accel":0.427266,"accel_momentum":0.539945,"rvol_3bar":[1.181734,0.346802,1.353945],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":2213.0,"sell_vol":5217.0,"unclassified_vol":0.0,"imbalance":-0.404307,"bid":12.19,"ask":12.2,"spread_pct":0.082001,"quote_size_imbalance":null,"quote_age_s":0.003699},"context":{"vwap":12.16897,"price_vs_vwap_pct":0.316621,"ema9":12.211296,"ema20":12.207428,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.261809,"dist_to_hod_atr":8.560642,"atr":0.033,"spread_atr":0.303032,"own_change_pct":-0.340778,"rel_strength_pct":{"SPY":-0.38419,"IWM":-0.365269}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.547409},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a3dcfa546895","ts":"2026-09-21T16:28:08.709921+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0181,"target":12.29,"target_label":"prev_day_high","reward_risk":0.55,"pos_in_5d_range_pct":63.7,"room_to_5d_high_atr":0.58},"price":12.1934,"vwap":12.169,"ext_from_open_pct":-0.87,"max_ext_allowed_pct":4.0,"volume_pace":0.75,"trend":"flat","recent_slope_pct":-0.0551,"volatility":"medium"},"price":12.1934,"volume":{"bars":178,"last_bar_volume":12446.0,"baseline_avg":9192.4,"bar_rvol":1.353945,"raw_accel":2.696466,"smooth_accel":0.427266,"accel_momentum":0.539945,"rvol_3bar":[1.181734,0.346802,1.353945],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":1171.0,"sell_vol":5192.0,"unclassified_vol":0.0,"imbalance":-0.631935,"bid":12.19,"ask":12.2,"spread_pct":0.082001,"quote_size_imbalance":null,"quote_age_s":0.025403},"context":{"vwap":12.16897,"price_vs_vwap_pct":0.200753,"ema9":12.211296,"ema20":12.207428,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.3747,"dist_to_hod_atr":8.987917,"atr":0.033,"spread_atr":0.303032,"own_change_pct":-0.340778,"rel_strength_pct":{"SPY":-0.38419,"IWM":-0.365269}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.855604},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1cebc8ccb129","ts":"2026-09-21T16:28:18.895601+00:00","symbol":"OPTX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.07,"target":9.09,"target_label":"range_20d_high","reward_risk":6.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.21,"vwap":8.2098,"ext_from_open_pct":2.5,"max_ext_allowed_pct":4.0,"volume_pace":2.927,"trend":"flat","recent_slope_pct":0.1885,"volatility":"unknown"},"price":8.21,"volume":{"bars":177,"last_bar_volume":27331.0,"baseline_avg":832.4,"bar_rvol":32.833974,"raw_accel":60.834842,"smooth_accel":4.866835,"accel_momentum":5.076875,"rvol_3bar":[0.07154,0.486061,32.833974],"trend_3bar":"ACCELERATING","projected_rvol":0.778195},"flow":{"window_s":30,"trades":137,"trade_rate":4.566667,"buy_vol":12757.0,"sell_vol":7634.0,"unclassified_vol":0.0,"imbalance":0.251238,"bid":8.17,"ask":8.24,"spread_pct":0.853138,"quote_size_imbalance":null,"quote_age_s":0.493139},"context":{"vwap":8.209762,"price_vs_vwap_pct":0.002898,"ema9":8.215113,"ema20":8.231154,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-4.312354,"dist_to_hod_atr":6.18997,"atr":0.059774,"spread_atr":1.171075,"own_change_pct":0.793167,"rel_strength_pct":{"SPY":0.749755,"IWM":0.768676}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":8.249152},"shadow":{"decision":"FAIL","failed":["spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3ac3bef4fc2e","ts":"2026-09-21T16:28:18.895601+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.6126,"target":9.74,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":110.3,"room_to_5d_high_atr":-0.1},"price":9.7111,"vwap":9.6852,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":-0.008,"volatility":"medium"},"price":9.7111,"volume":{"bars":178,"last_bar_volume":5141.0,"baseline_avg":5588.95,"bar_rvol":0.919851,"raw_accel":0.856627,"smooth_accel":0.998747,"accel_momentum":0.692782,"rvol_3bar":[0.883835,0.489223,0.919851],"trend_3bar":"MIXED","projected_rvol":0.002273},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":7.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-0.869159,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":7.612019},"context":{"vwap":9.685185,"price_vs_vwap_pct":0.26757,"ema9":9.713678,"ema20":9.715191,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.209563,"dist_to_hod_atr":6.095211,"atr":0.019507,"spread_atr":0.512633,"own_change_pct":-0.123431,"rel_strength_pct":{"SPY":-0.166843,"IWM":-0.147922}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.799496},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"582890cd8d66","ts":"2026-09-21T16:28:24.029409+00:00","symbol":"OPTX","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.11 below VWAP $8.21","plan":{"state":"PASS","setup":"","stop":7.2667,"target":9.09,"target_label":"range_20d_high","reward_risk":1.16,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.11,"vwap":8.2089,"ext_from_open_pct":1.25,"max_ext_allowed_pct":3.0,"volume_pace":2.964,"trend":"flat","recent_slope_pct":-0.0555,"volatility":"unknown"},"price":8.11,"volume":{"bars":177,"last_bar_volume":27331.0,"baseline_avg":832.4,"bar_rvol":32.833974,"raw_accel":60.834842,"smooth_accel":4.866835,"accel_momentum":5.076875,"rvol_3bar":[0.07154,0.486061,32.833974],"trend_3bar":"ACCELERATING","projected_rvol":32.330638},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":1348.0,"sell_vol":17740.0,"unclassified_vol":0.0,"imbalance":-0.858759,"bid":8.08,"ask":8.16,"spread_pct":0.985222,"quote_size_imbalance":null,"quote_age_s":2.17907},"context":{"vwap":8.209762,"price_vs_vwap_pct":-1.215164,"ema9":8.215113,"ema20":8.231154,"ema_stack":false,"ema_warm":true,"hod":8.58,"dist_to_hod_pct":-5.477855,"dist_to_hod_atr":7.862935,"atr":0.059774,"spread_atr":1.338372,"own_change_pct":0.793167,"rel_strength_pct":{"SPY":0.749755,"IWM":0.768676}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-28.196485},"shadow":{"decision":"FAIL","failed":["imbalance","spread"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"973ec0b6f81e","ts":"2026-09-21T16:29:05.273251+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 615.7s, plan says WATCH; stop 12.96, target 13.65 (premarket_high), R:R 0.77; R:R 0.77 < 2.0 at 13.35; breakout: 1-min close > 13.40 on >= 20136 sh","plan":{"state":"WATCH","setup":"","stop":12.9582,"target":13.65,"target_label":"premarket_high","reward_risk":0.77,"pos_in_5d_range_pct":159.7,"room_to_5d_high_atr":-1.78},"price":13.35,"vwap":12.8617,"ext_from_open_pct":2.61,"max_ext_allowed_pct":3.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":0.0804,"volatility":"high"},"price":13.35,"volume":{"bars":179,"last_bar_volume":40909.0,"baseline_avg":14649.15,"bar_rvol":2.792585,"raw_accel":1.646804,"smooth_accel":0.1097,"accel_momentum":0.252998,"rvol_3bar":[4.127738,1.015913,2.792585],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":4659.0,"sell_vol":25819.0,"unclassified_vol":0.0,"imbalance":-0.694271,"bid":13.33,"ask":13.37,"spread_pct":0.299625,"quote_size_imbalance":null,"quote_age_s":0.264041},"context":{"vwap":12.861483,"price_vs_vwap_pct":3.798292,"ema9":13.255529,"ema20":13.168268,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.26087,"dist_to_hod_atr":4.905458,"atr":0.091735,"spread_atr":0.436041,"own_change_pct":0.646827,"rel_strength_pct":{"SPY":0.607949,"IWM":0.636331}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.938812},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e7e381cb16d1","ts":"2026-09-21T16:29:05.273251+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0215,"target":12.29,"target_label":"prev_day_high","reward_risk":0.53,"pos_in_5d_range_pct":64.0,"room_to_5d_high_atr":0.58},"price":12.1968,"vwap":12.1691,"ext_from_open_pct":-0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.75,"trend":"flat","recent_slope_pct":-0.0337,"volatility":"medium"},"price":12.1968,"volume":{"bars":179,"last_bar_volume":17896.0,"baseline_avg":7796.55,"bar_rvol":2.295374,"raw_accel":0.437892,"smooth_accel":0.422501,"accel_momentum":-0.004765,"rvol_3bar":[0.346802,1.353945,2.295374],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":10247.0,"sell_vol":2397.0,"unclassified_vol":0.0,"imbalance":0.620848,"bid":12.19,"ask":12.2,"spread_pct":0.082001,"quote_size_imbalance":null,"quote_age_s":4.16824},"context":{"vwap":12.169116,"price_vs_vwap_pct":0.227498,"ema9":12.208396,"ema20":12.206416,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.347478,"dist_to_hod_atr":9.081453,"atr":0.032286,"spread_atr":0.309736,"own_change_pct":-0.233939,"rel_strength_pct":{"SPY":-0.272816,"IWM":-0.244435}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.425078},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"95280ddaef4a","ts":"2026-09-21T16:30:01.984850+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":12.99,"target":13.65,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":162.9,"room_to_5d_high_atr":-1.88},"price":13.5,"vwap":12.8672,"ext_from_open_pct":3.77,"max_ext_allowed_pct":3.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":0.3805,"volatility":"high"},"price":13.5,"volume":{"bars":180,"last_bar_volume":38149.0,"baseline_avg":15752.55,"bar_rvol":2.421767,"raw_accel":-0.067467,"smooth_accel":-0.271164,"accel_momentum":-0.380864,"rvol_3bar":[1.015913,2.792585,2.421767],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":289,"trade_rate":9.633333,"buy_vol":26275.0,"sell_vol":12491.0,"unclassified_vol":0.0,"imbalance":0.355569,"bid":13.49,"ask":13.51,"spread_pct":0.148148,"quote_size_imbalance":null,"quote_age_s":0.0255},"context":{"vwap":12.866399,"price_vs_vwap_pct":4.924463,"ema9":13.308423,"ema20":13.201767,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.173913,"dist_to_hod_atr":3.016052,"atr":0.099468,"spread_atr":0.20107,"own_change_pct":1.807229,"rel_strength_pct":{"SPY":1.785846,"IWM":1.768738}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.861106},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"02a4eb32d5c0","ts":"2026-09-21T16:30:28.055561+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.9582,"target":13.65,"target_label":"premarket_high","reward_risk":0.77,"pos_in_5d_range_pct":159.7,"room_to_5d_high_atr":-1.78},"price":13.35,"vwap":12.8705,"ext_from_open_pct":2.61,"max_ext_allowed_pct":3.0,"volume_pace":0.681,"trend":"flat","recent_slope_pct":0.157,"volatility":"high"},"price":13.35,"volume":{"bars":180,"last_bar_volume":38149.0,"baseline_avg":15752.55,"bar_rvol":2.421767,"raw_accel":-0.067467,"smooth_accel":-0.271164,"accel_momentum":-0.380864,"rvol_3bar":[1.015913,2.792585,2.421767],"trend_3bar":"MIXED","projected_rvol":4.848368},"flow":{"window_s":30,"trades":250,"trade_rate":8.333333,"buy_vol":5468.0,"sell_vol":31968.0,"unclassified_vol":0.0,"imbalance":-0.707875,"bid":13.3,"ask":13.4,"spread_pct":0.749064,"quote_size_imbalance":null,"quote_age_s":0.407876},"context":{"vwap":12.866399,"price_vs_vwap_pct":3.758635,"ema9":13.308423,"ema20":13.201767,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.26087,"dist_to_hod_atr":4.524078,"atr":0.099468,"spread_atr":1.005351,"own_change_pct":1.807229,"rel_strength_pct":{"SPY":1.785846,"IWM":1.768738}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.714308},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9f5fc08882b2","ts":"2026-09-21T16:30:33.204697+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.1s / 18s","plan":{"state":"PASS","setup":"","stop":12.8756,"target":13.65,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":157.9,"room_to_5d_high_atr":-1.73},"price":13.2674,"vwap":12.8707,"ext_from_open_pct":1.98,"max_ext_allowed_pct":3.0,"volume_pace":0.682,"trend":"flat","recent_slope_pct":0.0335,"volatility":"high"},"price":13.2674,"volume":{"bars":180,"last_bar_volume":38149.0,"baseline_avg":15752.55,"bar_rvol":2.421767,"raw_accel":-0.067467,"smooth_accel":-0.271164,"accel_momentum":-0.380864,"rvol_3bar":[1.015913,2.792585,2.421767],"trend_3bar":"MIXED","projected_rvol":4.74096},"flow":{"window_s":30,"trades":235,"trade_rate":7.833333,"buy_vol":2924.0,"sell_vol":23961.0,"unclassified_vol":0.0,"imbalance":-0.782481,"bid":13.26,"ask":13.3,"spread_pct":0.301205,"quote_size_imbalance":null,"quote_age_s":0.729557},"context":{"vwap":12.866399,"price_vs_vwap_pct":3.116653,"ema9":13.308423,"ema20":13.201767,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.85942,"dist_to_hod_atr":5.354497,"atr":0.099468,"spread_atr":0.40214,"own_change_pct":1.807229,"rel_strength_pct":{"SPY":1.785846,"IWM":1.768738}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.894986},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e604838c0da8","ts":"2026-09-21T16:31:04.290129+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.0% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.0981,"target":9.26,"target_label":"premarket_high","reward_risk":0.38,"pos_in_5d_range_pct":310.8,"room_to_5d_high_atr":-4.58},"price":9.215,"vwap":9.1789,"ext_from_open_pct":6.04,"max_ext_allowed_pct":4.0,"volume_pace":7.632,"trend":"flat","recent_slope_pct":0.0341,"volatility":"medium"},"price":9.215,"volume":{"bars":181,"last_bar_volume":44086.0,"baseline_avg":46841.0,"bar_rvol":0.941184,"raw_accel":2.004157,"smooth_accel":0.553919,"accel_momentum":0.193891,"rvol_3bar":[3.353523,0.312196,0.941184],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":12863.0,"sell_vol":25070.0,"unclassified_vol":0.0,"imbalance":-0.321804,"bid":9.21,"ask":9.22,"spread_pct":0.108519,"quote_size_imbalance":null,"quote_age_s":0.405761},"context":{"vwap":9.178858,"price_vs_vwap_pct":0.39375,"ema9":9.217133,"ema20":9.220776,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.408714,"dist_to_hod_atr":6.921469,"atr":0.061403,"spread_atr":0.162858,"own_change_pct":-0.039067,"rel_strength_pct":{"SPY":-0.076643,"IWM":-0.079303}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.302877},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f63b765f140f","ts":"2026-09-21T16:31:14.848456+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":10.5614,"target":11.05,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":104.5,"room_to_5d_high_atr":-0.11},"price":10.915,"vwap":10.8563,"ext_from_open_pct":-0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.662,"trend":"flat","recent_slope_pct":-0.0506,"volatility":"medium"},"price":10.915,"volume":{"bars":181,"last_bar_volume":323792.0,"baseline_avg":150172.85,"bar_rvol":2.156129,"raw_accel":2.089943,"smooth_accel":0.716006,"accel_momentum":0.657376,"rvol_3bar":[0.098836,0.69821,2.156129],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":254,"trade_rate":8.466667,"buy_vol":52092.0,"sell_vol":106311.0,"unclassified_vol":0.0,"imbalance":-0.342285,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":1.018502},"context":{"vwap":10.857118,"price_vs_vwap_pct":0.533122,"ema9":10.9349,"ema20":10.952108,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.839111,"dist_to_hod_atr":7.347551,"atr":0.027832,"spread_atr":0.359293,"own_change_pct":-0.091449,"rel_strength_pct":{"SPY":-0.129026,"IWM":-0.131686}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.738011},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a18de28a7b9b","ts":"2026-09-21T16:32:01.394942+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":11.1397,"target":11.275,"target_label":"range_20d_high","reward_risk":0.2,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.2522,"vwap":10.9993,"ext_from_open_pct":5.16,"max_ext_allowed_pct":3.0,"volume_pace":0.649,"trend":"flat","recent_slope_pct":0.0805,"volatility":"unknown"},"price":11.2522,"volume":{"bars":182,"last_bar_volume":19088.0,"baseline_avg":44253.15,"bar_rvol":0.431337,"raw_accel":-0.720097,"smooth_accel":0.030181,"accel_momentum":-0.799535,"rvol_3bar":[1.003787,1.612337,0.431337],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":3138.0,"sell_vol":2307.0,"unclassified_vol":0.0,"imbalance":0.152617,"bid":11.25,"ask":11.26,"spread_pct":0.088849,"quote_size_imbalance":null,"quote_age_s":2.930293},"context":{"vwap":10.999285,"price_vs_vwap_pct":2.299377,"ema9":11.216347,"ema20":11.211419,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-2.069626,"dist_to_hod_atr":4.947532,"atr":0.048064,"spread_atr":0.208054,"own_change_pct":0.17319,"rel_strength_pct":{"SPY":0.124606,"IWM":0.110219}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.065829},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7e30c9599841","ts":"2026-09-21T16:33:03.626316+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 155.6s, plan says WATCH; stop 12.91, target 13.65 (premarket_high), R:R 0.89; R:R 0.89 < 2.0 at 13.30; pullback: buy 13.17-13.29 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":12.9094,"target":13.65,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":158.6,"room_to_5d_high_atr":-1.75},"price":13.3012,"vwap":12.8748,"ext_from_open_pct":2.24,"max_ext_allowed_pct":3.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":-0.3366,"volatility":"high"},"price":13.3012,"volume":{"bars":183,"last_bar_volume":7237.0,"baseline_avg":20716.85,"bar_rvol":0.349329,"raw_accel":-0.651464,"smooth_accel":-0.085257,"accel_momentum":-0.157278,"rvol_3bar":[3.441343,1.046789,0.349329],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":591.0,"sell_vol":1184.0,"unclassified_vol":0.0,"imbalance":-0.334085,"bid":13.3,"ask":13.34,"spread_pct":0.3003,"quote_size_imbalance":null,"quote_age_s":3.584588},"context":{"vwap":12.874756,"price_vs_vwap_pct":3.312252,"ema9":13.305542,"ema20":13.227998,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.614493,"dist_to_hod_atr":4.040013,"atr":0.123465,"spread_atr":0.323979,"own_change_pct":-0.194299,"rel_strength_pct":{"SPY":-0.255178,"IWM":-0.262507}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.116705},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"978b0481c17c","ts":"2026-09-21T16:33:14.051803+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7363,"target":9.3,"target_label":"premarket_high","reward_risk":4.18,"pos_in_5d_range_pct":90.4,"room_to_5d_high_atr":0.16},"price":8.8452,"vwap":8.6863,"ext_from_open_pct":1.44,"max_ext_allowed_pct":4.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":-0.015,"volatility":"medium"},"price":8.8452,"volume":{"bars":183,"last_bar_volume":15885.0,"baseline_avg":7383.5,"bar_rvol":2.151419,"raw_accel":7.605675,"smooth_accel":-0.417498,"accel_momentum":0.044842,"rvol_3bar":[0.928559,0.163321,2.151419],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2129.0,"sell_vol":313.0,"unclassified_vol":0.0,"imbalance":0.743653,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.461439},"context":{"vwap":8.686304,"price_vs_vwap_pct":1.829272,"ema9":8.841354,"ema20":8.835244,"ema_stack":true,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.522564,"dist_to_hod_atr":9.838823,"atr":0.023265,"spread_atr":0.429831,"own_change_pct":0.001131,"rel_strength_pct":{"SPY":-0.059748,"IWM":-0.067077}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.599908},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1d3970b85335","ts":"2026-09-21T16:33:19.196932+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7461,"target":9.3,"target_label":"premarket_high","reward_risk":4.09,"pos_in_5d_range_pct":91.8,"room_to_5d_high_atr":0.14},"price":8.855,"vwap":8.6865,"ext_from_open_pct":1.55,"max_ext_allowed_pct":4.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":0.0071,"volatility":"medium"},"price":8.855,"volume":{"bars":183,"last_bar_volume":15885.0,"baseline_avg":7383.5,"bar_rvol":2.151419,"raw_accel":7.605675,"smooth_accel":-0.417498,"accel_momentum":0.044842,"rvol_3bar":[0.928559,0.163321,2.151419],"trend_3bar":"MIXED","projected_rvol":1.607303},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":5693.0,"sell_vol":241.0,"unclassified_vol":0.0,"imbalance":0.918773,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.10903},"context":{"vwap":8.686304,"price_vs_vwap_pct":1.942094,"ema9":8.841354,"ema20":8.835244,"ema_stack":true,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.414565,"dist_to_hod_atr":9.417589,"atr":0.023265,"spread_atr":0.429831,"own_change_pct":0.001131,"rel_strength_pct":{"SPY":-0.059748,"IWM":-0.067077}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.976666},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a0b0c8294e19","ts":"2026-09-21T16:34:05.592747+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.785,"target":11.05,"target_label":"ceiling","reward_risk":0.1,"pos_in_5d_range_pct":106.6,"room_to_5d_high_atr":-0.15},"price":10.94,"vwap":10.8556,"ext_from_open_pct":-0.36,"max_ext_allowed_pct":4.0,"volume_pace":0.66,"trend":"flat","recent_slope_pct":0.0335,"volatility":"medium"},"price":10.94,"volume":{"bars":184,"last_bar_volume":351630.0,"baseline_avg":156371.05,"bar_rvol":2.24869,"raw_accel":7.99476,"smooth_accel":0.595332,"accel_momentum":-1.620454,"rvol_3bar":[2.124428,0.057032,2.24869],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":49175.0,"sell_vol":47264.0,"unclassified_vol":0.0,"imbalance":0.019816,"bid":10.93,"ask":10.94,"spread_pct":0.091449,"quote_size_imbalance":null,"quote_age_s":3.201289},"context":{"vwap":10.855583,"price_vs_vwap_pct":0.77764,"ema9":10.935088,"ema20":10.947676,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.614281,"dist_to_hod_atr":1.881899,"atr":0.095382,"spread_atr":0.104841,"own_change_pct":0.010058,"rel_strength_pct":{"SPY":-0.057951,"IWM":-0.086147}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.044559},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ff8f80892a88","ts":"2026-09-21T16:35:07.511256+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.41,"target":8.76,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":124.5,"room_to_5d_high_atr":-0.77},"price":8.665,"vwap":8.6303,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":-0.0486,"volatility":"medium"},"price":8.665,"volume":{"bars":185,"last_bar_volume":7532.0,"baseline_avg":1399.1,"bar_rvol":5.383461,"raw_accel":20.533843,"smooth_accel":0.569729,"accel_momentum":-5.630776,"rvol_3bar":[0.439161,0.189323,5.383461],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":5934.0,"sell_vol":1647.0,"unclassified_vol":0.0,"imbalance":0.565493,"bid":8.66,"ask":8.67,"spread_pct":0.115407,"quote_size_imbalance":null,"quote_age_s":4.295265},"context":{"vwap":8.630291,"price_vs_vwap_pct":0.402181,"ema9":8.680306,"ema20":8.691535,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-3.165964,"dist_to_hod_atr":13.545447,"atr":0.020915,"spread_atr":0.478131,"own_change_pct":-0.115274,"rel_strength_pct":{"SPY":-0.191716,"IWM":-0.18698}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":3.044308},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"93ed62625e62","ts":"2026-09-21T16:36:14.262422+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.2,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1776,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.858,"trend":"flat","recent_slope_pct":-0.0222,"volatility":"unknown"},"price":5.175,"volume":{"bars":186,"last_bar_volume":4884.0,"baseline_avg":28817.2,"bar_rvol":0.169482,"raw_accel":-0.523512,"smooth_accel":-0.422835,"accel_momentum":-0.457949,"rvol_3bar":[1.416028,0.354967,0.169482],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":137,"trade_rate":4.566667,"buy_vol":3127.0,"sell_vol":31223.0,"unclassified_vol":0.0,"imbalance":-0.817933,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":4.35021},"context":{"vwap":5.177614,"price_vs_vwap_pct":-0.050482,"ema9":5.18568,"ema20":5.188202,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":9.436239,"atr":0.013247,"spread_atr":0.754899,"own_change_pct":-0.084806,"rel_strength_pct":{"SPY":-0.132731,"IWM":-0.137268}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.138625},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"1630b6abb86d","ts":"2026-09-21T16:36:24.584417+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1304,"target":5.2,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1822,"vwap":5.1776,"ext_from_open_pct":-0.34,"max_ext_allowed_pct":3.0,"volume_pace":0.857,"trend":"flat","recent_slope_pct":0.0056,"volatility":"unknown"},"price":5.1822,"volume":{"bars":186,"last_bar_volume":4884.0,"baseline_avg":28817.2,"bar_rvol":0.169482,"raw_accel":-0.523512,"smooth_accel":-0.422835,"accel_momentum":-0.457949,"rvol_3bar":[1.416028,0.354967,0.169482],"trend_3bar":"DECELERATING","projected_rvol":2.913216},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":3327.0,"sell_vol":31271.0,"unclassified_vol":0.0,"imbalance":-0.807677,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.821575},"context":{"vwap":5.177614,"price_vs_vwap_pct":0.088578,"ema9":5.18568,"ema20":5.188202,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.222642,"dist_to_hod_atr":8.892711,"atr":0.013247,"spread_atr":0.754899,"own_change_pct":-0.084806,"rel_strength_pct":{"SPY":-0.132731,"IWM":-0.137268}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.136887},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"0b735308e0b3","ts":"2026-09-21T16:36:29.765306+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.2,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1776,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.857,"trend":"flat","recent_slope_pct":-0.0222,"volatility":"unknown"},"price":5.175,"volume":{"bars":186,"last_bar_volume":4884.0,"baseline_avg":28817.2,"bar_rvol":0.169482,"raw_accel":-0.523512,"smooth_accel":-0.422835,"accel_momentum":-0.457949,"rvol_3bar":[1.416028,0.354967,0.169482],"trend_3bar":"DECELERATING","projected_rvol":2.453504},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":3339.0,"sell_vol":31736.0,"unclassified_vol":0.0,"imbalance":-0.809608,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.816667},"context":{"vwap":5.177614,"price_vs_vwap_pct":-0.050482,"ema9":5.18568,"ema20":5.188202,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":9.436239,"atr":0.013247,"spread_atr":0.754899,"own_change_pct":-0.084806,"rel_strength_pct":{"SPY":-0.132731,"IWM":-0.137268}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.137214},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"825aef901f61","ts":"2026-09-21T16:36:34.907895+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1302,"target":5.2,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.182,"vwap":5.1776,"ext_from_open_pct":-0.35,"max_ext_allowed_pct":4.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":0.0048,"volatility":"unknown"},"price":5.182,"volume":{"bars":186,"last_bar_volume":4884.0,"baseline_avg":28817.2,"bar_rvol":0.169482,"raw_accel":-0.523512,"smooth_accel":-0.422835,"accel_momentum":-0.457949,"rvol_3bar":[1.416028,0.354967,0.169482],"trend_3bar":"DECELERATING","projected_rvol":2.146155},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":3343.0,"sell_vol":32622.0,"unclassified_vol":0.0,"imbalance":-0.814097,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":4.761427},"context":{"vwap":5.177614,"price_vs_vwap_pct":0.084716,"ema9":5.18568,"ema20":5.188202,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.226415,"dist_to_hod_atr":8.907809,"atr":0.013247,"spread_atr":0.754899,"own_change_pct":-0.084806,"rel_strength_pct":{"SPY":-0.132731,"IWM":-0.137268}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.137975},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"9cd3fe917ad6","ts":"2026-09-21T16:36:45.164208+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.2,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1776,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":-0.0222,"volatility":"unknown"},"price":5.175,"volume":{"bars":186,"last_bar_volume":4884.0,"baseline_avg":28817.2,"bar_rvol":0.169482,"raw_accel":-0.523512,"smooth_accel":-0.422835,"accel_momentum":-0.457949,"rvol_3bar":[1.416028,0.354967,0.169482],"trend_3bar":"DECELERATING","projected_rvol":1.724617},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1116.0,"sell_vol":3114.0,"unclassified_vol":0.0,"imbalance":-0.47234,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.428995},"context":{"vwap":5.177614,"price_vs_vwap_pct":-0.050482,"ema9":5.18568,"ema20":5.188202,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":9.436239,"atr":0.013247,"spread_atr":0.754899,"own_change_pct":-0.084806,"rel_strength_pct":{"SPY":-0.132731,"IWM":-0.137268}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.080053},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"49c11db28178","ts":"2026-09-21T16:36:45.164208+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7719,"target":8.94,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8605,"vwap":8.7739,"ext_from_open_pct":4.0,"max_ext_allowed_pct":4.0,"volume_pace":0.547,"trend":"flat","recent_slope_pct":-0.0381,"volatility":"unknown"},"price":8.8605,"volume":{"bars":186,"last_bar_volume":68766.0,"baseline_avg":37141.05,"bar_rvol":1.851482,"raw_accel":-0.062137,"smooth_accel":0.64602,"accel_momentum":0.849623,"rvol_3bar":[0.231591,2.139514,1.851482],"trend_3bar":"MIXED","projected_rvol":1.601685},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":25490.0,"sell_vol":3358.0,"unclassified_vol":0.0,"imbalance":0.767194,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.120356},"context":{"vwap":8.773672,"price_vs_vwap_pct":0.98964,"ema9":8.875605,"ema20":8.878977,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.889262,"dist_to_hod_atr":3.609183,"atr":0.022027,"spread_atr":0.453985,"own_change_pct":0.019159,"rel_strength_pct":{"SPY":-0.028766,"IWM":-0.033303}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.420445},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1ea2da6f997a","ts":"2026-09-21T16:36:50.239764+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.2,"target_label":"premarket_high","reward_risk":0.18,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.18,"vwap":5.1776,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":4.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":-0.0029,"volatility":"unknown"},"price":5.18,"volume":{"bars":186,"last_bar_volume":4884.0,"baseline_avg":28817.2,"bar_rvol":0.169482,"raw_accel":-0.523512,"smooth_accel":-0.422835,"accel_momentum":-0.457949,"rvol_3bar":[1.416028,0.354967,0.169482],"trend_3bar":"DECELERATING","projected_rvol":1.561036},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1273.0,"sell_vol":2096.0,"unclassified_vol":0.0,"imbalance":-0.244286,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":2.10688},"context":{"vwap":5.177614,"price_vs_vwap_pct":0.046088,"ema9":5.18568,"ema20":5.188202,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.264151,"dist_to_hod_atr":9.058789,"atr":0.013247,"spread_atr":0.754899,"own_change_pct":-0.084806,"rel_strength_pct":{"SPY":-0.132731,"IWM":-0.137268}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.041402},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"1b9b99b119b9","ts":"2026-09-21T16:36:50.239764+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7764,"target":8.94,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.7739,"ext_from_open_pct":4.05,"max_ext_allowed_pct":4.0,"volume_pace":0.546,"trend":"flat","recent_slope_pct":-0.028,"volatility":"unknown"},"price":8.865,"volume":{"bars":186,"last_bar_volume":68766.0,"baseline_avg":37141.05,"bar_rvol":1.851482,"raw_accel":-0.062137,"smooth_accel":0.64602,"accel_momentum":0.849623,"rvol_3bar":[0.231591,2.139514,1.851482],"trend_3bar":"MIXED","projected_rvol":1.449358},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":25385.0,"sell_vol":881.0,"unclassified_vol":0.0,"imbalance":0.932917,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.555739},"context":{"vwap":8.773672,"price_vs_vwap_pct":1.04093,"ema9":8.875605,"ema20":8.878977,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.838926,"dist_to_hod_atr":3.40489,"atr":0.022027,"spread_atr":0.453985,"own_change_pct":0.019159,"rel_strength_pct":{"SPY":-0.028766,"IWM":-0.033303}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.72728},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dba39cf90a14","ts":"2026-09-21T16:36:55.309687+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.2,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1776,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":-0.0222,"volatility":"unknown"},"price":5.175,"volume":{"bars":186,"last_bar_volume":4884.0,"baseline_avg":28817.2,"bar_rvol":0.169482,"raw_accel":-0.523512,"smooth_accel":-0.422835,"accel_momentum":-0.457949,"rvol_3bar":[1.416028,0.354967,0.169482],"trend_3bar":"DECELERATING","projected_rvol":1.454422},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":1373.0,"sell_vol":2865.0,"unclassified_vol":0.0,"imbalance":-0.352053,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.913312},"context":{"vwap":5.177614,"price_vs_vwap_pct":-0.050482,"ema9":5.18568,"ema20":5.188202,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":9.436239,"atr":0.013247,"spread_atr":0.754899,"own_change_pct":-0.084806,"rel_strength_pct":{"SPY":-0.132731,"IWM":-0.137268}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.059667},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"4740bfe6c65a","ts":"2026-09-21T16:37:00.421720+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1289,"target":5.2,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1807,"vwap":5.1776,"ext_from_open_pct":-0.37,"max_ext_allowed_pct":4.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":-0.0002,"volatility":"unknown"},"price":5.1807,"volume":{"bars":186,"last_bar_volume":4884.0,"baseline_avg":28817.2,"bar_rvol":0.169482,"raw_accel":-0.523512,"smooth_accel":-0.422835,"accel_momentum":-0.457949,"rvol_3bar":[1.416028,0.354967,0.169482],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1427.0,"sell_vol":8802.0,"unclassified_vol":0.0,"imbalance":-0.720989,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":2.277719},"context":{"vwap":5.177614,"price_vs_vwap_pct":0.059608,"ema9":5.18568,"ema20":5.188202,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.250943,"dist_to_hod_atr":9.005946,"atr":0.013247,"spread_atr":0.754899,"own_change_pct":-0.084806,"rel_strength_pct":{"SPY":-0.108762,"IWM":-0.100539}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.122195},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"1941aa9365f8","ts":"2026-09-21T16:37:05.595948+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.18 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.0686,"target":5.2,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1773,"vwap":5.1776,"ext_from_open_pct":-0.44,"max_ext_allowed_pct":3.0,"volume_pace":0.857,"trend":"flat","recent_slope_pct":-0.0396,"volatility":"unknown"},"price":5.1773,"volume":{"bars":187,"last_bar_volume":45304.0,"baseline_avg":27923.15,"bar_rvol":1.622453,"raw_accel":5.489812,"smooth_accel":-0.428531,"accel_momentum":-0.005696,"rvol_3bar":[0.354967,0.169482,1.622453],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":6420.0,"sell_vol":11252.0,"unclassified_vol":0.0,"imbalance":-0.273427,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":3.86027},"context":{"vwap":5.177634,"price_vs_vwap_pct":-0.006448,"ema9":5.184684,"ema20":5.187487,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.315094,"dist_to_hod_atr":9.427664,"atr":0.013015,"spread_atr":0.768351,"own_change_pct":-0.156105,"rel_strength_pct":{"SPY":-0.180062,"IWM":-0.171838}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.443622},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c8d834a54569","ts":"2026-09-21T16:37:41.536091+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4151,"target":7.775,"target_label":"range_20d_high","reward_risk":19.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4799,"vwap":6.3537,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.352,"trend":"flat","recent_slope_pct":0.0559,"volatility":"unknown"},"price":6.4799,"volume":{"bars":187,"last_bar_volume":61024.0,"baseline_avg":64326.75,"bar_rvol":0.948657,"raw_accel":1.999902,"smooth_accel":-0.454225,"accel_momentum":0.031859,"rvol_3bar":[0.846178,0.285085,0.948657],"trend_3bar":"MIXED","projected_rvol":0.63928},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":6947.0,"sell_vol":16205.0,"unclassified_vol":0.0,"imbalance":-0.399879,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.097753},"context":{"vwap":6.353425,"price_vs_vwap_pct":1.990661,"ema9":6.47018,"ema20":6.470607,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.155624,"dist_to_hod_atr":0.567711,"atr":0.017791,"spread_atr":0.562091,"own_change_pct":0.07728,"rel_strength_pct":{"SPY":0.053324,"IWM":0.061547}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.379348},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"459760ca2b56","ts":"2026-09-21T16:37:46.644006+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3536,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.351,"trend":"flat","recent_slope_pct":0.0408,"volatility":"unknown"},"price":6.475,"volume":{"bars":187,"last_bar_volume":61024.0,"baseline_avg":64326.75,"bar_rvol":0.948657,"raw_accel":1.999902,"smooth_accel":-0.454225,"accel_momentum":0.031859,"rvol_3bar":[0.846178,0.285085,0.948657],"trend_3bar":"MIXED","projected_rvol":0.570093},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":6554.0,"sell_vol":15090.0,"unclassified_vol":0.0,"imbalance":-0.394382,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.659399},"context":{"vwap":6.353425,"price_vs_vwap_pct":1.913537,"ema9":6.47018,"ema20":6.470607,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.231125,"dist_to_hod_atr":0.843136,"atr":0.017791,"spread_atr":0.562091,"own_change_pct":0.07728,"rel_strength_pct":{"SPY":0.053324,"IWM":0.061547}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.374133},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b3bcce839d66","ts":"2026-09-21T16:38:07.100346+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5722,"target":8.76,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":125.3,"room_to_5d_high_atr":-0.79},"price":8.6741,"vwap":8.6304,"ext_from_open_pct":0.63,"max_ext_allowed_pct":4.0,"volume_pace":0.891,"trend":"flat","recent_slope_pct":0.0095,"volatility":"medium"},"price":8.6741,"volume":{"bars":188,"last_bar_volume":96.0,"baseline_avg":1776.05,"bar_rvol":0.054053,"raw_accel":-0.921504,"smooth_accel":-0.782516,"accel_momentum":-1.406334,"rvol_3bar":[0.294344,0.690181,0.054053],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":62.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":5.801522},"context":{"vwap":8.630363,"price_vs_vwap_pct":0.506785,"ema9":8.669237,"ema20":8.682839,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-3.064269,"dist_to_hod_atr":14.364034,"atr":0.019089,"spread_atr":0.523852,"own_change_pct":-0.37066,"rel_strength_pct":{"SPY":-0.340886,"IWM":-0.335706}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.054053},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a154905b7f6b","ts":"2026-09-21T16:38:12.210484+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0297,"target":12.29,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":64.7,"room_to_5d_high_atr":0.56},"price":12.205,"vwap":12.1699,"ext_from_open_pct":-0.77,"max_ext_allowed_pct":4.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":-0.0198,"volatility":"medium"},"price":12.205,"volume":{"bars":188,"last_bar_volume":1764.0,"baseline_avg":8127.35,"bar_rvol":0.217045,"raw_accel":-0.615267,"smooth_accel":-0.636772,"accel_momentum":-0.049792,"rvol_3bar":[0.449776,0.568446,0.217045],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":2416.0,"sell_vol":953.0,"unclassified_vol":0.0,"imbalance":0.434253,"bid":12.2,"ask":12.21,"spread_pct":0.081934,"quote_size_imbalance":null,"quote_age_s":1.208538},"context":{"vwap":12.169842,"price_vs_vwap_pct":0.288896,"ema9":12.214206,"ema20":12.210554,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.281825,"dist_to_hod_atr":10.148847,"atr":0.028082,"spread_atr":0.3561,"own_change_pct":0.127823,"rel_strength_pct":{"SPY":0.157597,"IWM":0.162777}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.094253},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f246a87301f2","ts":"2026-09-21T16:38:48.008154+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.41,"target":8.76,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":123.3,"room_to_5d_high_atr":-0.73},"price":8.6484,"vwap":8.6304,"ext_from_open_pct":0.33,"max_ext_allowed_pct":3.0,"volume_pace":0.888,"trend":"flat","recent_slope_pct":-0.0499,"volatility":"medium"},"price":8.6484,"volume":{"bars":188,"last_bar_volume":96.0,"baseline_avg":1776.05,"bar_rvol":0.054053,"raw_accel":-0.921504,"smooth_accel":-0.782516,"accel_momentum":-1.406334,"rvol_3bar":[0.294344,0.690181,0.054053],"trend_3bar":"MIXED","projected_rvol":0.518619},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":283.0,"sell_vol":356.0,"unclassified_vol":0.0,"imbalance":-0.114241,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":0.17635},"context":{"vwap":8.630363,"price_vs_vwap_pct":0.208999,"ema9":8.669237,"ema20":8.682839,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-3.351475,"dist_to_hod_atr":15.710334,"atr":0.019089,"spread_atr":0.523852,"own_change_pct":-0.37066,"rel_strength_pct":{"SPY":-0.340886,"IWM":-0.335706}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.006175},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d4c4c90d5846","ts":"2026-09-21T16:38:48.008154+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.2,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7746,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.545,"trend":"flat","recent_slope_pct":-0.0579,"volatility":"unknown"},"price":8.845,"volume":{"bars":188,"last_bar_volume":57351.0,"baseline_avg":38431.05,"bar_rvol":1.492309,"raw_accel":-0.006772,"smooth_accel":0.938807,"accel_momentum":-1.011802,"rvol_3bar":[1.851482,1.543353,1.492309],"trend_3bar":"DECELERATING","projected_rvol":1.683476},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":14752.0,"sell_vol":15901.0,"unclassified_vol":0.0,"imbalance":-0.037484,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.172805},"context":{"vwap":8.774352,"price_vs_vwap_pct":0.805169,"ema9":8.874631,"ema20":8.877865,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":4.297663,"atr":0.022105,"spread_atr":0.452386,"own_change_pct":-0.069821,"rel_strength_pct":{"SPY":-0.040047,"IWM":-0.034866}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.055938},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"9589b3459a9f","ts":"2026-09-21T16:39:03.375213+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7784,"target":8.94,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8671,"vwap":8.7746,"ext_from_open_pct":4.07,"max_ext_allowed_pct":4.0,"volume_pace":0.544,"trend":"flat","recent_slope_pct":-0.0482,"volatility":"unknown"},"price":8.8671,"volume":{"bars":189,"last_bar_volume":54094.0,"baseline_avg":39201.65,"bar_rvol":1.379891,"raw_accel":-0.056791,"smooth_accel":0.125011,"accel_momentum":-0.813796,"rvol_3bar":[1.543353,1.492309,1.379891],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":14210.0,"sell_vol":2933.0,"unclassified_vol":0.0,"imbalance":0.65782,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":3.372974},"context":{"vwap":8.774601,"price_vs_vwap_pct":1.054168,"ema9":8.868705,"ema20":8.874735,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.815436,"dist_to_hod_atr":3.178791,"atr":0.022933,"spread_atr":0.436048,"own_change_pct":-0.281849,"rel_strength_pct":{"SPY":-0.234599,"IWM":-0.208454}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.907719},"shadow":{"decision":"FAIL","failed":["vas","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"599ca5fb732e","ts":"2026-09-21T16:39:08.509581+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.785,"target":11.05,"target_label":"ceiling","reward_risk":0.12,"pos_in_5d_range_pct":104.5,"room_to_5d_high_atr":-0.11},"price":10.9142,"vwap":10.8565,"ext_from_open_pct":-0.6,"max_ext_allowed_pct":3.0,"volume_pace":0.649,"trend":"flat","recent_slope_pct":-0.0518,"volatility":"medium"},"price":10.9142,"volume":{"bars":189,"last_bar_volume":52852.0,"baseline_avg":180927.5,"bar_rvol":0.292117,"raw_accel":0.168468,"smooth_accel":-0.607522,"accel_momentum":-0.131296,"rvol_3bar":[1.010097,0.066683,0.292117],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":2599.0,"sell_vol":34238.0,"unclassified_vol":0.0,"imbalance":-0.858892,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":0.556769},"context":{"vwap":10.856438,"price_vs_vwap_pct":0.532055,"ema9":10.934483,"ema20":10.942707,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.846306,"dist_to_hod_atr":2.903087,"atr":0.070718,"spread_atr":0.141407,"own_change_pct":-0.118852,"rel_strength_pct":{"SPY":-0.071602,"IWM":-0.045457}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.250897},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"eb1bbec18f5d","ts":"2026-09-21T16:39:08.509581+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8433,"vwap":8.7746,"ext_from_open_pct":3.79,"max_ext_allowed_pct":4.0,"volume_pace":0.544,"trend":"flat","recent_slope_pct":-0.1019,"volatility":"unknown"},"price":8.8433,"volume":{"bars":189,"last_bar_volume":54094.0,"baseline_avg":39201.65,"bar_rvol":1.379891,"raw_accel":-0.056791,"smooth_accel":0.125011,"accel_momentum":-0.813796,"rvol_3bar":[1.543353,1.492309,1.379891],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":11287.0,"sell_vol":2960.0,"unclassified_vol":0.0,"imbalance":0.584474,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.370514},"context":{"vwap":8.774601,"price_vs_vwap_pct":0.78293,"ema9":8.868705,"ema20":8.874735,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.081655,"dist_to_hod_atr":4.216585,"atr":0.022933,"spread_atr":0.436048,"own_change_pct":-0.281849,"rel_strength_pct":{"SPY":-0.234599,"IWM":-0.208454}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.80651},"shadow":{"decision":"FAIL","failed":["vas","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"aaa4a1b86264","ts":"2026-09-21T16:39:18.668245+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.7195,"target":8.88,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":88.1,"room_to_5d_high_atr":0.2},"price":8.8284,"vwap":8.6883,"ext_from_open_pct":1.24,"max_ext_allowed_pct":4.0,"volume_pace":0.713,"trend":"flat","recent_slope_pct":-0.0625,"volatility":"medium"},"price":8.8284,"volume":{"bars":189,"last_bar_volume":7299.0,"baseline_avg":8282.7,"bar_rvol":0.881234,"raw_accel":-0.594973,"smooth_accel":0.834205,"accel_momentum":0.959819,"rvol_3bar":[0.225667,2.404531,0.881234],"trend_3bar":"MIXED","projected_rvol":2.827255},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":10359.0,"sell_vol":3063.0,"unclassified_vol":0.0,"imbalance":0.543585,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":2.253192},"context":{"vwap":8.688033,"price_vs_vwap_pct":1.615632,"ema9":8.844429,"ema20":8.840147,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.707707,"dist_to_hod_atr":11.59951,"atr":0.021182,"spread_atr":0.472101,"own_change_pct":0.003392,"rel_strength_pct":{"SPY":0.050642,"IWM":0.076786}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.479026},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"516a0b55c9dc","ts":"2026-09-21T16:39:18.668245+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.23,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7747,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.544,"trend":"flat","recent_slope_pct":-0.1207,"volatility":"unknown"},"price":8.835,"volume":{"bars":189,"last_bar_volume":54094.0,"baseline_avg":39201.65,"bar_rvol":1.379891,"raw_accel":-0.056791,"smooth_accel":0.125011,"accel_momentum":-0.813796,"rvol_3bar":[1.543353,1.492309,1.379891],"trend_3bar":"DECELERATING","projected_rvol":1.676464},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":5108.0,"sell_vol":17667.0,"unclassified_vol":0.0,"imbalance":-0.551438,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.662885},"context":{"vwap":8.774601,"price_vs_vwap_pct":0.688339,"ema9":8.868705,"ema20":8.874735,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":4.578505,"atr":0.022933,"spread_atr":0.436048,"own_change_pct":-0.281849,"rel_strength_pct":{"SPY":-0.234599,"IWM":-0.208454}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.760924},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"bc828173b7d4","ts":"2026-09-21T16:39:23.787240+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7342,"target":9.3,"target_label":"premarket_high","reward_risk":4.2,"pos_in_5d_range_pct":90.2,"room_to_5d_high_atr":0.17},"price":8.8431,"vwap":8.6883,"ext_from_open_pct":1.41,"max_ext_allowed_pct":3.0,"volume_pace":0.712,"trend":"flat","recent_slope_pct":-0.0293,"volatility":"medium"},"price":8.8431,"volume":{"bars":189,"last_bar_volume":7299.0,"baseline_avg":8282.7,"bar_rvol":0.881234,"raw_accel":-0.594973,"smooth_accel":0.834205,"accel_momentum":0.959819,"rvol_3bar":[0.225667,2.404531,0.881234],"trend_3bar":"MIXED","projected_rvol":2.224923},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":10379.0,"sell_vol":3063.0,"unclassified_vol":0.0,"imbalance":0.544264,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":1.025985},"context":{"vwap":8.688033,"price_vs_vwap_pct":1.78483,"ema9":8.844429,"ema20":8.840147,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.545707,"dist_to_hod_atr":10.905522,"atr":0.021182,"spread_atr":0.472101,"own_change_pct":0.003392,"rel_strength_pct":{"SPY":0.050642,"IWM":0.076786}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.479624},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6b0d09051d56","ts":"2026-09-21T16:39:49.409857+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.7161,"target":8.88,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":87.7,"room_to_5d_high_atr":0.21},"price":8.825,"vwap":8.6883,"ext_from_open_pct":1.2,"max_ext_allowed_pct":4.0,"volume_pace":0.711,"trend":"flat","recent_slope_pct":-0.0702,"volatility":"medium"},"price":8.825,"volume":{"bars":189,"last_bar_volume":7299.0,"baseline_avg":8282.7,"bar_rvol":0.881234,"raw_accel":-0.594973,"smooth_accel":0.834205,"accel_momentum":0.959819,"rvol_3bar":[0.225667,2.404531,0.881234],"trend_3bar":"MIXED","projected_rvol":1.129489},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":202.0,"sell_vol":216.0,"unclassified_vol":0.0,"imbalance":-0.033493,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.310621},"context":{"vwap":8.688033,"price_vs_vwap_pct":1.576497,"ema9":8.844429,"ema20":8.840147,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.745176,"dist_to_hod_atr":11.760024,"atr":0.021182,"spread_atr":0.472101,"own_change_pct":0.003392,"rel_strength_pct":{"SPY":0.050642,"IWM":0.076786}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.029515},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fd6ceb541039","ts":"2026-09-21T16:39:54.494534+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7211,"target":9.3,"target_label":"premarket_high","reward_risk":4.32,"pos_in_5d_range_pct":88.4,"room_to_5d_high_atr":0.2},"price":8.83,"vwap":8.6883,"ext_from_open_pct":1.26,"max_ext_allowed_pct":4.0,"volume_pace":0.71,"trend":"flat","recent_slope_pct":-0.0589,"volatility":"medium"},"price":8.83,"volume":{"bars":189,"last_bar_volume":7299.0,"baseline_avg":8282.7,"bar_rvol":0.881234,"raw_accel":-0.594973,"smooth_accel":0.834205,"accel_momentum":0.959819,"rvol_3bar":[0.225667,2.404531,0.881234],"trend_3bar":"MIXED","projected_rvol":1.024367},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":184.0,"sell_vol":216.0,"unclassified_vol":0.0,"imbalance":-0.08,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.496693},"context":{"vwap":8.688033,"price_vs_vwap_pct":1.634048,"ema9":8.844429,"ema20":8.840147,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.690074,"dist_to_hod_atr":11.523974,"atr":0.021182,"spread_atr":0.472101,"own_change_pct":0.003392,"rel_strength_pct":{"SPY":0.050642,"IWM":0.076786}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.070499},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c456e1623fe1","ts":"2026-09-21T16:40:04.672871+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7358,"target":9.3,"target_label":"premarket_high","reward_risk":4.18,"pos_in_5d_range_pct":90.4,"room_to_5d_high_atr":0.16},"price":8.8447,"vwap":8.6883,"ext_from_open_pct":1.43,"max_ext_allowed_pct":4.0,"volume_pace":0.71,"trend":"flat","recent_slope_pct":-0.0207,"volatility":"medium"},"price":8.8447,"volume":{"bars":190,"last_bar_volume":7710.0,"baseline_avg":8488.9,"bar_rvol":0.908245,"raw_accel":0.056309,"smooth_accel":3.391703,"accel_momentum":2.557499,"rvol_3bar":[2.404531,0.881234,0.908245],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":458.0,"sell_vol":222.0,"unclassified_vol":0.0,"imbalance":0.347059,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":1.643493},"context":{"vwap":8.688332,"price_vs_vwap_pct":1.799744,"ema9":8.844003,"ema20":8.840352,"ema_stack":true,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.528074,"dist_to_hod_atr":10.667461,"atr":0.021505,"spread_atr":0.465016,"own_change_pct":-0.089264,"rel_strength_pct":{"SPY":-0.021942,"IWM":0.010354}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.315214},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"218c74285814","ts":"2026-09-21T16:40:04.672871+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":6.3905,"target":7.775,"target_label":"range_20d_high","reward_risk":20.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.455,"vwap":6.3549,"ext_from_open_pct":2.62,"max_ext_allowed_pct":3.0,"volume_pace":1.351,"trend":"flat","recent_slope_pct":-0.0797,"volatility":"unknown"},"price":6.455,"volume":{"bars":190,"last_bar_volume":49257.0,"baseline_avg":63160.55,"bar_rvol":0.77987,"raw_accel":-0.507927,"smooth_accel":0.41904,"accel_momentum":-0.143775,"rvol_3bar":[0.875807,1.688235,0.77987],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":18384.0,"sell_vol":1984.0,"unclassified_vol":0.0,"imbalance":0.805185,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":0.135588},"context":{"vwap":6.354846,"price_vs_vwap_pct":1.57602,"ema9":6.464552,"ema20":6.467627,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.539291,"dist_to_hod_atr":1.955362,"atr":0.017899,"spread_atr":0.558675,"own_change_pct":-0.233435,"rel_strength_pct":{"SPY":-0.166114,"IWM":-0.133818}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.627939},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c56b52479e82","ts":"2026-09-21T16:40:14.940697+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.3s / 18s","plan":{"state":"WATCH","setup":"","stop":8.7161,"target":8.88,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":87.7,"room_to_5d_high_atr":0.21},"price":8.825,"vwap":8.6884,"ext_from_open_pct":1.2,"max_ext_allowed_pct":4.0,"volume_pace":0.709,"trend":"flat","recent_slope_pct":-0.0653,"volatility":"medium"},"price":8.825,"volume":{"bars":190,"last_bar_volume":7710.0,"baseline_avg":8488.9,"bar_rvol":0.908245,"raw_accel":0.056309,"smooth_accel":3.391703,"accel_momentum":2.557499,"rvol_3bar":[2.404531,0.881234,0.908245],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":452.0,"sell_vol":222.0,"unclassified_vol":0.0,"imbalance":0.341246,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":1.120348},"context":{"vwap":8.688332,"price_vs_vwap_pct":1.573003,"ema9":8.844003,"ema20":8.840352,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.745176,"dist_to_hod_atr":11.583542,"atr":0.021505,"spread_atr":0.465016,"own_change_pct":-0.089264,"rel_strength_pct":{"SPY":-0.021942,"IWM":0.010354}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.309935},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8b90769571d5","ts":"2026-09-21T16:40:30.329099+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.7s, plan says PASS; stop 8.72, target 9.30 (premarket_high), R:R 4.28; target 0.47 away > ~0.15 reachable in 194 min","plan":{"state":"PASS","setup":"","stop":8.7245,"target":9.3,"target_label":"premarket_high","reward_risk":4.28,"pos_in_5d_range_pct":88.8,"room_to_5d_high_atr":0.19},"price":8.8334,"vwap":8.6884,"ext_from_open_pct":1.3,"max_ext_allowed_pct":4.0,"volume_pace":0.708,"trend":"flat","recent_slope_pct":-0.0463,"volatility":"medium"},"price":8.8334,"volume":{"bars":190,"last_bar_volume":7710.0,"baseline_avg":8488.9,"bar_rvol":0.908245,"raw_accel":0.056309,"smooth_accel":3.391703,"accel_momentum":2.557499,"rvol_3bar":[2.404531,0.881234,0.908245],"trend_3bar":"MIXED","projected_rvol":0.218363},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":794.0,"sell_vol":143.0,"unclassified_vol":0.0,"imbalance":0.694771,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":5.494017},"context":{"vwap":8.688332,"price_vs_vwap_pct":1.669685,"ema9":8.844003,"ema20":8.840352,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.652605,"dist_to_hod_atr":11.192928,"atr":0.021505,"spread_atr":0.465016,"own_change_pct":-0.089264,"rel_strength_pct":{"SPY":-0.021942,"IWM":0.010354}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.631022},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9f9195231163","ts":"2026-09-21T16:40:35.500190+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 30.8s, plan says WATCH; stop 8.72, target 8.88 (ceiling), R:R 0.51; R:R 0.51 < 2.0 at 8.82; pullback: buy 8.80-8.82 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.7161,"target":8.88,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":87.7,"room_to_5d_high_atr":0.21},"price":8.825,"vwap":8.6884,"ext_from_open_pct":1.2,"max_ext_allowed_pct":4.0,"volume_pace":0.708,"trend":"flat","recent_slope_pct":-0.0653,"volatility":"medium"},"price":8.825,"volume":{"bars":190,"last_bar_volume":7710.0,"baseline_avg":8488.9,"bar_rvol":0.908245,"raw_accel":0.056309,"smooth_accel":3.391703,"accel_momentum":2.557499,"rvol_3bar":[2.404531,0.881234,0.908245],"trend_3bar":"MIXED","projected_rvol":0.245688},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":529.0,"sell_vol":339.0,"unclassified_vol":0.0,"imbalance":0.218894,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.899925},"context":{"vwap":8.688332,"price_vs_vwap_pct":1.573003,"ema9":8.844003,"ema20":8.840352,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.745176,"dist_to_hod_atr":11.583542,"atr":0.021505,"spread_atr":0.465016,"own_change_pct":-0.089264,"rel_strength_pct":{"SPY":-0.021942,"IWM":0.010354}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.198809},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d29b3ff66bb9","ts":"2026-09-21T16:40:40.639902+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 36.0s, plan says PASS; stop 8.72, target 9.30 (premarket_high), R:R 4.29; target 0.47 away > ~0.15 reachable in 194 min","plan":{"state":"PASS","setup":"","stop":8.7244,"target":9.3,"target_label":"premarket_high","reward_risk":4.29,"pos_in_5d_range_pct":88.8,"room_to_5d_high_atr":0.19},"price":8.8333,"vwap":8.6884,"ext_from_open_pct":1.3,"max_ext_allowed_pct":4.0,"volume_pace":0.708,"trend":"flat","recent_slope_pct":-0.0465,"volatility":"medium"},"price":8.8333,"volume":{"bars":190,"last_bar_volume":7710.0,"baseline_avg":8488.9,"bar_rvol":0.908245,"raw_accel":0.056309,"smooth_accel":3.391703,"accel_momentum":2.557499,"rvol_3bar":[2.404531,0.881234,0.908245],"trend_3bar":"MIXED","projected_rvol":0.21879},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":420.0,"sell_vol":260.0,"unclassified_vol":0.0,"imbalance":0.235294,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":1.051451},"context":{"vwap":8.688332,"price_vs_vwap_pct":1.668534,"ema9":8.844003,"ema20":8.840352,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.653707,"dist_to_hod_atr":11.197579,"atr":0.021505,"spread_atr":0.465016,"own_change_pct":-0.089264,"rel_strength_pct":{"SPY":-0.021942,"IWM":0.010354}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.213705},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f302993fc78c","ts":"2026-09-21T16:40:45.764739+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 41.1s, plan says WATCH; stop 8.71, target 8.88 (ceiling), R:R 0.55; selling not fading: red-bar volume 1.42x the advance (max 0.7); no reclaim yet (needs a close > 8.85); R:R 0.55 < 2.0 at 8.82; ","plan":{"state":"WATCH","setup":"","stop":8.7111,"target":8.88,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.22},"price":8.82,"vwap":8.6884,"ext_from_open_pct":1.15,"max_ext_allowed_pct":3.0,"volume_pace":0.708,"trend":"flat","recent_slope_pct":-0.0766,"volatility":"medium"},"price":8.82,"volume":{"bars":190,"last_bar_volume":7710.0,"baseline_avg":8488.9,"bar_rvol":0.908245,"raw_accel":0.056309,"smooth_accel":3.391703,"accel_momentum":2.557499,"rvol_3bar":[2.404531,0.881234,0.908245],"trend_3bar":"MIXED","projected_rvol":0.29823},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":601.0,"sell_vol":752.0,"unclassified_vol":0.0,"imbalance":-0.111604,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.6516},"context":{"vwap":8.688332,"price_vs_vwap_pct":1.515455,"ema9":8.844003,"ema20":8.840352,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.800278,"dist_to_hod_atr":11.816049,"atr":0.021505,"spread_atr":0.465016,"own_change_pct":-0.089264,"rel_strength_pct":{"SPY":-0.021942,"IWM":0.010354}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.101364},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"89417c79588f","ts":"2026-09-21T16:40:56.080036+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.41,"target":8.76,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":124.0,"room_to_5d_high_atr":-0.76},"price":8.658,"vwap":8.6306,"ext_from_open_pct":0.44,"max_ext_allowed_pct":3.0,"volume_pace":0.886,"trend":"flat","recent_slope_pct":-0.0162,"volatility":"medium"},"price":8.658,"volume":{"bars":190,"last_bar_volume":1322.0,"baseline_avg":1705.7,"bar_rvol":0.775048,"raw_accel":0.793758,"smooth_accel":-0.76758,"accel_momentum":-0.014755,"rvol_3bar":[0.054053,0.43029,0.775048],"trend_3bar":"ACCELERATING","projected_rvol":3.475589},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":3237.0,"sell_vol":1556.0,"unclassified_vol":0.0,"imbalance":0.35072,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":1.327315},"context":{"vwap":8.63041,"price_vs_vwap_pct":0.319683,"ema9":8.659055,"ema20":8.675315,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-3.244192,"dist_to_hod_atr":13.57578,"atr":0.021384,"spread_atr":0.467647,"own_change_pct":-0.34622,"rel_strength_pct":{"SPY":-0.278899,"IWM":-0.246603}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.271825},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a6062f7e1771","ts":"2026-09-21T16:41:01.226789+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 633.2s, plan says PASS; stop 12.90, target 13.65 (premarket_high), R:R 0.90; R:R 0.90 < 2.0 at 13.30; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.9041,"target":13.65,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":158.5,"room_to_5d_high_atr":-1.75},"price":13.2959,"vwap":12.8801,"ext_from_open_pct":2.2,"max_ext_allowed_pct":3.0,"volume_pace":0.659,"trend":"flat","recent_slope_pct":0.0316,"volatility":"high"},"price":13.2959,"volume":{"bars":191,"last_bar_volume":6438.0,"baseline_avg":21236.95,"bar_rvol":0.303151,"raw_accel":0.04734,"smooth_accel":0.374123,"accel_momentum":0.282214,"rvol_3bar":[0.729416,0.282894,0.303151],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":71.0,"sell_vol":1322.0,"unclassified_vol":0.0,"imbalance":-0.898062,"bid":13.29,"ask":13.32,"spread_pct":0.225479,"quote_size_imbalance":null,"quote_age_s":8.785313},"context":{"vwap":12.880123,"price_vs_vwap_pct":3.228048,"ema9":13.291809,"ema20":13.260692,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.652899,"dist_to_hod_atr":4.703306,"atr":0.10718,"spread_atr":0.279903,"own_change_pct":-0.027821,"rel_strength_pct":{"SPY":0.027848,"IWM":0.064812}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.272248},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d6fcfa3e7928","ts":"2026-09-21T16:41:01.226789+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.785,"target":11.05,"target_label":"ceiling","reward_risk":0.11,"pos_in_5d_range_pct":105.4,"room_to_5d_high_atr":-0.13},"price":10.925,"vwap":10.8568,"ext_from_open_pct":-0.5,"max_ext_allowed_pct":3.0,"volume_pace":0.646,"trend":"flat","recent_slope_pct":-0.0253,"volatility":"medium"},"price":10.925,"volume":{"bars":191,"last_bar_volume":54571.0,"baseline_avg":133980.05,"bar_rvol":0.407307,"raw_accel":-0.757853,"smooth_accel":0.147918,"accel_momentum":0.529215,"rvol_3bar":[0.292117,1.270134,0.407307],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":3621.0,"sell_vol":2683.0,"unclassified_vol":0.0,"imbalance":0.148794,"bid":10.92,"ask":10.93,"spread_pct":0.091533,"quote_size_imbalance":null,"quote_age_s":0.017166},"context":{"vwap":10.856807,"price_vs_vwap_pct":0.628112,"ema9":10.930421,"ema20":10.939208,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.749179,"dist_to_hod_atr":3.069673,"atr":0.063362,"spread_atr":0.157824,"own_change_pct":-0.137174,"rel_strength_pct":{"SPY":-0.081505,"IWM":-0.044541}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.060605},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"720bd7237602","ts":"2026-09-21T16:41:01.226789+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0347,"target":12.29,"target_label":"prev_day_high","reward_risk":0.46,"pos_in_5d_range_pct":65.2,"room_to_5d_high_atr":0.56},"price":12.21,"vwap":12.17,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":3.0,"volume_pace":0.718,"trend":"flat","recent_slope_pct":-0.0237,"volatility":"medium"},"price":12.21,"volume":{"bars":191,"last_bar_volume":2243.0,"baseline_avg":7708.05,"bar_rvol":0.290994,"raw_accel":-0.441762,"smooth_accel":0.20408,"accel_momentum":0.358018,"rvol_3bar":[0.794062,0.515988,0.290994],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":643.0,"sell_vol":1553.0,"unclassified_vol":0.0,"imbalance":-0.41439,"bid":12.2,"ask":12.21,"spread_pct":0.081934,"quote_size_imbalance":null,"quote_age_s":1.225318},"context":{"vwap":12.169975,"price_vs_vwap_pct":0.328885,"ema9":12.214225,"ema20":12.211605,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.241793,"dist_to_hod_atr":10.588788,"atr":0.026443,"spread_atr":0.378171,"own_change_pct":-0.117791,"rel_strength_pct":{"SPY":-0.062122,"IWM":-0.025158}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.120585},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"738d52b7409b","ts":"2026-09-21T16:41:01.226789+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.3905,"target":7.775,"target_label":"range_20d_high","reward_risk":20.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.455,"vwap":6.3553,"ext_from_open_pct":2.62,"max_ext_allowed_pct":4.0,"volume_pace":1.35,"trend":"flat","recent_slope_pct":-0.0465,"volatility":"unknown"},"price":6.455,"volume":{"bars":191,"last_bar_volume":76549.0,"baseline_avg":63777.45,"bar_rvol":1.200252,"raw_accel":0.554074,"smooth_accel":0.691896,"accel_momentum":0.272856,"rvol_3bar":[1.688235,0.77987,1.200252],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":14634.0,"sell_vol":4244.0,"unclassified_vol":0.0,"imbalance":0.550376,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":0.30435},"context":{"vwap":6.355341,"price_vs_vwap_pct":1.568121,"ema9":6.461642,"ema20":6.465948,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.539291,"dist_to_hod_atr":1.975062,"atr":0.017721,"spread_atr":0.564303,"own_change_pct":-0.232019,"rel_strength_pct":{"SPY":-0.176349,"IWM":-0.139386}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.66059},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9ae4a38fb7e5","ts":"2026-09-21T16:41:11.551599+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"held 66.9s, plan says PASS; stop 8.73, target 9.30 (premarket_high), R:R 4.19; target 0.46 away > ~0.15 reachable in 194 min","plan":{"state":"PASS","setup":"","stop":8.735,"target":9.3,"target_label":"premarket_high","reward_risk":4.19,"pos_in_5d_range_pct":90.3,"room_to_5d_high_atr":0.16},"price":8.8439,"vwap":8.6885,"ext_from_open_pct":1.42,"max_ext_allowed_pct":4.0,"volume_pace":0.706,"trend":"flat","recent_slope_pct":0.0299,"volatility":"medium"},"price":8.8439,"volume":{"bars":191,"last_bar_volume":2155.0,"baseline_avg":8301.1,"bar_rvol":0.259604,"raw_accel":-0.720493,"smooth_accel":-0.268964,"accel_momentum":-3.660667,"rvol_3bar":[0.881234,0.908245,0.259604],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1485.0,"sell_vol":624.0,"unclassified_vol":0.0,"imbalance":0.40825,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.992757},"context":{"vwap":8.688416,"price_vs_vwap_pct":1.789559,"ema9":8.843983,"ema20":8.84069,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.536891,"dist_to_hod_atr":10.592241,"atr":0.021733,"spread_atr":0.460132,"own_change_pct":-0.054245,"rel_strength_pct":{"SPY":0.001424,"IWM":0.038388}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.105983},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"82bb712b83ce","ts":"2026-09-21T16:41:11.551599+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.2,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7749,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.54,"trend":"flat","recent_slope_pct":-0.0649,"volatility":"unknown"},"price":8.845,"volume":{"bars":191,"last_bar_volume":24946.0,"baseline_avg":38472.25,"bar_rvol":0.648415,"raw_accel":-0.311834,"smooth_accel":-0.372943,"accel_momentum":-0.112047,"rvol_3bar":[1.379891,0.898817,0.648415],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":4319.0,"sell_vol":1449.0,"unclassified_vol":0.0,"imbalance":0.497573,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.181124},"context":{"vwap":8.774866,"price_vs_vwap_pct":0.799262,"ema9":8.860171,"ema20":8.869341,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":3.935062,"atr":0.024142,"spread_atr":0.414217,"own_change_pct":-0.338028,"rel_strength_pct":{"SPY":-0.282359,"IWM":-0.245395}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.322634},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"ed233ec3fa72","ts":"2026-09-21T16:41:16.664193+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.7061,"target":8.88,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":86.3,"room_to_5d_high_atr":0.23},"price":8.815,"vwap":8.6886,"ext_from_open_pct":1.09,"max_ext_allowed_pct":3.0,"volume_pace":0.707,"trend":"flat","recent_slope_pct":-0.0355,"volatility":"medium"},"price":8.815,"volume":{"bars":191,"last_bar_volume":2155.0,"baseline_avg":8301.1,"bar_rvol":0.259604,"raw_accel":-0.720493,"smooth_accel":-0.268964,"accel_momentum":-3.660667,"rvol_3bar":[0.881234,0.908245,0.259604],"trend_3bar":"MIXED","projected_rvol":2.084563},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":2274.0,"sell_vol":2656.0,"unclassified_vol":0.0,"imbalance":-0.077485,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.607566},"context":{"vwap":8.688416,"price_vs_vwap_pct":1.456932,"ema9":8.843983,"ema20":8.84069,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.85538,"dist_to_hod_atr":11.922023,"atr":0.021733,"spread_atr":0.460132,"own_change_pct":-0.054245,"rel_strength_pct":{"SPY":0.001424,"IWM":0.038388}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.020115},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"78fd2e00ed45","ts":"2026-09-21T16:41:16.664193+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.6115,"target":9.74,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":110.0,"room_to_5d_high_atr":-0.1},"price":9.71,"vwap":9.6866,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.635,"trend":"flat","recent_slope_pct":-0.0412,"volatility":"medium"},"price":9.71,"volume":{"bars":191,"last_bar_volume":1190.0,"baseline_avg":4811.7,"bar_rvol":0.247314,"raw_accel":-0.865734,"smooth_accel":-0.311938,"accel_momentum":0.055752,"rvol_3bar":[1.663024,2.015395,0.247314],"trend_3bar":"MIXED","projected_rvol":0.074829},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":200.0,"sell_vol":827.0,"unclassified_vol":0.0,"imbalance":-0.610516,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":0.807566},"context":{"vwap":9.686551,"price_vs_vwap_pct":0.242081,"ema9":9.721356,"ema20":9.72028,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.220753,"dist_to_hod_atr":7.591943,"atr":0.015806,"spread_atr":0.632662,"own_change_pct":-0.154162,"rel_strength_pct":{"SPY":-0.098493,"IWM":-0.061529}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.150989},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2a017353d082","ts":"2026-09-21T16:41:16.664193+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7753,"target":8.94,"target_label":"ceiling","reward_risk":0.86,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8639,"vwap":8.7749,"ext_from_open_pct":4.04,"max_ext_allowed_pct":4.0,"volume_pace":0.54,"trend":"flat","recent_slope_pct":-0.0221,"volatility":"unknown"},"price":8.8639,"volume":{"bars":191,"last_bar_volume":24946.0,"baseline_avg":38472.25,"bar_rvol":0.648415,"raw_accel":-0.311834,"smooth_accel":-0.372943,"accel_momentum":-0.112047,"rvol_3bar":[1.379891,0.898817,0.648415],"trend_3bar":"DECELERATING","projected_rvol":0.265696},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":4018.0,"sell_vol":1346.0,"unclassified_vol":0.0,"imbalance":0.498136,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":3.039897},"context":{"vwap":8.774866,"price_vs_vwap_pct":1.01465,"ema9":8.860171,"ema20":8.869341,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.85123,"dist_to_hod_atr":3.152191,"atr":0.024142,"spread_atr":0.414217,"own_change_pct":-0.338028,"rel_strength_pct":{"SPY":-0.282359,"IWM":-0.245395}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.322999},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a9317767ddcf","ts":"2026-09-21T16:41:21.745658+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8488,"vwap":8.7749,"ext_from_open_pct":3.86,"max_ext_allowed_pct":4.0,"volume_pace":0.539,"trend":"flat","recent_slope_pct":-0.0563,"volatility":"unknown"},"price":8.8488,"volume":{"bars":191,"last_bar_volume":24946.0,"baseline_avg":38472.25,"bar_rvol":0.648415,"raw_accel":-0.311834,"smooth_accel":-0.372943,"accel_momentum":-0.112047,"rvol_3bar":[1.379891,0.898817,0.648415],"trend_3bar":"DECELERATING","projected_rvol":0.4382},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":6468.0,"sell_vol":1211.0,"unclassified_vol":0.0,"imbalance":0.684594,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.967836},"context":{"vwap":8.774866,"price_vs_vwap_pct":0.842567,"ema9":8.860171,"ema20":8.869341,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.020134,"dist_to_hod_atr":3.777659,"atr":0.024142,"spread_atr":0.414217,"own_change_pct":-0.338028,"rel_strength_pct":{"SPY":-0.282359,"IWM":-0.245395}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.443902},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f453e522aa59","ts":"2026-09-21T16:41:26.884417+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.7145,"target":8.88,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":87.5,"room_to_5d_high_atr":0.21},"price":8.8234,"vwap":8.6887,"ext_from_open_pct":1.19,"max_ext_allowed_pct":3.0,"volume_pace":0.706,"trend":"flat","recent_slope_pct":-0.0165,"volatility":"medium"},"price":8.8234,"volume":{"bars":191,"last_bar_volume":2155.0,"baseline_avg":8301.1,"bar_rvol":0.259604,"raw_accel":-0.720493,"smooth_accel":-0.268964,"accel_momentum":-3.660667,"rvol_3bar":[0.881234,0.908245,0.259604],"trend_3bar":"MIXED","projected_rvol":1.831965},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":4063.0,"sell_vol":2851.0,"unclassified_vol":0.0,"imbalance":0.175296,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.938205},"context":{"vwap":8.688416,"price_vs_vwap_pct":1.553613,"ema9":8.843983,"ema20":8.84069,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.762808,"dist_to_hod_atr":11.535512,"atr":0.021733,"spread_atr":0.460132,"own_change_pct":-0.054245,"rel_strength_pct":{"SPY":0.001424,"IWM":0.038388}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.045508},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"194e5d820a79","ts":"2026-09-21T16:41:32.005625+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7329,"target":9.3,"target_label":"premarket_high","reward_risk":4.21,"pos_in_5d_range_pct":90.0,"room_to_5d_high_atr":0.17},"price":8.8418,"vwap":8.6887,"ext_from_open_pct":1.4,"max_ext_allowed_pct":3.0,"volume_pace":0.706,"trend":"flat","recent_slope_pct":0.0251,"volatility":"medium"},"price":8.8418,"volume":{"bars":191,"last_bar_volume":2155.0,"baseline_avg":8301.1,"bar_rvol":0.259604,"raw_accel":-0.720493,"smooth_accel":-0.268964,"accel_momentum":-3.660667,"rvol_3bar":[0.881234,0.908245,0.259604],"trend_3bar":"MIXED","projected_rvol":1.542672},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":2876.0,"sell_vol":2847.0,"unclassified_vol":0.0,"imbalance":0.005067,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":1.617958},"context":{"vwap":8.688416,"price_vs_vwap_pct":1.765389,"ema9":8.843983,"ema20":8.84069,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.560034,"dist_to_hod_atr":10.688869,"atr":0.021733,"spread_atr":0.460132,"own_change_pct":-0.054245,"rel_strength_pct":{"SPY":0.001424,"IWM":0.038388}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.001315},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cea09ddd73ae","ts":"2026-09-21T16:41:32.005625+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.775,"target":8.94,"target_label":"ceiling","reward_risk":0.86,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8636,"vwap":8.7749,"ext_from_open_pct":4.03,"max_ext_allowed_pct":3.0,"volume_pace":0.539,"trend":"flat","recent_slope_pct":-0.0228,"volatility":"unknown"},"price":8.8636,"volume":{"bars":191,"last_bar_volume":24946.0,"baseline_avg":38472.25,"bar_rvol":0.648415,"raw_accel":-0.311834,"smooth_accel":-0.372943,"accel_momentum":-0.112047,"rvol_3bar":[1.379891,0.898817,0.648415],"trend_3bar":"DECELERATING","projected_rvol":0.314392},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":5015.0,"sell_vol":1436.0,"unclassified_vol":0.0,"imbalance":0.554798,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.113289},"context":{"vwap":8.774866,"price_vs_vwap_pct":1.011231,"ema9":8.860171,"ema20":8.869341,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.854586,"dist_to_hod_atr":3.164618,"atr":0.024142,"spread_atr":0.414217,"own_change_pct":-0.338028,"rel_strength_pct":{"SPY":-0.282359,"IWM":-0.245395}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.359739},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"2b9db183ffd0","ts":"2026-09-21T16:41:42.211623+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.7112,"target":8.88,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.22},"price":8.8201,"vwap":8.6887,"ext_from_open_pct":1.15,"max_ext_allowed_pct":4.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":-0.024,"volatility":"medium"},"price":8.8201,"volume":{"bars":191,"last_bar_volume":2155.0,"baseline_avg":8301.1,"bar_rvol":0.259604,"raw_accel":-0.720493,"smooth_accel":-0.268964,"accel_momentum":-3.660667,"rvol_3bar":[0.881234,0.908245,0.259604],"trend_3bar":"MIXED","projected_rvol":1.17773},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2722.0,"sell_vol":2777.0,"unclassified_vol":0.0,"imbalance":-0.010002,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":2.959177},"context":{"vwap":8.688416,"price_vs_vwap_pct":1.515631,"ema9":8.843983,"ema20":8.84069,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.799176,"dist_to_hod_atr":11.687356,"atr":0.021733,"spread_atr":0.460132,"own_change_pct":-0.054245,"rel_strength_pct":{"SPY":0.001424,"IWM":0.038388}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.002597},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0becc3ce019d","ts":"2026-09-21T16:41:47.299951+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.7103,"target":8.88,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":86.9,"room_to_5d_high_atr":0.22},"price":8.8192,"vwap":8.6887,"ext_from_open_pct":1.14,"max_ext_allowed_pct":3.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":-0.026,"volatility":"medium"},"price":8.8192,"volume":{"bars":191,"last_bar_volume":2155.0,"baseline_avg":8301.1,"bar_rvol":0.259604,"raw_accel":-0.720493,"smooth_accel":-0.268964,"accel_momentum":-3.660667,"rvol_3bar":[0.881234,0.908245,0.259604],"trend_3bar":"MIXED","projected_rvol":1.051188},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1819.0,"sell_vol":254.0,"unclassified_vol":0.0,"imbalance":0.754945,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":1.76761},"context":{"vwap":8.688416,"price_vs_vwap_pct":1.505272,"ema9":8.843983,"ema20":8.84069,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.809094,"dist_to_hod_atr":11.728768,"atr":0.021733,"spread_atr":0.460132,"own_change_pct":-0.054245,"rel_strength_pct":{"SPY":0.001424,"IWM":0.038388}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.195987},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d9923e01f349","ts":"2026-09-21T16:41:52.404054+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.2s / 18s","plan":{"state":"PASS","setup":"","stop":9.6272,"target":11.45,"target_label":"range_20d_high","reward_risk":17.51,"pos_in_5d_range_pct":113.9,"room_to_5d_high_atr":-0.14},"price":9.7257,"vwap":9.6866,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.634,"trend":"flat","recent_slope_pct":-0.0088,"volatility":"medium"},"price":9.7257,"volume":{"bars":191,"last_bar_volume":1190.0,"baseline_avg":4811.7,"bar_rvol":0.247314,"raw_accel":-0.865734,"smooth_accel":-0.311938,"accel_momentum":0.055752,"rvol_3bar":[1.663024,2.015395,0.247314],"trend_3bar":"MIXED","projected_rvol":0.251276},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":255.0,"sell_vol":701.0,"unclassified_vol":0.0,"imbalance":-0.466527,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":6.756909},"context":{"vwap":9.686551,"price_vs_vwap_pct":0.404162,"ema9":9.721356,"ema20":9.72028,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.061038,"dist_to_hod_atr":6.598663,"atr":0.015806,"spread_atr":0.632662,"own_change_pct":-0.154162,"rel_strength_pct":{"SPY":-0.098493,"IWM":-0.061529}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.115379},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d63187d092f9","ts":"2026-09-21T16:41:57.511876+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7327,"target":9.3,"target_label":"premarket_high","reward_risk":4.21,"pos_in_5d_range_pct":89.9,"room_to_5d_high_atr":0.17},"price":8.8416,"vwap":8.6887,"ext_from_open_pct":1.39,"max_ext_allowed_pct":3.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":0.0247,"volatility":"medium"},"price":8.8416,"volume":{"bars":191,"last_bar_volume":2155.0,"baseline_avg":8301.1,"bar_rvol":0.259604,"raw_accel":-0.720493,"smooth_accel":-0.268964,"accel_momentum":-3.660667,"rvol_3bar":[0.881234,0.908245,0.259604],"trend_3bar":"MIXED","projected_rvol":0.963194},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":102.0,"sell_vol":748.0,"unclassified_vol":0.0,"imbalance":-0.76,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":2.83019},"context":{"vwap":8.688416,"price_vs_vwap_pct":1.763087,"ema9":8.843983,"ema20":8.84069,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.562238,"dist_to_hod_atr":10.698072,"atr":0.021733,"spread_atr":0.460132,"own_change_pct":-0.054245,"rel_strength_pct":{"SPY":0.001424,"IWM":0.038388}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.197299},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"620eee9795b2","ts":"2026-09-21T16:41:57.511876+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.3s / 18s","plan":{"state":"WATCH","setup":"","stop":9.615,"target":9.74,"target_label":"premarket_high","reward_risk":0.27,"pos_in_5d_range_pct":110.9,"room_to_5d_high_atr":-0.11},"price":9.7135,"vwap":9.6866,"ext_from_open_pct":0.24,"max_ext_allowed_pct":4.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":-0.034,"volatility":"medium"},"price":9.7135,"volume":{"bars":191,"last_bar_volume":1190.0,"baseline_avg":4811.7,"bar_rvol":0.247314,"raw_accel":-0.865734,"smooth_accel":-0.311938,"accel_momentum":0.055752,"rvol_3bar":[1.663024,2.015395,0.247314],"trend_3bar":"MIXED","projected_rvol":0.236765},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":255.0,"sell_vol":737.0,"unclassified_vol":0.0,"imbalance":-0.485887,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":2.471319},"context":{"vwap":9.686551,"price_vs_vwap_pct":0.278214,"ema9":9.721356,"ema20":9.72028,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.185148,"dist_to_hod_atr":7.370511,"atr":0.015806,"spread_atr":0.632662,"own_change_pct":-0.154162,"rel_strength_pct":{"SPY":-0.098493,"IWM":-0.061529}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.120167},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0e59a09d971e","ts":"2026-09-21T16:42:02.588452+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.2% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.1081,"target":9.26,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":311.8,"room_to_5d_high_atr":-4.6},"price":9.225,"vwap":9.1792,"ext_from_open_pct":6.16,"max_ext_allowed_pct":4.0,"volume_pace":7.254,"trend":"flat","recent_slope_pct":0.0896,"volatility":"medium"},"price":9.225,"volume":{"bars":192,"last_bar_volume":26269.0,"baseline_avg":38610.65,"bar_rvol":0.680356,"raw_accel":0.152048,"smooth_accel":-0.372418,"accel_momentum":-0.45492,"rvol_3bar":[0.499187,0.576031,0.680356],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":3767.0,"sell_vol":5219.0,"unclassified_vol":0.0,"imbalance":-0.161585,"bid":9.22,"ask":9.23,"spread_pct":0.108401,"quote_size_imbalance":null,"quote_age_s":1.1422},"context":{"vwap":9.179248,"price_vs_vwap_pct":0.498425,"ema9":9.216312,"ema20":9.220346,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.304979,"dist_to_hod_atr":8.631169,"atr":0.048082,"spread_atr":0.20798,"own_change_pct":0.161779,"rel_strength_pct":{"SPY":0.217447,"IWM":0.243925}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.109935},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aa3540117826","ts":"2026-09-21T16:42:02.588452+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.7107,"target":8.88,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":86.9,"room_to_5d_high_atr":0.22},"price":8.8196,"vwap":8.6887,"ext_from_open_pct":1.14,"max_ext_allowed_pct":3.0,"volume_pace":0.704,"trend":"flat","recent_slope_pct":-0.0834,"volatility":"medium"},"price":8.8196,"volume":{"bars":192,"last_bar_volume":8064.0,"baseline_avg":8174.7,"bar_rvol":0.986458,"raw_accel":2.741995,"smooth_accel":-0.336356,"accel_momentum":-0.067392,"rvol_3bar":[0.908245,0.259604,0.986458],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":86.0,"sell_vol":1152.0,"unclassified_vol":0.0,"imbalance":-0.861066,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":4.008607},"context":{"vwap":8.688706,"price_vs_vwap_pct":1.506482,"ema9":8.839186,"ema20":8.838719,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.804686,"dist_to_hod_atr":11.440863,"atr":0.022245,"spread_atr":0.449543,"own_change_pct":-0.451467,"rel_strength_pct":{"SPY":-0.395799,"IWM":-0.369321}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.849406},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"44f9ec2a614c","ts":"2026-09-21T16:42:07.708016+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7714,"target":8.94,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.86,"vwap":8.775,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.538,"trend":"flat","recent_slope_pct":0.0396,"volatility":"unknown"},"price":8.86,"volume":{"bars":192,"last_bar_volume":22627.0,"baseline_avg":38714.75,"bar_rvol":0.584454,"raw_accel":-0.092961,"smooth_accel":-0.504554,"accel_momentum":-0.131611,"rvol_3bar":[0.898817,0.648415,0.584454],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":11817.0,"sell_vol":4644.0,"unclassified_vol":0.0,"imbalance":0.435757,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":3.536572},"context":{"vwap":8.774967,"price_vs_vwap_pct":0.969035,"ema9":8.858137,"ema20":8.867499,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.894855,"dist_to_hod_atr":3.313167,"atr":0.024146,"spread_atr":0.414146,"own_change_pct":-0.246847,"rel_strength_pct":{"SPY":-0.191178,"IWM":-0.1647}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.25468},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"62f8f93d10c5","ts":"2026-09-21T16:42:12.769763+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6272,"target":11.45,"target_label":"range_20d_high","reward_risk":17.51,"pos_in_5d_range_pct":113.9,"room_to_5d_high_atr":-0.14},"price":9.7257,"vwap":9.6866,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":-0.0044,"volatility":"medium"},"price":9.7257,"volume":{"bars":192,"last_bar_volume":1093.0,"baseline_avg":4783.65,"bar_rvol":0.228487,"raw_accel":-0.086054,"smooth_accel":-0.56194,"accel_momentum":-0.250002,"rvol_3bar":[2.015395,0.247314,0.228487],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":182.0,"sell_vol":357.0,"unclassified_vol":0.0,"imbalance":-0.324675,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":12.768509},"context":{"vwap":9.686567,"price_vs_vwap_pct":0.403992,"ema9":9.720085,"ema20":9.719777,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.061038,"dist_to_hod_atr":6.598849,"atr":0.015806,"spread_atr":0.63268,"own_change_pct":-0.102828,"rel_strength_pct":{"SPY":-0.047159,"IWM":-0.020681}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.074184},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"997b76f51c80","ts":"2026-09-21T16:42:17.873083+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.6165,"target":9.74,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":111.2,"room_to_5d_high_atr":-0.11},"price":9.715,"vwap":9.6866,"ext_from_open_pct":0.26,"max_ext_allowed_pct":4.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":-0.0264,"volatility":"medium"},"price":9.715,"volume":{"bars":192,"last_bar_volume":1093.0,"baseline_avg":4783.65,"bar_rvol":0.228487,"raw_accel":-0.086054,"smooth_accel":-0.56194,"accel_momentum":-0.250002,"rvol_3bar":[2.015395,0.247314,0.228487],"trend_3bar":"DECELERATING","projected_rvol":0.456148},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":182.0,"sell_vol":959.0,"unclassified_vol":0.0,"imbalance":-0.680982,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":17.871829},"context":{"vwap":9.686567,"price_vs_vwap_pct":0.29353,"ema9":9.720085,"ema20":9.719777,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.169888,"dist_to_hod_atr":7.275816,"atr":0.015806,"spread_atr":0.63268,"own_change_pct":-0.102828,"rel_strength_pct":{"SPY":-0.047159,"IWM":-0.020681}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.155595},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"8b0718b25afb","ts":"2026-09-21T16:42:17.873083+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7744,"target":8.94,"target_label":"ceiling","reward_risk":0.87,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.863,"vwap":8.775,"ext_from_open_pct":4.03,"max_ext_allowed_pct":4.0,"volume_pace":0.537,"trend":"flat","recent_slope_pct":0.0463,"volatility":"unknown"},"price":8.863,"volume":{"bars":192,"last_bar_volume":22627.0,"baseline_avg":38714.75,"bar_rvol":0.584454,"raw_accel":-0.092961,"smooth_accel":-0.504554,"accel_momentum":-0.131611,"rvol_3bar":[0.898817,0.648415,0.584454],"trend_3bar":"DECELERATING","projected_rvol":0.147149},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":12007.0,"sell_vol":2983.0,"unclassified_vol":0.0,"imbalance":0.602001,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":3.508324},"context":{"vwap":8.774967,"price_vs_vwap_pct":1.003223,"ema9":8.858137,"ema20":8.867499,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.861298,"dist_to_hod_atr":3.188923,"atr":0.024146,"spread_atr":0.414146,"own_change_pct":-0.246847,"rel_strength_pct":{"SPY":-0.191178,"IWM":-0.1647}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.351842},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"9e7da37b3dfe","ts":"2026-09-21T16:42:38.290915+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6267,"target":11.45,"target_label":"range_20d_high","reward_risk":17.51,"pos_in_5d_range_pct":113.8,"room_to_5d_high_atr":-0.14},"price":9.7252,"vwap":9.6866,"ext_from_open_pct":0.36,"max_ext_allowed_pct":4.0,"volume_pace":0.631,"trend":"flat","recent_slope_pct":-0.0055,"volatility":"medium"},"price":9.7252,"volume":{"bars":192,"last_bar_volume":1093.0,"baseline_avg":4783.65,"bar_rvol":0.228487,"raw_accel":-0.086054,"smooth_accel":-0.56194,"accel_momentum":-0.250002,"rvol_3bar":[2.015395,0.247314,0.228487],"trend_3bar":"DECELERATING","projected_rvol":0.253207},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":103.0,"sell_vol":624.0,"unclassified_vol":0.0,"imbalance":-0.716644,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":1.206778},"context":{"vwap":9.686567,"price_vs_vwap_pct":0.39883,"ema9":9.720085,"ema20":9.719777,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.066124,"dist_to_hod_atr":6.630483,"atr":0.015806,"spread_atr":0.63268,"own_change_pct":-0.102828,"rel_strength_pct":{"SPY":-0.047159,"IWM":-0.020681}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.163744},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"67e2200cc0ad","ts":"2026-09-21T16:42:48.524544+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":13.0282,"target":13.65,"target_label":"premarket_high","reward_risk":0.59,"pos_in_5d_range_pct":161.2,"room_to_5d_high_atr":-1.83},"price":13.42,"vwap":12.8832,"ext_from_open_pct":3.15,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.3002,"volatility":"high"},"price":13.42,"volume":{"bars":192,"last_bar_volume":11258.0,"baseline_avg":21380.5,"bar_rvol":0.526555,"raw_accel":0.74868,"smooth_accel":-0.190967,"accel_momentum":-0.565091,"rvol_3bar":[0.282894,0.303151,0.526555],"trend_3bar":"ACCELERATING","projected_rvol":1.029765},"flow":{"window_s":30,"trades":176,"trade_rate":5.866667,"buy_vol":11917.0,"sell_vol":5233.0,"unclassified_vol":0.0,"imbalance":0.389738,"bid":13.38,"ask":13.44,"spread_pct":0.447427,"quote_size_imbalance":null,"quote_age_s":0.249749},"context":{"vwap":12.881205,"price_vs_vwap_pct":4.182796,"ema9":13.305447,"ema20":13.27015,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.753623,"dist_to_hod_atr":3.624129,"atr":0.104853,"spread_atr":0.572231,"own_change_pct":0.375657,"rel_strength_pct":{"SPY":0.431326,"IWM":0.457804}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.205218},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"21f0e4f75d8b","ts":"2026-09-21T16:42:53.624457+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.6165,"target":9.74,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":111.2,"room_to_5d_high_atr":-0.11},"price":9.715,"vwap":9.6866,"ext_from_open_pct":0.26,"max_ext_allowed_pct":4.0,"volume_pace":0.631,"trend":"flat","recent_slope_pct":-0.0264,"volatility":"medium"},"price":9.715,"volume":{"bars":192,"last_bar_volume":1093.0,"baseline_avg":4783.65,"bar_rvol":0.228487,"raw_accel":-0.086054,"smooth_accel":-0.56194,"accel_momentum":-0.250002,"rvol_3bar":[2.015395,0.247314,0.228487],"trend_3bar":"DECELERATING","projected_rvol":0.181038},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":102.0,"sell_vol":22.0,"unclassified_vol":0.0,"imbalance":0.645161,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":2.653519},"context":{"vwap":9.686567,"price_vs_vwap_pct":0.29353,"ema9":9.720085,"ema20":9.719777,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.169888,"dist_to_hod_atr":7.275816,"atr":0.015806,"spread_atr":0.63268,"own_change_pct":-0.102828,"rel_strength_pct":{"SPY":-0.047159,"IWM":-0.020681}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.147411},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b2b958bc0929","ts":"2026-09-21T16:42:53.624457+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7714,"target":8.94,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.86,"vwap":8.775,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.536,"trend":"flat","recent_slope_pct":0.0396,"volatility":"unknown"},"price":8.86,"volume":{"bars":192,"last_bar_volume":22627.0,"baseline_avg":38714.75,"bar_rvol":0.584454,"raw_accel":-0.092961,"smooth_accel":-0.504554,"accel_momentum":-0.131611,"rvol_3bar":[0.898817,0.648415,0.584454],"trend_3bar":"DECELERATING","projected_rvol":0.141268},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1041.0,"sell_vol":480.0,"unclassified_vol":0.0,"imbalance":0.368836,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.443098},"context":{"vwap":8.774967,"price_vs_vwap_pct":0.969035,"ema9":8.858137,"ema20":8.867499,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.894855,"dist_to_hod_atr":3.313167,"atr":0.024146,"spread_atr":0.414146,"own_change_pct":-0.246847,"rel_strength_pct":{"SPY":-0.191178,"IWM":-0.1647}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.215568},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7879f7d578d4","ts":"2026-09-21T16:42:58.708988+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.9982,"target":13.65,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":160.5,"room_to_5d_high_atr":-1.81},"price":13.39,"vwap":12.8833,"ext_from_open_pct":2.92,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.2553,"volatility":"high"},"price":13.39,"volume":{"bars":192,"last_bar_volume":11258.0,"baseline_avg":21380.5,"bar_rvol":0.526555,"raw_accel":0.74868,"smooth_accel":-0.190967,"accel_momentum":-0.565091,"rvol_3bar":[0.282894,0.303151,0.526555],"trend_3bar":"ACCELERATING","projected_rvol":0.912408},"flow":{"window_s":30,"trades":189,"trade_rate":6.3,"buy_vol":10533.0,"sell_vol":6426.0,"unclassified_vol":0.0,"imbalance":0.242172,"bid":13.38,"ask":13.41,"spread_pct":0.223964,"quote_size_imbalance":null,"quote_age_s":3.64079},"context":{"vwap":12.881205,"price_vs_vwap_pct":3.949899,"ema9":13.305447,"ema20":13.27015,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.971014,"dist_to_hod_atr":3.910244,"atr":0.104853,"spread_atr":0.286115,"own_change_pct":0.375657,"rel_strength_pct":{"SPY":0.431326,"IWM":0.457804}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.127517},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2fb21d6bc559","ts":"2026-09-21T16:43:08.868347+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":13.0182,"target":13.65,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":160.9,"room_to_5d_high_atr":-1.82},"price":13.41,"vwap":12.8836,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.2206,"volatility":"high"},"price":13.41,"volume":{"bars":193,"last_bar_volume":19675.0,"baseline_avg":21434.75,"bar_rvol":0.917902,"raw_accel":0.747646,"smooth_accel":0.35939,"accel_momentum":0.550358,"rvol_3bar":[0.303151,0.526555,0.917902],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":204,"trade_rate":6.8,"buy_vol":11948.0,"sell_vol":7327.0,"unclassified_vol":0.0,"imbalance":0.239741,"bid":13.39,"ask":13.44,"spread_pct":0.372717,"quote_size_imbalance":null,"quote_age_s":0.963532},"context":{"vwap":12.883321,"price_vs_vwap_pct":4.08807,"ema9":13.322358,"ema20":13.281564,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.826087,"dist_to_hod_atr":3.656855,"atr":0.106649,"spread_atr":0.468828,"own_change_pct":0.675935,"rel_strength_pct":{"SPY":0.696006,"IWM":0.716147}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.220058},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"37d6c4a51a20","ts":"2026-09-21T16:43:13.967147+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.9982,"target":13.65,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":160.5,"room_to_5d_high_atr":-1.81},"price":13.39,"vwap":12.8837,"ext_from_open_pct":2.92,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.1907,"volatility":"high"},"price":13.39,"volume":{"bars":193,"last_bar_volume":19675.0,"baseline_avg":21434.75,"bar_rvol":0.917902,"raw_accel":0.747646,"smooth_accel":0.35939,"accel_momentum":0.550358,"rvol_3bar":[0.303151,0.526555,0.917902],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":211,"trade_rate":7.033333,"buy_vol":11365.0,"sell_vol":8056.0,"unclassified_vol":0.0,"imbalance":0.170383,"bid":13.36,"ask":13.42,"spread_pct":0.448096,"quote_size_imbalance":null,"quote_age_s":2.570085},"context":{"vwap":12.883321,"price_vs_vwap_pct":3.932831,"ema9":13.322358,"ema20":13.281564,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.971014,"dist_to_hod_atr":3.844386,"atr":0.106649,"spread_atr":0.562593,"own_change_pct":0.675935,"rel_strength_pct":{"SPY":0.696006,"IWM":0.716147}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.156395},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"498f548b3081","ts":"2026-09-21T16:43:19.061655+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7764,"target":8.94,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.775,"ext_from_open_pct":4.05,"max_ext_allowed_pct":4.0,"volume_pace":0.535,"trend":"flat","recent_slope_pct":0.0621,"volatility":"unknown"},"price":8.865,"volume":{"bars":193,"last_bar_volume":4897.0,"baseline_avg":36952.4,"bar_rvol":0.132522,"raw_accel":-0.783577,"smooth_accel":-0.644741,"accel_momentum":-0.140187,"rvol_3bar":[0.648415,0.584454,0.132522],"trend_3bar":"DECELERATING","projected_rvol":0.813659},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":7277.0,"sell_vol":2878.0,"unclassified_vol":0.0,"imbalance":0.433186,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.13895},"context":{"vwap":8.774991,"price_vs_vwap_pct":1.025741,"ema9":8.85851,"ema20":8.866785,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.838926,"dist_to_hod_atr":3.210037,"atr":0.023364,"spread_atr":0.428005,"own_change_pct":-0.154389,"rel_strength_pct":{"SPY":-0.134318,"IWM":-0.114177}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.057407},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"ee0acca2603e","ts":"2026-09-21T16:43:34.372736+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7211,"target":9.3,"target_label":"premarket_high","reward_risk":4.32,"pos_in_5d_range_pct":88.4,"room_to_5d_high_atr":0.2},"price":8.83,"vwap":8.6888,"ext_from_open_pct":1.26,"max_ext_allowed_pct":3.0,"volume_pace":0.699,"trend":"flat","recent_slope_pct":-0.0499,"volatility":"medium"},"price":8.83,"volume":{"bars":193,"last_bar_volume":1343.0,"baseline_avg":8241.55,"bar_rvol":0.162955,"raw_accel":-0.833457,"smooth_accel":-0.649955,"accel_momentum":-0.313598,"rvol_3bar":[0.259604,0.986458,0.162955],"trend_3bar":"MIXED","projected_rvol":0.216249},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":501.0,"sell_vol":517.0,"unclassified_vol":0.0,"imbalance":-0.015717,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":4.683101},"context":{"vwap":8.688755,"price_vs_vwap_pct":1.625605,"ema9":8.836229,"ema20":8.837356,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.690074,"dist_to_hod_atr":10.996107,"atr":0.022199,"spread_atr":0.450475,"own_change_pct":-0.06342,"rel_strength_pct":{"SPY":-0.043349,"IWM":-0.023208}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.002561},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ad1efe2fcf07","ts":"2026-09-21T16:43:39.439769+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.7154,"target":8.88,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":87.6,"room_to_5d_high_atr":0.21},"price":8.8243,"vwap":8.6888,"ext_from_open_pct":1.2,"max_ext_allowed_pct":3.0,"volume_pace":0.699,"trend":"flat","recent_slope_pct":-0.0628,"volatility":"medium"},"price":8.8243,"volume":{"bars":193,"last_bar_volume":1343.0,"baseline_avg":8241.55,"bar_rvol":0.162955,"raw_accel":-0.833457,"smooth_accel":-0.649955,"accel_momentum":-0.313598,"rvol_3bar":[0.259604,0.986458,0.162955],"trend_3bar":"MIXED","projected_rvol":0.191051},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":501.0,"sell_vol":288.0,"unclassified_vol":0.0,"imbalance":0.269962,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.393277},"context":{"vwap":8.688755,"price_vs_vwap_pct":1.560003,"ema9":8.836229,"ema20":8.837356,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.75289,"dist_to_hod_atr":11.252878,"atr":0.022199,"spread_atr":0.450475,"own_change_pct":-0.06342,"rel_strength_pct":{"SPY":-0.043349,"IWM":-0.023208}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.043992},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"52fa2629ed4f","ts":"2026-09-21T16:43:49.615549+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.7127,"target":8.88,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":87.2,"room_to_5d_high_atr":0.21},"price":8.8216,"vwap":8.6889,"ext_from_open_pct":1.17,"max_ext_allowed_pct":3.0,"volume_pace":0.699,"trend":"flat","recent_slope_pct":-0.069,"volatility":"medium"},"price":8.8216,"volume":{"bars":193,"last_bar_volume":1343.0,"baseline_avg":8241.55,"bar_rvol":0.162955,"raw_accel":-0.833457,"smooth_accel":-0.649955,"accel_momentum":-0.313598,"rvol_3bar":[0.259604,0.986458,0.162955],"trend_3bar":"MIXED","projected_rvol":0.506665},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":877.0,"sell_vol":2211.0,"unclassified_vol":0.0,"imbalance":-0.431995,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.633253},"context":{"vwap":8.688755,"price_vs_vwap_pct":1.528928,"ema9":8.836229,"ema20":8.837356,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.782645,"dist_to_hod_atr":11.374506,"atr":0.022199,"spread_atr":0.450475,"own_change_pct":-0.06342,"rel_strength_pct":{"SPY":-0.043349,"IWM":-0.023208}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.070396},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"80cc1dc97f63","ts":"2026-09-21T16:43:54.691118+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.7061,"target":8.88,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":86.3,"room_to_5d_high_atr":0.23},"price":8.815,"vwap":8.6889,"ext_from_open_pct":1.09,"max_ext_allowed_pct":3.0,"volume_pace":0.699,"trend":"flat","recent_slope_pct":-0.0839,"volatility":"medium"},"price":8.815,"volume":{"bars":193,"last_bar_volume":1343.0,"baseline_avg":8241.55,"bar_rvol":0.162955,"raw_accel":-0.833457,"smooth_accel":-0.649955,"accel_momentum":-0.313598,"rvol_3bar":[0.259604,0.986458,0.162955],"trend_3bar":"MIXED","projected_rvol":0.514488},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":552.0,"sell_vol":2299.0,"unclassified_vol":0.0,"imbalance":-0.612767,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.405805},"context":{"vwap":8.688755,"price_vs_vwap_pct":1.452968,"ema9":8.836229,"ema20":8.837356,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.85538,"dist_to_hod_atr":11.67182,"atr":0.022199,"spread_atr":0.450475,"own_change_pct":-0.06342,"rel_strength_pct":{"SPY":-0.043349,"IWM":-0.023208}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.099853},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2befb0fa9c4a","ts":"2026-09-21T16:43:54.691118+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6242,"target":11.45,"target_label":"range_20d_high","reward_risk":17.54,"pos_in_5d_range_pct":113.2,"room_to_5d_high_atr":-0.13},"price":9.7227,"vwap":9.6867,"ext_from_open_pct":0.34,"max_ext_allowed_pct":4.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":0.004,"volatility":"medium"},"price":9.7227,"volume":{"bars":193,"last_bar_volume":1124.0,"baseline_avg":4655.15,"bar_rvol":0.241453,"raw_accel":-0.034188,"smooth_accel":-0.792547,"accel_momentum":-0.230607,"rvol_3bar":[0.247314,0.228487,0.241453],"trend_3bar":"MIXED","projected_rvol":1.900192},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":966.0,"sell_vol":1414.0,"unclassified_vol":0.0,"imbalance":-0.188235,"bid":9.7,"ask":9.71,"spread_pct":0.10304,"quote_size_imbalance":null,"quote_age_s":0.233629},"context":{"vwap":9.686584,"price_vs_vwap_pct":0.372844,"ema9":9.719048,"ema20":9.719313,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.091556,"dist_to_hod_atr":6.838277,"atr":0.015691,"spread_atr":0.637304,"own_change_pct":-0.103856,"rel_strength_pct":{"SPY":-0.083785,"IWM":-0.063644}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.04545},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f60bc3da4a38","ts":"2026-09-21T16:43:59.751052+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.6065,"target":9.74,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":108.8,"room_to_5d_high_atr":-0.09},"price":9.705,"vwap":9.6867,"ext_from_open_pct":0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":-0.0324,"volatility":"medium"},"price":9.705,"volume":{"bars":193,"last_bar_volume":1124.0,"baseline_avg":4655.15,"bar_rvol":0.241453,"raw_accel":-0.034188,"smooth_accel":-0.792547,"accel_momentum":-0.230607,"rvol_3bar":[0.247314,0.228487,0.241453],"trend_3bar":"MIXED","projected_rvol":1.782419},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":466.0,"sell_vol":1102.0,"unclassified_vol":0.0,"imbalance":-0.405612,"bid":9.7,"ask":9.71,"spread_pct":0.10304,"quote_size_imbalance":null,"quote_age_s":1.038461},"context":{"vwap":9.686584,"price_vs_vwap_pct":0.190117,"ema9":9.719048,"ema20":9.719313,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.271617,"dist_to_hod_atr":7.966306,"atr":0.015691,"spread_atr":0.637304,"own_change_pct":-0.103856,"rel_strength_pct":{"SPY":-0.083785,"IWM":-0.063644}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.097936},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a1fe15409ba1","ts":"2026-09-21T16:44:14.995921+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7715,"target":8.94,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8601,"vwap":8.7752,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.051,"volatility":"unknown"},"price":8.8601,"volume":{"bars":194,"last_bar_volume":32098.0,"baseline_avg":36661.6,"bar_rvol":0.875521,"raw_accel":2.502084,"smooth_accel":-0.482852,"accel_momentum":0.161889,"rvol_3bar":[0.584454,0.132522,0.875521],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1221.0,"sell_vol":362.0,"unclassified_vol":0.0,"imbalance":0.542641,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.073269},"context":{"vwap":8.775156,"price_vs_vwap_pct":0.968001,"ema9":8.859808,"ema20":8.866615,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.893736,"dist_to_hod_atr":3.31501,"atr":0.024102,"spread_atr":0.414895,"own_change_pct":0.226116,"rel_strength_pct":{"SPY":0.230002,"IWM":0.266338}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.475093},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"20eacf5e7d1b","ts":"2026-09-21T16:44:20.137359+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0197,"target":12.29,"target_label":"prev_day_high","reward_risk":0.54,"pos_in_5d_range_pct":63.8,"room_to_5d_high_atr":0.58},"price":12.195,"vwap":12.1709,"ext_from_open_pct":-0.85,"max_ext_allowed_pct":3.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":-0.0379,"volatility":"medium"},"price":12.195,"volume":{"bars":194,"last_bar_volume":94217.0,"baseline_avg":7847.9,"bar_rvol":12.005377,"raw_accel":47.021509,"smooth_accel":8.176716,"accel_momentum":7.312822,"rvol_3bar":[2.511334,0.138752,12.005377],"trend_3bar":"MIXED","projected_rvol":1.120378},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":1795.0,"sell_vol":1243.0,"unclassified_vol":0.0,"imbalance":0.181698,"bid":12.19,"ask":12.2,"spread_pct":0.082001,"quote_size_imbalance":null,"quote_age_s":1.978852},"context":{"vwap":12.170858,"price_vs_vwap_pct":0.198362,"ema9":12.206723,"ema20":12.208463,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.36189,"dist_to_hod_atr":11.896348,"atr":0.024798,"spread_atr":0.403266,"own_change_pct":-0.241417,"rel_strength_pct":{"SPY":-0.237532,"IWM":-0.201196}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":2.181359},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0d0845f2c71d","ts":"2026-09-21T16:44:20.137359+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7615,"target":8.94,"target_label":"ceiling","reward_risk":1.02,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.85,"vwap":8.7752,"ext_from_open_pct":3.87,"max_ext_allowed_pct":3.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.0282,"volatility":"unknown"},"price":8.85,"volume":{"bars":194,"last_bar_volume":32098.0,"baseline_avg":36661.6,"bar_rvol":0.875521,"raw_accel":2.502084,"smooth_accel":-0.482852,"accel_momentum":0.161889,"rvol_3bar":[0.584454,0.132522,0.875521],"trend_3bar":"MIXED","projected_rvol":1.254992},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":4684.0,"sell_vol":11100.0,"unclassified_vol":0.0,"imbalance":-0.406488,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.129561},"context":{"vwap":8.775156,"price_vs_vwap_pct":0.852903,"ema9":8.859808,"ema20":8.866615,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.006711,"dist_to_hod_atr":3.734054,"atr":0.024102,"spread_atr":0.414895,"own_change_pct":0.226116,"rel_strength_pct":{"SPY":0.230002,"IWM":0.266338}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.355888},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"302cee68112d","ts":"2026-09-21T16:44:30.356680+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.9132,"target":13.65,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":158.7,"room_to_5d_high_atr":-1.75},"price":13.305,"vwap":12.8852,"ext_from_open_pct":2.27,"max_ext_allowed_pct":3.0,"volume_pace":0.654,"trend":"flat","recent_slope_pct":-0.0156,"volatility":"high"},"price":13.305,"volume":{"bars":194,"last_bar_volume":13130.0,"baseline_avg":21333.3,"bar_rvol":0.61547,"raw_accel":-0.332656,"smooth_accel":0.572724,"accel_momentum":0.213333,"rvol_3bar":[0.526555,0.917902,0.61547],"trend_3bar":"MIXED","projected_rvol":0.640387},"flow":{"window_s":30,"trades":98,"trade_rate":3.266667,"buy_vol":1938.0,"sell_vol":4974.0,"unclassified_vol":0.0,"imbalance":-0.439236,"bid":13.28,"ask":13.33,"spread_pct":0.375799,"quote_size_imbalance":null,"quote_age_s":3.608729},"context":{"vwap":12.884586,"price_vs_vwap_pct":3.262926,"ema9":13.321886,"ema20":13.285225,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.586957,"dist_to_hod_atr":4.575655,"atr":0.108181,"spread_atr":0.462187,"own_change_pct":0.566251,"rel_strength_pct":{"SPY":0.570137,"IWM":0.606473}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.270337},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"af471ccc95ff","ts":"2026-09-21T16:44:35.496070+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7255,"target":9.3,"target_label":"premarket_high","reward_risk":4.28,"pos_in_5d_range_pct":89.0,"room_to_5d_high_atr":0.19},"price":8.8344,"vwap":8.6892,"ext_from_open_pct":1.31,"max_ext_allowed_pct":3.0,"volume_pace":0.698,"trend":"flat","recent_slope_pct":-0.0012,"volatility":"medium"},"price":8.8344,"volume":{"bars":194,"last_bar_volume":3933.0,"baseline_avg":7886.0,"bar_rvol":0.498732,"raw_accel":0.994928,"smooth_accel":-0.222792,"accel_momentum":0.427163,"rvol_3bar":[0.986458,0.162955,0.498732],"trend_3bar":"MIXED","projected_rvol":1.866306},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":508.0,"sell_vol":7294.0,"unclassified_vol":0.0,"imbalance":-0.869777,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.266662},"context":{"vwap":8.6889,"price_vs_vwap_pct":1.674553,"ema9":8.836563,"ema20":8.837407,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.641584,"dist_to_hod_atr":10.497242,"atr":0.022835,"spread_atr":0.437933,"own_change_pct":-0.08366,"rel_strength_pct":{"SPY":-0.079775,"IWM":-0.043439}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.433786},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d3bda40c481c","ts":"2026-09-21T16:44:40.588319+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.7085,"target":8.88,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":86.6,"room_to_5d_high_atr":0.22},"price":8.8174,"vwap":8.6892,"ext_from_open_pct":1.12,"max_ext_allowed_pct":3.0,"volume_pace":0.697,"trend":"flat","recent_slope_pct":-0.0398,"volatility":"medium"},"price":8.8174,"volume":{"bars":194,"last_bar_volume":3933.0,"baseline_avg":7886.0,"bar_rvol":0.498732,"raw_accel":0.994928,"smooth_accel":-0.222792,"accel_momentum":0.427163,"rvol_3bar":[0.986458,0.162955,0.498732],"trend_3bar":"MIXED","projected_rvol":1.70264},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":461.0,"sell_vol":7572.0,"unclassified_vol":0.0,"imbalance":-0.885223,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":2.650966},"context":{"vwap":8.6889,"price_vs_vwap_pct":1.478901,"ema9":8.836563,"ema20":8.837407,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.828931,"dist_to_hod_atr":11.241728,"atr":0.022835,"spread_atr":0.437933,"own_change_pct":-0.08366,"rel_strength_pct":{"SPY":-0.079775,"IWM":-0.043439}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.441489},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e310625e9cdd","ts":"2026-09-21T16:44:45.735512+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.9882,"target":13.65,"target_label":"premarket_high","reward_risk":0.69,"pos_in_5d_range_pct":160.3,"room_to_5d_high_atr":-1.8},"price":13.38,"vwap":12.8882,"ext_from_open_pct":2.84,"max_ext_allowed_pct":4.0,"volume_pace":0.658,"trend":"flat","recent_slope_pct":0.0968,"volatility":"high"},"price":13.38,"volume":{"bars":194,"last_bar_volume":13130.0,"baseline_avg":21333.3,"bar_rvol":0.61547,"raw_accel":-0.332656,"smooth_accel":0.572724,"accel_momentum":0.213333,"rvol_3bar":[0.526555,0.917902,0.61547],"trend_3bar":"MIXED","projected_rvol":2.296592},"flow":{"window_s":30,"trades":149,"trade_rate":4.966667,"buy_vol":30368.0,"sell_vol":3746.0,"unclassified_vol":0.0,"imbalance":0.780383,"bid":13.36,"ask":13.41,"spread_pct":0.373552,"quote_size_imbalance":null,"quote_age_s":0.134793},"context":{"vwap":12.884586,"price_vs_vwap_pct":3.845017,"ema9":13.321886,"ema20":13.285225,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.043478,"dist_to_hod_atr":3.882374,"atr":0.108181,"spread_atr":0.462187,"own_change_pct":0.566251,"rel_strength_pct":{"SPY":0.570137,"IWM":0.606473}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.480302},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"70f8cbbe24a8","ts":"2026-09-21T16:44:50.872950+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.5786,"target":9.74,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":105.0,"room_to_5d_high_atr":-0.05},"price":9.69,"vwap":9.6867,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.628,"trend":"flat","recent_slope_pct":-0.0618,"volatility":"medium"},"price":9.69,"volume":{"bars":194,"last_bar_volume":8263.0,"baseline_avg":4646.7,"bar_rvol":1.778251,"raw_accel":6.113005,"smooth_accel":-0.390875,"accel_momentum":0.401672,"rvol_3bar":[0.228487,0.241453,1.778251],"trend_3bar":"ACCELERATING","projected_rvol":0.992168},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":223.0,"sell_vol":121.0,"unclassified_vol":0.0,"imbalance":0.296512,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":1.946157},"context":{"vwap":9.686677,"price_vs_vwap_pct":0.034303,"ema9":9.716238,"ema20":9.717949,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.424212,"dist_to_hod_atr":8.6122,"atr":0.016256,"spread_atr":0.615157,"own_change_pct":-0.205656,"rel_strength_pct":{"SPY":-0.20177,"IWM":-0.165434}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.527272},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"36b517e862b1","ts":"2026-09-21T16:44:50.872950+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.785,"target":11.05,"target_label":"ceiling","reward_risk":0.13,"pos_in_5d_range_pct":103.7,"room_to_5d_high_atr":-0.09},"price":10.905,"vwap":10.857,"ext_from_open_pct":-0.68,"max_ext_allowed_pct":3.0,"volume_pace":0.636,"trend":"flat","recent_slope_pct":-0.0469,"volatility":"medium"},"price":10.905,"volume":{"bars":194,"last_bar_volume":49060.0,"baseline_avg":117914.75,"bar_rvol":0.416063,"raw_accel":0.273459,"smooth_accel":-0.624726,"accel_momentum":-0.073465,"rvol_3bar":[0.317426,0.325782,0.416063],"trend_3bar":"ACCELERATING","projected_rvol":0.58606},"flow":{"window_s":30,"trades":114,"trade_rate":3.8,"buy_vol":10780.0,"sell_vol":12919.0,"unclassified_vol":0.0,"imbalance":-0.090257,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.39165},"context":{"vwap":10.856966,"price_vs_vwap_pct":0.442424,"ema9":10.924769,"ema20":10.934147,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.929044,"dist_to_hod_atr":3.997651,"atr":0.053657,"spread_atr":0.186371,"own_change_pct":-0.1373,"rel_strength_pct":{"SPY":-0.133414,"IWM":-0.097078}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.037553},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ecb87a86b386","ts":"2026-09-21T16:44:56.007117+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.5965,"target":9.74,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":106.3,"room_to_5d_high_atr":-0.06},"price":9.695,"vwap":9.6868,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":-0.0515,"volatility":"medium"},"price":9.695,"volume":{"bars":194,"last_bar_volume":8263.0,"baseline_avg":4646.7,"bar_rvol":1.778251,"raw_accel":6.113005,"smooth_accel":-0.390875,"accel_momentum":0.401672,"rvol_3bar":[0.228487,0.241453,1.778251],"trend_3bar":"ACCELERATING","projected_rvol":2.252926},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":253.0,"sell_vol":5954.0,"unclassified_vol":0.0,"imbalance":-0.918479,"bid":9.69,"ask":9.7,"spread_pct":0.103146,"quote_size_imbalance":null,"quote_age_s":1.311689},"context":{"vwap":9.686677,"price_vs_vwap_pct":0.08592,"ema9":9.716238,"ema20":9.717949,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.373347,"dist_to_hod_atr":8.304621,"atr":0.016256,"spread_atr":0.615157,"own_change_pct":-0.205656,"rel_strength_pct":{"SPY":-0.20177,"IWM":-0.165434}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.633287},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3b943f246bdf","ts":"2026-09-21T16:45:01.139128+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7211,"target":9.3,"target_label":"premarket_high","reward_risk":4.32,"pos_in_5d_range_pct":88.4,"room_to_5d_high_atr":0.2},"price":8.83,"vwap":8.6893,"ext_from_open_pct":1.26,"max_ext_allowed_pct":4.0,"volume_pace":0.697,"trend":"flat","recent_slope_pct":0.0233,"volatility":"medium"},"price":8.83,"volume":{"bars":195,"last_bar_volume":12090.0,"baseline_avg":7974.35,"bar_rvol":1.516111,"raw_accel":2.073989,"smooth_accel":-0.031402,"accel_momentum":0.19139,"rvol_3bar":[0.162955,0.498732,1.516111],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":3145.0,"sell_vol":456.0,"unclassified_vol":0.0,"imbalance":0.746737,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.001356},"context":{"vwap":8.689327,"price_vs_vwap_pct":1.618923,"ema9":8.83425,"ema20":8.836226,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.690074,"dist_to_hod_atr":10.568753,"atr":0.023096,"spread_atr":0.432968,"own_change_pct":-0.19565,"rel_strength_pct":{"SPY":-0.209901,"IWM":-0.192152}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.132136},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1936511e0415","ts":"2026-09-21T16:45:06.221268+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.7099,"target":8.88,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":86.8,"room_to_5d_high_atr":0.22},"price":8.8188,"vwap":8.6893,"ext_from_open_pct":1.13,"max_ext_allowed_pct":4.0,"volume_pace":0.696,"trend":"flat","recent_slope_pct":-0.002,"volatility":"medium"},"price":8.8188,"volume":{"bars":195,"last_bar_volume":12090.0,"baseline_avg":7974.35,"bar_rvol":1.516111,"raw_accel":2.073989,"smooth_accel":-0.031402,"accel_momentum":0.19139,"rvol_3bar":[0.162955,0.498732,1.516111],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2929.0,"sell_vol":190.0,"unclassified_vol":0.0,"imbalance":0.878166,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":3.518101},"context":{"vwap":8.689327,"price_vs_vwap_pct":1.490029,"ema9":8.83425,"ema20":8.836226,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.813502,"dist_to_hod_atr":11.053678,"atr":0.023096,"spread_atr":0.432968,"own_change_pct":-0.19565,"rel_strength_pct":{"SPY":-0.209901,"IWM":-0.192152}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.331397},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"999229801a65","ts":"2026-09-21T16:45:11.327250+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7211,"target":9.3,"target_label":"premarket_high","reward_risk":4.32,"pos_in_5d_range_pct":88.4,"room_to_5d_high_atr":0.2},"price":8.83,"vwap":8.6894,"ext_from_open_pct":1.26,"max_ext_allowed_pct":3.0,"volume_pace":0.697,"trend":"flat","recent_slope_pct":0.0233,"volatility":"medium"},"price":8.83,"volume":{"bars":195,"last_bar_volume":12090.0,"baseline_avg":7974.35,"bar_rvol":1.516111,"raw_accel":2.073989,"smooth_accel":-0.031402,"accel_momentum":0.19139,"rvol_3bar":[0.162955,0.498732,1.516111],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":3746.0,"sell_vol":1367.0,"unclassified_vol":0.0,"imbalance":0.465285,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.738089},"context":{"vwap":8.689327,"price_vs_vwap_pct":1.618923,"ema9":8.83425,"ema20":8.836226,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.690074,"dist_to_hod_atr":10.568753,"atr":0.023096,"spread_atr":0.432968,"own_change_pct":-0.19565,"rel_strength_pct":{"SPY":-0.209901,"IWM":-0.192152}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.705423},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0ea19a07d896","ts":"2026-09-21T16:45:16.410416+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.0247,"target":12.29,"target_label":"prev_day_high","reward_risk":0.51,"pos_in_5d_range_pct":64.3,"room_to_5d_high_atr":0.57},"price":12.2,"vwap":12.1709,"ext_from_open_pct":-0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.725,"trend":"flat","recent_slope_pct":-0.0149,"volatility":"medium"},"price":12.2,"volume":{"bars":195,"last_bar_volume":5004.0,"baseline_avg":12170.6,"bar_rvol":0.411155,"raw_accel":-0.946889,"smooth_accel":2.981591,"accel_momentum":-5.195125,"rvol_3bar":[0.138752,12.005377,0.411155],"trend_3bar":"MIXED","projected_rvol":2.226966},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":5224.0,"sell_vol":3584.0,"unclassified_vol":0.0,"imbalance":0.186194,"bid":12.2,"ask":12.21,"spread_pct":0.081934,"quote_size_imbalance":null,"quote_age_s":0.233947},"context":{"vwap":12.170888,"price_vs_vwap_pct":0.239195,"ema9":12.204739,"ema20":12.207352,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.321857,"dist_to_hod_atr":11.910774,"atr":0.024348,"spread_atr":0.410716,"own_change_pct":-0.145727,"rel_strength_pct":{"SPY":-0.159978,"IWM":-0.142228}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.076555},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"85ab4ee3b992","ts":"2026-09-21T16:45:21.499636+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.7166,"target":8.88,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":87.7,"room_to_5d_high_atr":0.21},"price":8.8255,"vwap":8.6894,"ext_from_open_pct":1.21,"max_ext_allowed_pct":3.0,"volume_pace":0.696,"trend":"flat","recent_slope_pct":0.0131,"volatility":"medium"},"price":8.8255,"volume":{"bars":195,"last_bar_volume":12090.0,"baseline_avg":7974.35,"bar_rvol":1.516111,"raw_accel":2.073989,"smooth_accel":-0.031402,"accel_momentum":0.19139,"rvol_3bar":[0.162955,0.498732,1.516111],"trend_3bar":"ACCELERATING","projected_rvol":0.819269},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":3842.0,"sell_vol":1491.0,"unclassified_vol":0.0,"imbalance":0.44084,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.941406},"context":{"vwap":8.689327,"price_vs_vwap_pct":1.567135,"ema9":8.83425,"ema20":8.836226,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.739666,"dist_to_hod_atr":10.763589,"atr":0.023096,"spread_atr":0.432968,"own_change_pct":-0.19565,"rel_strength_pct":{"SPY":-0.209901,"IWM":-0.192152}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.668362},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1866cc063d57","ts":"2026-09-21T16:45:26.581051+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7311,"target":9.3,"target_label":"premarket_high","reward_risk":4.22,"pos_in_5d_range_pct":89.7,"room_to_5d_high_atr":0.17},"price":8.84,"vwap":8.6894,"ext_from_open_pct":1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.696,"trend":"flat","recent_slope_pct":0.046,"volatility":"medium"},"price":8.84,"volume":{"bars":195,"last_bar_volume":12090.0,"baseline_avg":7974.35,"bar_rvol":1.516111,"raw_accel":2.073989,"smooth_accel":-0.031402,"accel_momentum":0.19139,"rvol_3bar":[0.162955,0.498732,1.516111],"trend_3bar":"ACCELERATING","projected_rvol":0.849473},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":4231.0,"sell_vol":1757.0,"unclassified_vol":0.0,"imbalance":0.41316,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.019812},"context":{"vwap":8.689327,"price_vs_vwap_pct":1.734006,"ema9":8.83425,"ema20":8.836226,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.57987,"dist_to_hod_atr":10.135785,"atr":0.023096,"spread_atr":0.432968,"own_change_pct":-0.19565,"rel_strength_pct":{"SPY":-0.209901,"IWM":-0.192152}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.626396},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6d908390f2af","ts":"2026-09-21T16:45:36.847764+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.9705,"target":13.65,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":159.9,"room_to_5d_high_atr":-1.79},"price":13.3623,"vwap":12.8888,"ext_from_open_pct":2.71,"max_ext_allowed_pct":3.0,"volume_pace":0.656,"trend":"flat","recent_slope_pct":-0.0153,"volatility":"high"},"price":13.3623,"volume":{"bars":195,"last_bar_volume":41219.0,"baseline_avg":20884.8,"bar_rvol":1.973636,"raw_accel":2.139299,"smooth_accel":2.104643,"accel_momentum":1.531919,"rvol_3bar":[0.917902,0.61547,1.973636],"trend_3bar":"MIXED","projected_rvol":0.210276},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":791.0,"sell_vol":1341.0,"unclassified_vol":0.0,"imbalance":-0.257974,"bid":13.33,"ask":13.37,"spread_pct":0.299625,"quote_size_imbalance":null,"quote_age_s":0.697174},"context":{"vwap":12.888503,"price_vs_vwap_pct":3.676122,"ema9":13.330509,"ema20":13.292822,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.171739,"dist_to_hod_atr":4.01466,"atr":0.109025,"spread_atr":0.366887,"own_change_pct":0.413223,"rel_strength_pct":{"SPY":0.398972,"IWM":0.416722}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.509146},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0031527aa9fe","ts":"2026-09-21T16:45:36.847764+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.7108,"target":8.88,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":86.9,"room_to_5d_high_atr":0.22},"price":8.8197,"vwap":8.6894,"ext_from_open_pct":1.14,"max_ext_allowed_pct":3.0,"volume_pace":0.695,"trend":"flat","recent_slope_pct":-0.0,"volatility":"medium"},"price":8.8197,"volume":{"bars":195,"last_bar_volume":12090.0,"baseline_avg":7974.35,"bar_rvol":1.516111,"raw_accel":2.073989,"smooth_accel":-0.031402,"accel_momentum":0.19139,"rvol_3bar":[0.162955,0.498732,1.516111],"trend_3bar":"ACCELERATING","projected_rvol":0.65424},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1437.0,"sell_vol":1731.0,"unclassified_vol":0.0,"imbalance":-0.092803,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":6.05693},"context":{"vwap":8.689327,"price_vs_vwap_pct":1.500386,"ema9":8.83425,"ema20":8.836226,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.803584,"dist_to_hod_atr":11.014711,"atr":0.023096,"spread_atr":0.432968,"own_change_pct":-0.19565,"rel_strength_pct":{"SPY":-0.209901,"IWM":-0.192152}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.1407},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"34fa78e287d1","ts":"2026-09-21T16:45:41.984018+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7261,"target":9.3,"target_label":"premarket_high","reward_risk":4.27,"pos_in_5d_range_pct":89.0,"room_to_5d_high_atr":0.18},"price":8.835,"vwap":8.6894,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.695,"trend":"flat","recent_slope_pct":0.0347,"volatility":"medium"},"price":8.835,"volume":{"bars":195,"last_bar_volume":12090.0,"baseline_avg":7974.35,"bar_rvol":1.516111,"raw_accel":2.073989,"smooth_accel":-0.031402,"accel_momentum":0.19139,"rvol_3bar":[0.162955,0.498732,1.516111],"trend_3bar":"ACCELERATING","projected_rvol":0.596424},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":664.0,"sell_vol":558.0,"unclassified_vol":0.0,"imbalance":0.086743,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":2.398143},"context":{"vwap":8.689327,"price_vs_vwap_pct":1.676465,"ema9":8.83425,"ema20":8.836226,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.634972,"dist_to_hod_atr":10.352269,"atr":0.023096,"spread_atr":0.432968,"own_change_pct":-0.19565,"rel_strength_pct":{"SPY":-0.209901,"IWM":-0.192152}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.131512},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f0b8507b8472","ts":"2026-09-21T16:45:57.390055+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.7183,"target":8.88,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":88.0,"room_to_5d_high_atr":0.2},"price":8.8272,"vwap":8.6895,"ext_from_open_pct":1.23,"max_ext_allowed_pct":3.0,"volume_pace":0.694,"trend":"flat","recent_slope_pct":0.017,"volatility":"medium"},"price":8.8272,"volume":{"bars":195,"last_bar_volume":12090.0,"baseline_avg":7974.35,"bar_rvol":1.516111,"raw_accel":2.073989,"smooth_accel":-0.031402,"accel_momentum":0.19139,"rvol_3bar":[0.162955,0.498732,1.516111],"trend_3bar":"ACCELERATING","projected_rvol":0.482729},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":191.0,"sell_vol":490.0,"unclassified_vol":0.0,"imbalance":-0.43906,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":1.227698},"context":{"vwap":8.689327,"price_vs_vwap_pct":1.586699,"ema9":8.83425,"ema20":8.836226,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.720931,"dist_to_hod_atr":10.689985,"atr":0.023096,"spread_atr":0.432968,"own_change_pct":-0.19565,"rel_strength_pct":{"SPY":-0.209901,"IWM":-0.192152}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.665664},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b51d8b2efa2c","ts":"2026-09-21T16:46:02.528908+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.9332,"target":13.65,"target_label":"premarket_high","reward_risk":0.83,"pos_in_5d_range_pct":159.1,"room_to_5d_high_atr":-1.77},"price":13.325,"vwap":12.8889,"ext_from_open_pct":2.42,"max_ext_allowed_pct":3.0,"volume_pace":0.655,"trend":"flat","recent_slope_pct":-0.0752,"volatility":"high"},"price":13.325,"volume":{"bars":196,"last_bar_volume":3538.0,"baseline_avg":20047.95,"bar_rvol":0.176477,"raw_accel":-0.914166,"smooth_accel":0.548982,"accel_momentum":-1.555661,"rvol_3bar":[0.61547,1.973636,0.176477],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":591.0,"sell_vol":1610.0,"unclassified_vol":0.0,"imbalance":-0.462971,"bid":13.3,"ask":13.35,"spread_pct":0.375235,"quote_size_imbalance":null,"quote_age_s":1.109669},"context":{"vwap":12.888837,"price_vs_vwap_pct":3.384035,"ema9":13.334327,"ema20":13.29823,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.442029,"dist_to_hod_atr":4.501362,"atr":0.105524,"spread_atr":0.473828,"own_change_pct":0.40766,"rel_strength_pct":{"SPY":0.377867,"IWM":0.404161}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.081704},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b0abd540c248","ts":"2026-09-21T16:46:02.528908+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7261,"target":9.3,"target_label":"premarket_high","reward_risk":4.27,"pos_in_5d_range_pct":89.0,"room_to_5d_high_atr":0.18},"price":8.835,"vwap":8.6895,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.694,"trend":"flat","recent_slope_pct":0.0039,"volatility":"medium"},"price":8.835,"volume":{"bars":196,"last_bar_volume":4296.0,"baseline_avg":7940.35,"bar_rvol":0.541034,"raw_accel":-0.644665,"smooth_accel":0.757395,"accel_momentum":0.788797,"rvol_3bar":[0.498732,1.516111,0.541034],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":874.0,"sell_vol":394.0,"unclassified_vol":0.0,"imbalance":0.378549,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":3.554319},"context":{"vwap":8.689479,"price_vs_vwap_pct":1.674685,"ema9":8.83142,"ema20":8.83469,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.634972,"dist_to_hod_atr":10.345755,"atr":0.023111,"spread_atr":0.432696,"own_change_pct":-0.269112,"rel_strength_pct":{"SPY":-0.298905,"IWM":-0.272611}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.204808},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"61b6c77e52c0","ts":"2026-09-21T16:47:04.215293+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.6112,"target":9.74,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":109.9,"room_to_5d_high_atr":-0.1},"price":9.7097,"vwap":9.6871,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":0.0158,"volatility":"medium"},"price":9.7097,"volume":{"bars":197,"last_bar_volume":8284.0,"baseline_avg":6184.4,"bar_rvol":1.339499,"raw_accel":-0.634341,"smooth_accel":2.885115,"accel_momentum":-8.059411,"rvol_3bar":[1.985339,4.279252,1.339499],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":3654.0,"sell_vol":205.0,"unclassified_vol":0.0,"imbalance":0.893755,"bid":9.71,"ask":9.72,"spread_pct":0.102934,"quote_size_imbalance":null,"quote_age_s":0.06163},"context":{"vwap":9.687097,"price_vs_vwap_pct":0.233326,"ema9":9.71175,"ema20":9.715071,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-1.223805,"dist_to_hod_atr":6.930609,"atr":0.017358,"spread_atr":0.57611,"own_change_pct":-0.09367,"rel_strength_pct":{"SPY":-0.127063,"IWM":-0.076177}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.197184},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"38eb85812e7b","ts":"2026-09-21T16:47:50.843806+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":13.028,"target":13.65,"target_label":"premarket_high","reward_risk":0.59,"pos_in_5d_range_pct":161.1,"room_to_5d_high_atr":-1.83},"price":13.4198,"vwap":12.8911,"ext_from_open_pct":3.15,"max_ext_allowed_pct":3.0,"volume_pace":0.651,"trend":"flat","recent_slope_pct":0.1576,"volatility":"high"},"price":13.4198,"volume":{"bars":197,"last_bar_volume":10227.0,"baseline_avg":19294.65,"bar_rvol":0.530043,"raw_accel":1.120173,"smooth_accel":0.24785,"accel_momentum":-0.301132,"rvol_3bar":[1.973636,0.176477,0.530043],"trend_3bar":"MIXED","projected_rvol":0.715953},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":7420.0,"sell_vol":2872.0,"unclassified_vol":0.0,"imbalance":0.441897,"bid":13.39,"ask":13.42,"spread_pct":0.223797,"quote_size_imbalance":null,"quote_age_s":0.712485},"context":{"vwap":12.889812,"price_vs_vwap_pct":4.11168,"ema9":13.342662,"ema20":13.305636,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.755072,"dist_to_hod_atr":3.641247,"atr":0.104415,"spread_atr":0.287316,"own_change_pct":0.11976,"rel_strength_pct":{"SPY":0.086367,"IWM":0.137253}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.234224},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aba0e0dd6b79","ts":"2026-09-21T16:47:55.948204+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":13.004,"target":13.65,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":160.6,"room_to_5d_high_atr":-1.81},"price":13.3958,"vwap":12.8918,"ext_from_open_pct":2.97,"max_ext_allowed_pct":4.0,"volume_pace":0.652,"trend":"flat","recent_slope_pct":0.1217,"volatility":"high"},"price":13.3958,"volume":{"bars":197,"last_bar_volume":10227.0,"baseline_avg":19294.65,"bar_rvol":0.530043,"raw_accel":1.120173,"smooth_accel":0.24785,"accel_momentum":-0.301132,"rvol_3bar":[1.973636,0.176477,0.530043],"trend_3bar":"MIXED","projected_rvol":1.062491},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":5123.0,"sell_vol":9370.0,"unclassified_vol":0.0,"imbalance":-0.293038,"bid":13.39,"ask":13.42,"spread_pct":0.223797,"quote_size_imbalance":null,"quote_age_s":0.562568},"context":{"vwap":12.889812,"price_vs_vwap_pct":3.925487,"ema9":13.342662,"ema20":13.305636,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.928986,"dist_to_hod_atr":3.871099,"atr":0.104415,"spread_atr":0.287316,"own_change_pct":0.11976,"rel_strength_pct":{"SPY":0.086367,"IWM":0.137253}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.155323},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dbb2a0a7cc77","ts":"2026-09-21T16:48:01.096126+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8182,"target":11.05,"target_label":"ceiling","reward_risk":0.13,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.1},"price":10.91,"vwap":10.8567,"ext_from_open_pct":-0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.628,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":10.91,"volume":{"bars":198,"last_bar_volume":61341.0,"baseline_avg":120743.6,"bar_rvol":0.508027,"raw_accel":0.306072,"smooth_accel":-0.033647,"accel_momentum":-0.894977,"rvol_3bar":[0.644406,0.393422,0.508027],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":2160.0,"sell_vol":24325.0,"unclassified_vol":0.0,"imbalance":-0.836889,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.505096},"context":{"vwap":10.856713,"price_vs_vwap_pct":0.490824,"ema9":10.911937,"ema20":10.924014,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.884078,"dist_to_hod_atr":1.894281,"atr":0.110596,"spread_atr":0.090419,"own_change_pct":-0.18315,"rel_strength_pct":{"SPY":-0.203225,"IWM":-0.162162}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.425162},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"403dd664f3cb","ts":"2026-09-21T16:48:21.508812+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":13.0171,"target":13.65,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":160.9,"room_to_5d_high_atr":-1.82},"price":13.4089,"vwap":12.8922,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":0.651,"trend":"flat","recent_slope_pct":0.107,"volatility":"high"},"price":13.4089,"volume":{"bars":198,"last_bar_volume":19450.0,"baseline_avg":17150.1,"bar_rvol":1.134104,"raw_accel":0.901828,"smooth_accel":-0.551294,"accel_momentum":-0.799144,"rvol_3bar":[0.176477,0.530043,1.134104],"trend_3bar":"ACCELERATING","projected_rvol":0.601011},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":1797.0,"sell_vol":9642.0,"unclassified_vol":0.0,"imbalance":-0.685812,"bid":13.38,"ask":13.41,"spread_pct":0.223964,"quote_size_imbalance":null,"quote_age_s":2.657949},"context":{"vwap":12.891864,"price_vs_vwap_pct":4.010562,"ema9":13.355129,"ema20":13.3151,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.834058,"dist_to_hod_atr":3.812177,"atr":0.102592,"spread_atr":0.29242,"own_change_pct":0.112024,"rel_strength_pct":{"SPY":0.091949,"IWM":0.133012}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.777782},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bc2a75e20050","ts":"2026-09-21T16:48:31.689540+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.9951,"target":13.65,"target_label":"premarket_high","reward_risk":0.67,"pos_in_5d_range_pct":160.4,"room_to_5d_high_atr":-1.81},"price":13.3869,"vwap":12.8923,"ext_from_open_pct":2.9,"max_ext_allowed_pct":3.0,"volume_pace":0.651,"trend":"flat","recent_slope_pct":0.0742,"volatility":"high"},"price":13.3869,"volume":{"bars":198,"last_bar_volume":19450.0,"baseline_avg":17150.1,"bar_rvol":1.134104,"raw_accel":0.901828,"smooth_accel":-0.551294,"accel_momentum":-0.799144,"rvol_3bar":[0.176477,0.530043,1.134104],"trend_3bar":"ACCELERATING","projected_rvol":0.449438},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":1829.0,"sell_vol":2242.0,"unclassified_vol":0.0,"imbalance":-0.101449,"bid":13.37,"ask":13.39,"spread_pct":0.149477,"quote_size_imbalance":null,"quote_age_s":1.908303},"context":{"vwap":12.891864,"price_vs_vwap_pct":3.839912,"ema9":13.355129,"ema20":13.3151,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.993478,"dist_to_hod_atr":4.026618,"atr":0.102592,"spread_atr":0.194946,"own_change_pct":0.112024,"rel_strength_pct":{"SPY":0.091949,"IWM":0.133012}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.115054},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0a0d0fc21a89","ts":"2026-09-21T16:49:59.014586+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1331,"target":5.2,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.185,"vwap":5.177,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.845,"trend":"flat","recent_slope_pct":0.047,"volatility":"unknown"},"price":5.185,"volume":{"bars":199,"last_bar_volume":5531.0,"baseline_avg":24670.35,"bar_rvol":0.224196,"raw_accel":-0.103215,"smooth_accel":-0.656929,"accel_momentum":-0.304742,"rvol_3bar":[0.677349,0.049726,0.224196],"trend_3bar":"MIXED","projected_rvol":1.657025},"flow":{"window_s":30,"trades":124,"trade_rate":4.133333,"buy_vol":9844.0,"sell_vol":6742.0,"unclassified_vol":0.0,"imbalance":0.187025,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.049394},"context":{"vwap":5.176982,"price_vs_vwap_pct":0.154869,"ema9":5.166866,"ema20":5.171966,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.169811,"dist_to_hod_atr":7.95939,"atr":0.014448,"spread_atr":0.692121,"own_change_pct":0.164793,"rel_strength_pct":{"SPY":0.147955,"IWM":0.154296}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.04193},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9f43b03153d7","ts":"2026-09-21T16:50:09.490974+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1208,"target":5.2,"target_label":"premarket_high","reward_risk":0.53,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1725,"vwap":5.177,"ext_from_open_pct":-0.53,"max_ext_allowed_pct":3.0,"volume_pace":0.845,"trend":"flat","recent_slope_pct":0.0315,"volatility":"unknown"},"price":5.1725,"volume":{"bars":200,"last_bar_volume":40208.0,"baseline_avg":24716.15,"bar_rvol":1.626791,"raw_accel":5.507162,"smooth_accel":-0.299833,"accel_momentum":0.357096,"rvol_3bar":[0.049726,0.224196,1.626791],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":120,"trade_rate":4.0,"buy_vol":10135.0,"sell_vol":6661.0,"unclassified_vol":0.0,"imbalance":0.206835,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.464784},"context":{"vwap":5.176997,"price_vs_vwap_pct":-0.086861,"ema9":5.170493,"ema20":5.173207,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.40566,"dist_to_hod_atr":8.651254,"atr":0.014738,"spread_atr":0.67853,"own_change_pct":0.47476,"rel_strength_pct":{"SPY":0.444967,"IWM":0.478259}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.336477},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6234ad2a9353","ts":"2026-09-21T16:50:14.667225+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1331,"target":5.2,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.185,"vwap":5.177,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.844,"trend":"flat","recent_slope_pct":0.0798,"volatility":"unknown"},"price":5.185,"volume":{"bars":200,"last_bar_volume":40208.0,"baseline_avg":24716.15,"bar_rvol":1.626791,"raw_accel":5.507162,"smooth_accel":-0.299833,"accel_momentum":0.357096,"rvol_3bar":[0.049726,0.224196,1.626791],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":118,"trade_rate":3.933333,"buy_vol":9435.0,"sell_vol":6801.0,"unclassified_vol":0.0,"imbalance":0.162232,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":3.380182},"context":{"vwap":5.176997,"price_vs_vwap_pct":0.154592,"ema9":5.170493,"ema20":5.173207,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.169811,"dist_to_hod_atr":7.803092,"atr":0.014738,"spread_atr":0.67853,"own_change_pct":0.47476,"rel_strength_pct":{"SPY":0.444967,"IWM":0.478259}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.263918},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dfc922f18b36","ts":"2026-09-21T16:50:30.040247+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1232,"target":5.2,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1749,"vwap":5.177,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.843,"trend":"flat","recent_slope_pct":0.0408,"volatility":"unknown"},"price":5.1749,"volume":{"bars":200,"last_bar_volume":40208.0,"baseline_avg":24716.15,"bar_rvol":1.626791,"raw_accel":5.507162,"smooth_accel":-0.299833,"accel_momentum":0.357096,"rvol_3bar":[0.049726,0.224196,1.626791],"trend_3bar":"ACCELERATING","projected_rvol":0.142873},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":800.0,"sell_vol":968.0,"unclassified_vol":0.0,"imbalance":-0.095023,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.175707},"context":{"vwap":5.176997,"price_vs_vwap_pct":-0.040502,"ema9":5.170493,"ema20":5.173207,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.360377,"dist_to_hod_atr":8.488407,"atr":0.014738,"spread_atr":0.67853,"own_change_pct":0.47476,"rel_strength_pct":{"SPY":0.444967,"IWM":0.478259}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.154582},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9e16ef09bb60","ts":"2026-09-21T16:50:35.172772+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1331,"target":5.2,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.185,"vwap":5.177,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.843,"trend":"flat","recent_slope_pct":0.0798,"volatility":"unknown"},"price":5.185,"volume":{"bars":200,"last_bar_volume":40208.0,"baseline_avg":24716.15,"bar_rvol":1.626791,"raw_accel":5.507162,"smooth_accel":-0.299833,"accel_momentum":0.357096,"rvol_3bar":[0.049726,0.224196,1.626791],"trend_3bar":"ACCELERATING","projected_rvol":0.123405},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":100.0,"sell_vol":878.0,"unclassified_vol":0.0,"imbalance":-0.795501,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.223622},"context":{"vwap":5.176997,"price_vs_vwap_pct":0.154592,"ema9":5.170493,"ema20":5.173207,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.169811,"dist_to_hod_atr":7.803092,"atr":0.014738,"spread_atr":0.67853,"own_change_pct":0.47476,"rel_strength_pct":{"SPY":0.444967,"IWM":0.478259}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.294114},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"411dbc0dfbce","ts":"2026-09-21T16:50:40.296575+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.25,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.1,"vwap":8.0782,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.574,"trend":"flat","recent_slope_pct":-0.0441,"volatility":"high"},"price":8.1,"volume":{"bars":200,"last_bar_volume":5704.0,"baseline_avg":6640.1,"bar_rvol":0.859023,"raw_accel":-0.181048,"smooth_accel":-0.074186,"accel_momentum":0.348345,"rvol_3bar":[0.356101,1.053093,0.859023],"trend_3bar":"MIXED","projected_rvol":0.351829},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":812.0,"sell_vol":437.0,"unclassified_vol":0.0,"imbalance":0.30024,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":1.053133},"context":{"vwap":8.078182,"price_vs_vwap_pct":0.270088,"ema9":8.069,"ema20":8.038112,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.327445,"dist_to_hod_atr":4.368466,"atr":0.063821,"spread_atr":0.156688,"own_change_pct":0.679959,"rel_strength_pct":{"SPY":0.650166,"IWM":0.683458}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.257913},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"af402705c021","ts":"2026-09-21T16:50:45.408835+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":13.0132,"target":13.65,"target_label":"premarket_high","reward_risk":0.63,"pos_in_5d_range_pct":160.8,"room_to_5d_high_atr":-1.82},"price":13.405,"vwap":12.8939,"ext_from_open_pct":3.04,"max_ext_allowed_pct":3.0,"volume_pace":0.646,"trend":"flat","recent_slope_pct":0.0246,"volatility":"high"},"price":13.405,"volume":{"bars":200,"last_bar_volume":2910.0,"baseline_avg":15749.2,"bar_rvol":0.184771,"raw_accel":-0.672923,"smooth_accel":-0.431526,"accel_momentum":-0.097893,"rvol_3bar":[1.134104,0.512801,0.184771],"trend_3bar":"DECELERATING","projected_rvol":0.669843},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":2921.0,"sell_vol":1843.0,"unclassified_vol":0.0,"imbalance":0.22628,"bid":13.4,"ask":13.41,"spread_pct":0.074599,"quote_size_imbalance":null,"quote_age_s":1.557903},"context":{"vwap":12.893038,"price_vs_vwap_pct":3.970839,"ema9":13.364083,"ema20":13.326873,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.862319,"dist_to_hod_atr":4.205758,"atr":0.093919,"spread_atr":0.106475,"own_change_pct":0.112233,"rel_strength_pct":{"SPY":0.082441,"IWM":0.115732}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.04181},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"d29906700e50","ts":"2026-09-21T16:50:45.408835+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.25,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":120.6,"room_to_5d_high_atr":-0.65},"price":8.105,"vwap":8.0782,"ext_from_open_pct":-1.04,"max_ext_allowed_pct":3.0,"volume_pace":0.574,"trend":"flat","recent_slope_pct":-0.0317,"volatility":"high"},"price":8.105,"volume":{"bars":200,"last_bar_volume":5704.0,"baseline_avg":6640.1,"bar_rvol":0.859023,"raw_accel":-0.181048,"smooth_accel":-0.074186,"accel_momentum":0.348345,"rvol_3bar":[0.356101,1.053093,0.859023],"trend_3bar":"MIXED","projected_rvol":0.472209},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1213.0,"sell_vol":840.0,"unclassified_vol":0.0,"imbalance":0.181685,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":0.256209},"context":{"vwap":8.078182,"price_vs_vwap_pct":0.331983,"ema9":8.069,"ema20":8.038112,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.267771,"dist_to_hod_atr":4.290122,"atr":0.063821,"spread_atr":0.156688,"own_change_pct":0.679959,"rel_strength_pct":{"SPY":0.650166,"IWM":0.683458}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.156072},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a018e9c9a0df","ts":"2026-09-21T16:51:05.929831+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.23x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.5861,"target":12.0,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":121.6,"room_to_5d_high_atr":-0.96},"price":11.855,"vwap":11.5747,"ext_from_open_pct":1.59,"max_ext_allowed_pct":4.0,"volume_pace":0.231,"trend":"flat","recent_slope_pct":0.4243,"volatility":"high"},"price":11.855,"volume":{"bars":201,"last_bar_volume":17093.0,"baseline_avg":4396.7,"bar_rvol":3.887688,"raw_accel":-0.512701,"smooth_accel":26.165842,"accel_momentum":22.928571,"rvol_3bar":[5.441203,11.564164,3.887688],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":10206.0,"sell_vol":4368.0,"unclassified_vol":0.0,"imbalance":0.400576,"bid":11.84,"ask":11.88,"spread_pct":0.337268,"quote_size_imbalance":null,"quote_age_s":0.637707},"context":{"vwap":11.574686,"price_vs_vwap_pct":2.421781,"ema9":11.709686,"ema20":11.643959,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.043406,"dist_to_hod_atr":2.03133,"atr":0.061536,"spread_atr":0.650026,"own_change_pct":1.715266,"rel_strength_pct":{"SPY":1.708791,"IWM":1.70302}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.557316},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"909c2184a5a8","ts":"2026-09-21T16:51:05.929831+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.245,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.0995,"vwap":8.0782,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":4.0,"volume_pace":0.573,"trend":"flat","recent_slope_pct":-0.0175,"volatility":"high"},"price":8.0995,"volume":{"bars":201,"last_bar_volume":2447.0,"baseline_avg":6713.4,"bar_rvol":0.364495,"raw_accel":-0.571003,"smooth_accel":-0.023451,"accel_momentum":0.050735,"rvol_3bar":[1.053093,0.859023,0.364495],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":676.0,"sell_vol":413.0,"unclassified_vol":0.0,"imbalance":0.241506,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":4.993086},"context":{"vwap":8.078187,"price_vs_vwap_pct":0.263829,"ema9":8.07508,"ema20":8.043949,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.333413,"dist_to_hod_atr":4.33901,"atr":0.06437,"spread_atr":0.155353,"own_change_pct":0.116193,"rel_strength_pct":{"SPY":0.109718,"IWM":0.103947}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.088028},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"e02b18707337","ts":"2026-09-21T16:51:16.117590+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":13.0082,"target":13.65,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":160.7,"room_to_5d_high_atr":-1.82},"price":13.4,"vwap":12.8952,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":0.646,"trend":"flat","recent_slope_pct":0.0149,"volatility":"high"},"price":13.4,"volume":{"bars":201,"last_bar_volume":14750.0,"baseline_avg":13987.25,"bar_rvol":1.054532,"raw_accel":3.218127,"smooth_accel":-0.200452,"accel_momentum":0.231074,"rvol_3bar":[0.512801,0.184771,1.054532],"trend_3bar":"MIXED","projected_rvol":1.614704},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":1908.0,"sell_vol":10925.0,"unclassified_vol":0.0,"imbalance":-0.702642,"bid":13.38,"ask":13.43,"spread_pct":0.372995,"quote_size_imbalance":null,"quote_age_s":0.838932},"context":{"vwap":12.894582,"price_vs_vwap_pct":3.919616,"ema9":13.373266,"ema20":13.33479,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.898551,"dist_to_hod_atr":4.371771,"atr":0.091496,"spread_atr":0.546471,"own_change_pct":0.452448,"rel_strength_pct":{"SPY":0.445973,"IWM":0.440203}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.740958},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a222eebe34f1","ts":"2026-09-21T16:51:36.450577+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":13.0232,"target":13.65,"target_label":"premarket_high","reward_risk":0.6,"pos_in_5d_range_pct":161.0,"room_to_5d_high_atr":-1.83},"price":13.415,"vwap":12.8958,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":0.645,"trend":"flat","recent_slope_pct":0.0373,"volatility":"high"},"price":13.415,"volume":{"bars":201,"last_bar_volume":14750.0,"baseline_avg":13987.25,"bar_rvol":1.054532,"raw_accel":3.218127,"smooth_accel":-0.200452,"accel_momentum":0.231074,"rvol_3bar":[0.512801,0.184771,1.054532],"trend_3bar":"MIXED","projected_rvol":1.385837},"flow":{"window_s":30,"trades":109,"trade_rate":3.633333,"buy_vol":3431.0,"sell_vol":7140.0,"unclassified_vol":0.0,"imbalance":-0.350866,"bid":13.39,"ask":13.44,"spread_pct":0.372717,"quote_size_imbalance":null,"quote_age_s":0.219423},"context":{"vwap":12.894582,"price_vs_vwap_pct":4.035944,"ema9":13.373266,"ema20":13.33479,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.789855,"dist_to_hod_atr":4.20783,"atr":0.091496,"spread_atr":0.546471,"own_change_pct":0.452448,"rel_strength_pct":{"SPY":0.445973,"IWM":0.440203}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.369999},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5912c173b31c","ts":"2026-09-21T16:51:46.627103+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.9982,"target":13.65,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":160.5,"room_to_5d_high_atr":-1.81},"price":13.39,"vwap":12.8962,"ext_from_open_pct":2.92,"max_ext_allowed_pct":3.0,"volume_pace":0.645,"trend":"flat","recent_slope_pct":0.0,"volatility":"high"},"price":13.39,"volume":{"bars":201,"last_bar_volume":14750.0,"baseline_avg":13987.25,"bar_rvol":1.054532,"raw_accel":3.218127,"smooth_accel":-0.200452,"accel_momentum":0.231074,"rvol_3bar":[0.512801,0.184771,1.054532],"trend_3bar":"MIXED","projected_rvol":1.457991},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":5811.0,"sell_vol":3547.0,"unclassified_vol":0.0,"imbalance":0.241932,"bid":13.39,"ask":13.44,"spread_pct":0.372717,"quote_size_imbalance":null,"quote_age_s":0.671221},"context":{"vwap":12.894582,"price_vs_vwap_pct":3.842064,"ema9":13.373266,"ema20":13.33479,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.971014,"dist_to_hod_atr":4.481066,"atr":0.091496,"spread_atr":0.546471,"own_change_pct":0.452448,"rel_strength_pct":{"SPY":0.445973,"IWM":0.440203}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.255125},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8ca498031910","ts":"2026-09-21T16:51:56.860008+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":13.0267,"target":13.65,"target_label":"premarket_high","reward_risk":0.59,"pos_in_5d_range_pct":161.1,"room_to_5d_high_atr":-1.83},"price":13.4185,"vwap":12.8963,"ext_from_open_pct":3.14,"max_ext_allowed_pct":3.0,"volume_pace":0.645,"trend":"flat","recent_slope_pct":0.0425,"volatility":"high"},"price":13.4185,"volume":{"bars":201,"last_bar_volume":14750.0,"baseline_avg":13987.25,"bar_rvol":1.054532,"raw_accel":3.218127,"smooth_accel":-0.200452,"accel_momentum":0.231074,"rvol_3bar":[0.512801,0.184771,1.054532],"trend_3bar":"MIXED","projected_rvol":1.237623},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":5971.0,"sell_vol":2345.0,"unclassified_vol":0.0,"imbalance":0.436027,"bid":13.39,"ask":13.43,"spread_pct":0.298285,"quote_size_imbalance":null,"quote_age_s":2.068663},"context":{"vwap":12.894582,"price_vs_vwap_pct":4.063087,"ema9":13.373266,"ema20":13.33479,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.764493,"dist_to_hod_atr":4.169577,"atr":0.091496,"spread_atr":0.437177,"own_change_pct":0.452448,"rel_strength_pct":{"SPY":0.445973,"IWM":0.440203}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.459804},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2e274a7248ce","ts":"2026-09-21T16:52:01.948706+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":13.0082,"target":13.65,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":160.7,"room_to_5d_high_atr":-1.82},"price":13.4,"vwap":12.8965,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":0.645,"trend":"flat","recent_slope_pct":0.0586,"volatility":"high"},"price":13.4,"volume":{"bars":202,"last_bar_volume":16405.0,"baseline_avg":11802.0,"bar_rvol":1.390019,"raw_accel":0.112203,"smooth_accel":-0.116892,"accel_momentum":0.083559,"rvol_3bar":[0.184771,1.054532,1.390019],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":6192.0,"sell_vol":3942.0,"unclassified_vol":0.0,"imbalance":0.222025,"bid":13.39,"ask":13.43,"spread_pct":0.298285,"quote_size_imbalance":null,"quote_age_s":3.956939},"context":{"vwap":12.896275,"price_vs_vwap_pct":3.90597,"ema9":13.382313,"ema20":13.342762,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.898551,"dist_to_hod_atr":4.481975,"atr":0.089246,"spread_atr":0.448197,"own_change_pct":0.317733,"rel_strength_pct":{"SPY":0.330397,"IWM":0.32823}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.308619},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4a94e4a949fe","ts":"2026-09-21T16:52:07.093244+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":13.0182,"target":13.65,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":160.9,"room_to_5d_high_atr":-1.82},"price":13.41,"vwap":12.8965,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":0.645,"trend":"flat","recent_slope_pct":0.0735,"volatility":"high"},"price":13.41,"volume":{"bars":202,"last_bar_volume":16405.0,"baseline_avg":11802.0,"bar_rvol":1.390019,"raw_accel":0.112203,"smooth_accel":-0.116892,"accel_momentum":0.083559,"rvol_3bar":[0.184771,1.054532,1.390019],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":3358.0,"sell_vol":3897.0,"unclassified_vol":0.0,"imbalance":-0.074294,"bid":13.39,"ask":13.43,"spread_pct":0.298285,"quote_size_imbalance":null,"quote_age_s":2.94044},"context":{"vwap":12.896275,"price_vs_vwap_pct":3.983511,"ema9":13.382313,"ema20":13.342762,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.826087,"dist_to_hod_atr":4.369926,"atr":0.089246,"spread_atr":0.448197,"own_change_pct":0.317733,"rel_strength_pct":{"SPY":0.330397,"IWM":0.32823}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.103269},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"840984ba38bc","ts":"2026-09-21T16:52:07.093244+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.917,"target":8.2265,"target_label":"ceiling","reward_risk":1.01,"pos_in_5d_range_pct":118.8,"room_to_5d_high_atr":-0.59},"price":8.071,"vwap":8.0782,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":3.0,"volume_pace":0.57,"trend":"flat","recent_slope_pct":-0.0775,"volatility":"high"},"price":8.071,"volume":{"bars":202,"last_bar_volume":1037.0,"baseline_avg":6668.65,"bar_rvol":0.155504,"raw_accel":-0.576216,"smooth_accel":-0.367087,"accel_momentum":-0.343636,"rvol_3bar":[0.859023,0.364495,0.155504],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":125.0,"sell_vol":359.0,"unclassified_vol":0.0,"imbalance":-0.483471,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":3.373584},"context":{"vwap":8.078189,"price_vs_vwap_pct":-0.088993,"ema9":8.080024,"ema20":8.049268,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.673557,"dist_to_hod_atr":4.827674,"atr":0.063757,"spread_atr":0.156845,"own_change_pct":-0.187307,"rel_strength_pct":{"SPY":-0.174643,"IWM":-0.17681}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.075182},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"96c2419f955b","ts":"2026-09-21T16:52:17.290063+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":13.0082,"target":13.65,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":160.7,"room_to_5d_high_atr":-1.82},"price":13.4,"vwap":12.8966,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":0.644,"trend":"flat","recent_slope_pct":0.0586,"volatility":"high"},"price":13.4,"volume":{"bars":202,"last_bar_volume":16405.0,"baseline_avg":11802.0,"bar_rvol":1.390019,"raw_accel":0.112203,"smooth_accel":-0.116892,"accel_momentum":0.083559,"rvol_3bar":[0.184771,1.054532,1.390019],"trend_3bar":"ACCELERATING","projected_rvol":0.981195},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":881.0,"sell_vol":3013.0,"unclassified_vol":0.0,"imbalance":-0.547509,"bid":13.39,"ask":13.41,"spread_pct":0.149254,"quote_size_imbalance":null,"quote_age_s":0.236722},"context":{"vwap":12.896275,"price_vs_vwap_pct":3.90597,"ema9":13.382313,"ema20":13.342762,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.898551,"dist_to_hod_atr":4.481975,"atr":0.089246,"spread_atr":0.224099,"own_change_pct":0.317733,"rel_strength_pct":{"SPY":0.330397,"IWM":0.32823}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.761048},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"77a8a9187a28","ts":"2026-09-21T16:52:32.670504+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.2265,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.0996,"vwap":8.0782,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":4.0,"volume_pace":0.569,"trend":"flat","recent_slope_pct":-0.0068,"volatility":"high"},"price":8.0996,"volume":{"bars":202,"last_bar_volume":1037.0,"baseline_avg":6668.65,"bar_rvol":0.155504,"raw_accel":-0.576216,"smooth_accel":-0.367087,"accel_momentum":-0.343636,"rvol_3bar":[0.859023,0.364495,0.155504],"trend_3bar":"DECELERATING","projected_rvol":0.167165},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":371.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":0.859649,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":3.709131},"context":{"vwap":8.078189,"price_vs_vwap_pct":0.265047,"ema9":8.080024,"ema20":8.049268,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.332219,"dist_to_hod_atr":4.379099,"atr":0.063757,"spread_atr":0.156845,"own_change_pct":-0.187307,"rel_strength_pct":{"SPY":-0.174643,"IWM":-0.17681}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.133679},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"22c99996d530","ts":"2026-09-21T16:52:47.966998+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.2265,"target_label":"ceiling","reward_risk":0.98,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0782,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.569,"trend":"flat","recent_slope_pct":-0.0676,"volatility":"high"},"price":8.075,"volume":{"bars":202,"last_bar_volume":1037.0,"baseline_avg":6668.65,"bar_rvol":0.155504,"raw_accel":-0.576216,"smooth_accel":-0.367087,"accel_momentum":-0.343636,"rvol_3bar":[0.859023,0.364495,0.155504],"trend_3bar":"DECELERATING","projected_rvol":0.237468},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":906.0,"sell_vol":110.0,"unclassified_vol":0.0,"imbalance":0.783465,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":3.582263},"context":{"vwap":8.078189,"price_vs_vwap_pct":-0.039477,"ema9":8.080024,"ema20":8.049268,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":4.764936,"atr":0.063757,"spread_atr":0.156845,"own_change_pct":-0.187307,"rel_strength_pct":{"SPY":-0.174643,"IWM":-0.17681}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.121832},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a8d28759b1b4","ts":"2026-09-21T16:52:47.966998+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1206,"target":5.2,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1723,"vwap":5.177,"ext_from_open_pct":-0.53,"max_ext_allowed_pct":4.0,"volume_pace":0.839,"trend":"flat","recent_slope_pct":0.0224,"volatility":"unknown"},"price":5.1723,"volume":{"bars":202,"last_bar_volume":3104.0,"baseline_avg":26459.25,"bar_rvol":0.117312,"raw_accel":-0.90157,"smooth_accel":2.204204,"accel_momentum":1.17383,"rvol_3bar":[1.626791,1.202903,0.117312],"trend_3bar":"DECELERATING","projected_rvol":0.229331},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":202.0,"sell_vol":3585.0,"unclassified_vol":0.0,"imbalance":-0.893319,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":1.139582},"context":{"vwap":5.17702,"price_vs_vwap_pct":-0.091176,"ema9":5.175715,"ema20":5.175346,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.409434,"dist_to_hod_atr":8.167255,"atr":0.015636,"spread_atr":0.639566,"own_change_pct":0.193237,"rel_strength_pct":{"SPY":0.205901,"IWM":0.203734}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.104797},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b8d0c950647c","ts":"2026-09-21T16:52:53.084037+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1331,"target":5.2,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.185,"vwap":5.177,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.838,"trend":"flat","recent_slope_pct":0.0714,"volatility":"unknown"},"price":5.185,"volume":{"bars":202,"last_bar_volume":3104.0,"baseline_avg":26459.25,"bar_rvol":0.117312,"raw_accel":-0.90157,"smooth_accel":2.204204,"accel_momentum":1.17383,"rvol_3bar":[1.626791,1.202903,0.117312],"trend_3bar":"DECELERATING","projected_rvol":0.207267},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":202.0,"sell_vol":3485.0,"unclassified_vol":0.0,"imbalance":-0.890426,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":2.818643},"context":{"vwap":5.17702,"price_vs_vwap_pct":0.154138,"ema9":5.175715,"ema20":5.175346,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.169811,"dist_to_hod_atr":7.355006,"atr":0.015636,"spread_atr":0.639566,"own_change_pct":0.193237,"rel_strength_pct":{"SPY":0.205901,"IWM":0.203734}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.104458},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ff262e55b4f8","ts":"2026-09-21T16:53:03.326991+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.23x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.5861,"target":12.0,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":120.0,"room_to_5d_high_atr":-0.89},"price":11.7986,"vwap":11.5765,"ext_from_open_pct":1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.23,"trend":"flat","recent_slope_pct":0.0019,"volatility":"high"},"price":11.7986,"volume":{"bars":203,"last_bar_volume":7009.0,"baseline_avg":5610.95,"bar_rvol":1.249165,"raw_accel":-0.223895,"smooth_accel":-0.326319,"accel_momentum":-3.448431,"rvol_3bar":[3.887688,1.735346,1.249165],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":555.0,"sell_vol":345.0,"unclassified_vol":0.0,"imbalance":0.233333,"bid":11.86,"ask":11.88,"spread_pct":0.168492,"quote_size_imbalance":null,"quote_age_s":3.323503},"context":{"vwap":11.57649,"price_vs_vwap_pct":1.91863,"ema9":11.768399,"ema20":11.68544,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.51419,"dist_to_hod_atr":3.068846,"atr":0.05911,"spread_atr":0.338351,"own_change_pct":1.756641,"rel_strength_pct":{"SPY":1.781244,"IWM":1.781133}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.291472},"shadow":{"decision":"FAIL","failed":["vas","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"7bb0d1b72c1c","ts":"2026-09-21T16:53:08.425647+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.23x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.5861,"target":12.0,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":122.0,"room_to_5d_high_atr":-0.98},"price":11.87,"vwap":11.5765,"ext_from_open_pct":1.71,"max_ext_allowed_pct":3.0,"volume_pace":0.23,"trend":"flat","recent_slope_pct":0.1223,"volatility":"high"},"price":11.87,"volume":{"bars":203,"last_bar_volume":7009.0,"baseline_avg":5610.95,"bar_rvol":1.249165,"raw_accel":-0.223895,"smooth_accel":-0.326319,"accel_momentum":-3.448431,"rvol_3bar":[3.887688,1.735346,1.249165],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":257.0,"sell_vol":335.0,"unclassified_vol":0.0,"imbalance":-0.131757,"bid":11.86,"ask":11.88,"spread_pct":0.168492,"quote_size_imbalance":null,"quote_age_s":8.422159},"context":{"vwap":11.57649,"price_vs_vwap_pct":2.535397,"ema9":11.768399,"ema20":11.68544,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-0.918197,"dist_to_hod_atr":1.860932,"atr":0.05911,"spread_atr":0.338351,"own_change_pct":1.756641,"rel_strength_pct":{"SPY":1.781244,"IWM":1.781133}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.164586},"shadow":{"decision":"FAIL","failed":["vas","imbalance","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"e0237f1658f1","ts":"2026-09-21T16:53:23.732132+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0247,"target":12.29,"target_label":"prev_day_high","reward_risk":0.51,"pos_in_5d_range_pct":64.3,"room_to_5d_high_atr":0.57},"price":12.2,"vwap":12.1713,"ext_from_open_pct":-0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.702,"trend":"flat","recent_slope_pct":-0.0368,"volatility":"medium"},"price":12.2,"volume":{"bars":203,"last_bar_volume":2414.0,"baseline_avg":10528.7,"bar_rvol":0.229278,"raw_accel":-0.649383,"smooth_accel":0.450806,"accel_momentum":-0.684695,"rvol_3bar":[0.541476,0.640292,0.229278],"trend_3bar":"MIXED","projected_rvol":0.087166},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":75.0,"sell_vol":788.0,"unclassified_vol":0.0,"imbalance":-0.826188,"bid":12.2,"ask":12.21,"spread_pct":0.081934,"quote_size_imbalance":null,"quote_age_s":1.463464},"context":{"vwap":12.171267,"price_vs_vwap_pct":0.236068,"ema9":12.206907,"ema20":12.207803,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.321857,"dist_to_hod_atr":13.392722,"atr":0.021654,"spread_atr":0.461818,"own_change_pct":-0.121981,"rel_strength_pct":{"SPY":-0.097378,"IWM":-0.097489}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.189427},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fbf8cd8a0763","ts":"2026-09-21T16:53:28.896780+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":13.0182,"target":13.65,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":160.9,"room_to_5d_high_atr":-1.82},"price":13.41,"vwap":12.8985,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":0.643,"trend":"flat","recent_slope_pct":0.0292,"volatility":"high"},"price":13.41,"volume":{"bars":203,"last_bar_volume":14683.0,"baseline_avg":11584.05,"bar_rvol":1.267519,"raw_accel":-0.104968,"smooth_accel":0.466488,"accel_momentum":0.58338,"rvol_3bar":[1.054532,1.390019,1.267519],"trend_3bar":"MIXED","projected_rvol":1.436451},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":6486.0,"sell_vol":1887.0,"unclassified_vol":0.0,"imbalance":0.549265,"bid":13.4,"ask":13.42,"spread_pct":0.149142,"quote_size_imbalance":null,"quote_age_s":2.595392},"context":{"vwap":12.897723,"price_vs_vwap_pct":3.971839,"ema9":13.38367,"ema20":13.347175,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.826087,"dist_to_hod_atr":4.367291,"atr":0.0893,"spread_atr":0.223964,"own_change_pct":-0.118612,"rel_strength_pct":{"SPY":-0.094009,"IWM":-0.094121}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.696204},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ae09b6eae1ca","ts":"2026-09-21T16:53:28.896780+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0397,"target":12.29,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":65.6,"room_to_5d_high_atr":0.55},"price":12.215,"vwap":12.1713,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":4.0,"volume_pace":0.702,"trend":"flat","recent_slope_pct":-0.0122,"volatility":"medium"},"price":12.215,"volume":{"bars":203,"last_bar_volume":2414.0,"baseline_avg":10528.7,"bar_rvol":0.229278,"raw_accel":-0.649383,"smooth_accel":0.450806,"accel_momentum":-0.684695,"rvol_3bar":[0.541476,0.640292,0.229278],"trend_3bar":"MIXED","projected_rvol":0.551002},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":2086.0,"sell_vol":1208.0,"unclassified_vol":0.0,"imbalance":0.266545,"bid":12.21,"ask":12.22,"spread_pct":0.081867,"quote_size_imbalance":null,"quote_age_s":0.651771},"context":{"vwap":12.171267,"price_vs_vwap_pct":0.35931,"ema9":12.206907,"ema20":12.207803,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.201761,"dist_to_hod_atr":12.699995,"atr":0.021654,"spread_atr":0.461818,"own_change_pct":-0.121981,"rel_strength_pct":{"SPY":-0.097378,"IWM":-0.097489}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.061113},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"28972c7592e5","ts":"2026-09-21T16:53:33.976312+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":13.0082,"target":13.65,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":160.7,"room_to_5d_high_atr":-1.82},"price":13.4,"vwap":12.8986,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":0.643,"trend":"flat","recent_slope_pct":0.0143,"volatility":"high"},"price":13.4,"volume":{"bars":203,"last_bar_volume":14683.0,"baseline_avg":11584.05,"bar_rvol":1.267519,"raw_accel":-0.104968,"smooth_accel":0.466488,"accel_momentum":0.58338,"rvol_3bar":[1.054532,1.390019,1.267519],"trend_3bar":"MIXED","projected_rvol":1.258895},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":3875.0,"sell_vol":929.0,"unclassified_vol":0.0,"imbalance":0.613239,"bid":13.4,"ask":13.42,"spread_pct":0.149142,"quote_size_imbalance":null,"quote_age_s":1.572106},"context":{"vwap":12.897723,"price_vs_vwap_pct":3.894306,"ema9":13.38367,"ema20":13.347175,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.898551,"dist_to_hod_atr":4.479273,"atr":0.0893,"spread_atr":0.223964,"own_change_pct":-0.118612,"rel_strength_pct":{"SPY":-0.094009,"IWM":-0.094121}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.777292},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"464e5cdb4223","ts":"2026-09-21T16:53:39.081221+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.2265,"target_label":"ceiling","reward_risk":0.92,"pos_in_5d_range_pct":119.3,"room_to_5d_high_atr":-0.61},"price":8.08,"vwap":8.0782,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.568,"trend":"flat","recent_slope_pct":-0.0792,"volatility":"high"},"price":8.08,"volume":{"bars":203,"last_bar_volume":5649.0,"baseline_avg":6587.45,"bar_rvol":0.85754,"raw_accel":2.430159,"smooth_accel":-0.391661,"accel_momentum":-0.024574,"rvol_3bar":[0.364495,0.155504,0.85754],"trend_3bar":"MIXED","projected_rvol":0.196702},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":318.0,"sell_vol":222.0,"unclassified_vol":0.0,"imbalance":0.177778,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":1.542767},"context":{"vwap":8.078198,"price_vs_vwap_pct":0.022311,"ema9":8.078799,"ema20":8.051614,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.566143,"dist_to_hod_atr":4.871854,"atr":0.061332,"spread_atr":0.163047,"own_change_pct":-0.383714,"rel_strength_pct":{"SPY":-0.359111,"IWM":-0.359222}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.152452},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"33c307c84fef","ts":"2026-09-21T16:53:44.146379+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5698,"target":8.76,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":125.1,"room_to_5d_high_atr":-0.79},"price":8.6717,"vwap":8.6314,"ext_from_open_pct":0.6,"max_ext_allowed_pct":3.0,"volume_pace":0.863,"trend":"flat","recent_slope_pct":-0.0643,"volatility":"medium"},"price":8.6717,"volume":{"bars":203,"last_bar_volume":1950.0,"baseline_avg":2490.65,"bar_rvol":0.782928,"raw_accel":2.131713,"smooth_accel":-0.200334,"accel_momentum":-0.691978,"rvol_3bar":[0.466249,0.058398,0.782928],"trend_3bar":"MIXED","projected_rvol":0.124962},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":1.0,"sell_vol":186.0,"unclassified_vol":0.0,"imbalance":-0.989305,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":29.664811},"context":{"vwap":8.631401,"price_vs_vwap_pct":0.466888,"ema9":8.682232,"ema20":8.676161,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-3.09109,"dist_to_hod_atr":11.722775,"atr":0.023595,"spread_atr":0.423817,"own_change_pct":0.172911,"rel_strength_pct":{"SPY":0.197514,"IWM":0.197402}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.774555},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c1f879993c5d","ts":"2026-09-21T16:53:49.206207+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.2265,"target_label":"ceiling","reward_risk":0.98,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0782,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":3.0,"volume_pace":0.567,"trend":"flat","recent_slope_pct":-0.0916,"volatility":"high"},"price":8.075,"volume":{"bars":203,"last_bar_volume":5649.0,"baseline_avg":6587.45,"bar_rvol":0.85754,"raw_accel":2.430159,"smooth_accel":-0.391661,"accel_momentum":-0.024574,"rvol_3bar":[0.364495,0.155504,0.85754],"trend_3bar":"MIXED","projected_rvol":0.175293},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":405.0,"sell_vol":120.0,"unclassified_vol":0.0,"imbalance":0.542857,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":1.564555},"context":{"vwap":8.078198,"price_vs_vwap_pct":-0.039584,"ema9":8.078799,"ema20":8.051614,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":4.953378,"atr":0.061332,"spread_atr":0.163047,"own_change_pct":-0.383714,"rel_strength_pct":{"SPY":-0.359111,"IWM":-0.359222}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.465522},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"55cebd95e46d","ts":"2026-09-21T16:53:54.297472+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.2265,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":119.8,"room_to_5d_high_atr":-0.62},"price":8.0896,"vwap":8.0782,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":4.0,"volume_pace":0.567,"trend":"flat","recent_slope_pct":-0.0555,"volatility":"high"},"price":8.0896,"volume":{"bars":203,"last_bar_volume":5649.0,"baseline_avg":6587.45,"bar_rvol":0.85754,"raw_accel":2.430159,"smooth_accel":-0.391661,"accel_momentum":-0.024574,"rvol_3bar":[0.364495,0.155504,0.85754],"trend_3bar":"MIXED","projected_rvol":0.175631},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":505.0,"sell_vol":18.0,"unclassified_vol":0.0,"imbalance":0.931166,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":6.65582},"context":{"vwap":8.078198,"price_vs_vwap_pct":0.14115,"ema9":8.078799,"ema20":8.051614,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.451568,"dist_to_hod_atr":4.715329,"atr":0.061332,"spread_atr":0.163047,"own_change_pct":-0.383714,"rel_strength_pct":{"SPY":-0.359111,"IWM":-0.359222}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.798512},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e1755ce431e6","ts":"2026-09-21T16:54:09.622252+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":13.0182,"target":13.65,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":160.9,"room_to_5d_high_atr":-1.82},"price":13.41,"vwap":12.8988,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":0.641,"trend":"flat","recent_slope_pct":-0.0284,"volatility":"high"},"price":13.41,"volume":{"bars":204,"last_bar_volume":9286.0,"baseline_avg":11956.35,"bar_rvol":0.776658,"raw_accel":-0.367568,"smooth_accel":0.520277,"accel_momentum":0.05379,"rvol_3bar":[1.390019,1.267519,0.776658],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1471.0,"sell_vol":682.0,"unclassified_vol":0.0,"imbalance":0.366465,"bid":13.39,"ask":13.43,"spread_pct":0.298285,"quote_size_imbalance":null,"quote_age_s":1.116088},"context":{"vwap":12.898654,"price_vs_vwap_pct":3.96434,"ema9":13.383036,"ema20":13.350349,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.826087,"dist_to_hod_atr":4.514626,"atr":0.086386,"spread_atr":0.463039,"own_change_pct":0.003737,"rel_strength_pct":{"SPY":0.019277,"IWM":0.038723}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.284618},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"118a2659df08","ts":"2026-09-21T16:54:24.807850+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.9583,"target":13.65,"target_label":"premarket_high","reward_risk":0.77,"pos_in_5d_range_pct":159.7,"room_to_5d_high_atr":-1.78},"price":13.3501,"vwap":12.899,"ext_from_open_pct":2.61,"max_ext_allowed_pct":3.0,"volume_pace":0.64,"trend":"flat","recent_slope_pct":-0.1179,"volatility":"high"},"price":13.3501,"volume":{"bars":204,"last_bar_volume":9286.0,"baseline_avg":11956.35,"bar_rvol":0.776658,"raw_accel":-0.367568,"smooth_accel":0.520277,"accel_momentum":0.05379,"rvol_3bar":[1.390019,1.267519,0.776658],"trend_3bar":"DECELERATING","projected_rvol":0.756141},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":1863.0,"sell_vol":1875.0,"unclassified_vol":0.0,"imbalance":-0.00321,"bid":13.35,"ask":13.38,"spread_pct":0.224467,"quote_size_imbalance":null,"quote_age_s":0.380808},"context":{"vwap":12.898654,"price_vs_vwap_pct":3.49995,"ema9":13.383036,"ema20":13.350349,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.260145,"dist_to_hod_atr":5.208026,"atr":0.086386,"spread_atr":0.347279,"own_change_pct":0.003737,"rel_strength_pct":{"SPY":0.019277,"IWM":0.038723}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.002493},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"9512873aa6fa","ts":"2026-09-21T16:54:29.898398+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.364,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.377,"trend":"flat","recent_slope_pct":0.0631,"volatility":"unknown"},"price":6.48,"volume":{"bars":204,"last_bar_volume":83829.0,"baseline_avg":85953.8,"bar_rvol":0.97528,"raw_accel":2.901119,"smooth_accel":-0.515988,"accel_momentum":0.332912,"rvol_3bar":[0.230373,0.110241,0.97528],"trend_3bar":"MIXED","projected_rvol":2.262572},"flow":{"window_s":30,"trades":191,"trade_rate":6.366667,"buy_vol":42575.0,"sell_vol":54334.0,"unclassified_vol":0.0,"imbalance":-0.121341,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.302905},"context":{"vwap":6.363378,"price_vs_vwap_pct":1.832708,"ema9":6.460698,"ema20":6.460997,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.582171,"atr":0.017177,"spread_atr":0.582171,"own_change_pct":0.182804,"rel_strength_pct":{"SPY":0.198344,"IWM":0.21779}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.118341},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"085bfe61f3a0","ts":"2026-09-21T16:54:34.964489+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4054,"target":7.775,"target_label":"range_20d_high","reward_risk":20.17,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4701,"vwap":6.3641,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.378,"trend":"flat","recent_slope_pct":0.0325,"volatility":"unknown"},"price":6.4701,"volume":{"bars":204,"last_bar_volume":83829.0,"baseline_avg":85953.8,"bar_rvol":0.97528,"raw_accel":2.901119,"smooth_accel":-0.515988,"accel_momentum":0.332912,"rvol_3bar":[0.230373,0.110241,0.97528],"trend_3bar":"MIXED","projected_rvol":2.333673},"flow":{"window_s":30,"trades":221,"trade_rate":7.366667,"buy_vol":42628.0,"sell_vol":73505.0,"unclassified_vol":0.0,"imbalance":-0.265876,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.474052},"context":{"vwap":6.363378,"price_vs_vwap_pct":1.677131,"ema9":6.460698,"ema20":6.460997,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.306626,"dist_to_hod_atr":1.15852,"atr":0.017177,"spread_atr":0.582171,"own_change_pct":0.182804,"rel_strength_pct":{"SPY":0.198344,"IWM":0.21779}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.259304},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9d2ccc58f965","ts":"2026-09-21T16:54:50.165312+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.08 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.22,"target_label":"ceiling","reward_risk":0.91,"pos_in_5d_range_pct":119.1,"room_to_5d_high_atr":-0.6},"price":8.0771,"vwap":8.0782,"ext_from_open_pct":-1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.566,"trend":"flat","recent_slope_pct":-0.0673,"volatility":"high"},"price":8.0771,"volume":{"bars":204,"last_bar_volume":3950.0,"baseline_avg":6765.4,"bar_rvol":0.583853,"raw_accel":-0.300761,"smooth_accel":-0.296375,"accel_momentum":0.095286,"rvol_3bar":[0.155504,0.85754,0.583853],"trend_3bar":"MIXED","projected_rvol":0.314153},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":135.0,"sell_vol":402.0,"unclassified_vol":0.0,"imbalance":-0.497207,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":2.331006},"context":{"vwap":8.078208,"price_vs_vwap_pct":-0.013717,"ema9":8.081039,"ema20":8.05527,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.600754,"dist_to_hod_atr":5.168533,"atr":0.058372,"spread_atr":0.171314,"own_change_pct":-0.155506,"rel_strength_pct":{"SPY":-0.139966,"IWM":-0.12052}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.290296},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7d9e656eb263","ts":"2026-09-21T16:54:50.165312+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3641,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.376,"trend":"flat","recent_slope_pct":0.0631,"volatility":"unknown"},"price":6.48,"volume":{"bars":204,"last_bar_volume":83829.0,"baseline_avg":85953.8,"bar_rvol":0.97528,"raw_accel":2.901119,"smooth_accel":-0.515988,"accel_momentum":0.332912,"rvol_3bar":[0.230373,0.110241,0.97528],"trend_3bar":"MIXED","projected_rvol":1.677256},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":21919.0,"sell_vol":34727.0,"unclassified_vol":0.0,"imbalance":-0.226106,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.163708},"context":{"vwap":6.363378,"price_vs_vwap_pct":1.832708,"ema9":6.460698,"ema20":6.460997,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.582171,"atr":0.017177,"spread_atr":0.582171,"own_change_pct":0.182804,"rel_strength_pct":{"SPY":0.198344,"IWM":0.21779}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.220517},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5518846b6538","ts":"2026-09-21T16:54:55.228443+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.22,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.61},"price":8.0838,"vwap":8.0782,"ext_from_open_pct":-1.3,"max_ext_allowed_pct":3.0,"volume_pace":0.566,"trend":"flat","recent_slope_pct":-0.0507,"volatility":"high"},"price":8.0838,"volume":{"bars":204,"last_bar_volume":3950.0,"baseline_avg":6765.4,"bar_rvol":0.583853,"raw_accel":-0.300761,"smooth_accel":-0.296375,"accel_momentum":0.095286,"rvol_3bar":[0.155504,0.85754,0.583853],"trend_3bar":"MIXED","projected_rvol":0.302696},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":233.0,"sell_vol":403.0,"unclassified_vol":0.0,"imbalance":-0.267296,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":4.042715},"context":{"vwap":8.078208,"price_vs_vwap_pct":0.069222,"ema9":8.081039,"ema20":8.05527,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.520791,"dist_to_hod_atr":5.053753,"atr":0.058372,"spread_atr":0.171314,"own_change_pct":-0.155506,"rel_strength_pct":{"SPY":-0.139966,"IWM":-0.12052}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.156061},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"69c6271ed902","ts":"2026-09-21T16:54:55.228443+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3641,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.376,"trend":"flat","recent_slope_pct":0.0476,"volatility":"unknown"},"price":6.475,"volume":{"bars":204,"last_bar_volume":83829.0,"baseline_avg":85953.8,"bar_rvol":0.97528,"raw_accel":2.901119,"smooth_accel":-0.515988,"accel_momentum":0.332912,"rvol_3bar":[0.230373,0.110241,0.97528],"trend_3bar":"MIXED","projected_rvol":1.533591},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":12341.0,"sell_vol":26962.0,"unclassified_vol":0.0,"imbalance":-0.372007,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":2.083016},"context":{"vwap":6.363378,"price_vs_vwap_pct":1.754134,"ema9":6.460698,"ema20":6.460997,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.231125,"dist_to_hod_atr":0.873256,"atr":0.017177,"spread_atr":0.582171,"own_change_pct":0.182804,"rel_strength_pct":{"SPY":0.198344,"IWM":0.21779}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.362811},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b2aa6297f2a1","ts":"2026-09-21T16:55:05.381748+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"held 40.6s, plan says PASS; stop 13.00, target 13.65 (premarket_high), R:R 0.66; R:R 0.66 < 2.0 at 13.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.9977,"target":13.65,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":160.5,"room_to_5d_high_atr":-1.81},"price":13.3895,"vwap":12.8997,"ext_from_open_pct":2.92,"max_ext_allowed_pct":3.0,"volume_pace":0.639,"trend":"flat","recent_slope_pct":-0.052,"volatility":"high"},"price":13.3895,"volume":{"bars":205,"last_bar_volume":8454.0,"baseline_avg":12226.7,"bar_rvol":0.691438,"raw_accel":-0.089597,"smooth_accel":-0.048202,"accel_momentum":-0.568479,"rvol_3bar":[1.267519,0.776658,0.691438],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":3158.0,"sell_vol":1997.0,"unclassified_vol":0.0,"imbalance":0.225218,"bid":13.37,"ask":13.39,"spread_pct":0.149477,"quote_size_imbalance":null,"quote_age_s":1.013599},"context":{"vwap":12.899475,"price_vs_vwap_pct":3.798799,"ema9":13.381909,"ema20":13.352925,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.974638,"dist_to_hod_atr":4.807931,"atr":0.08538,"spread_atr":0.234248,"own_change_pct":-0.019432,"rel_strength_pct":{"SPY":-0.00972,"IWM":0.001562}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.155724},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"afc91d4c9b43","ts":"2026-09-21T16:55:05.381748+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3642,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.375,"trend":"flat","recent_slope_pct":0.0683,"volatility":"unknown"},"price":6.48,"volume":{"bars":205,"last_bar_volume":123349.0,"baseline_avg":87370.8,"bar_rvol":1.411787,"raw_accel":0.471436,"smooth_accel":0.334576,"accel_momentum":0.850564,"rvol_3bar":[0.110241,0.97528,1.411787],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":2725.0,"sell_vol":5003.0,"unclassified_vol":0.0,"imbalance":-0.294772,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":5.126505},"context":{"vwap":6.364152,"price_vs_vwap_pct":1.820314,"ema9":6.463559,"ema20":6.462331,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.564056,"atr":0.017729,"spread_atr":0.564056,"own_change_pct":0.232198,"rel_strength_pct":{"SPY":0.24191,"IWM":0.253193}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.416156},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e7dfe29425fc","ts":"2026-09-21T16:55:05.381748+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7961,"target":8.94,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.885,"vwap":8.7774,"ext_from_open_pct":4.28,"max_ext_allowed_pct":3.0,"volume_pace":0.517,"trend":"flat","recent_slope_pct":0.0564,"volatility":"unknown"},"price":8.885,"volume":{"bars":205,"last_bar_volume":8656.0,"baseline_avg":41321.3,"bar_rvol":0.20948,"raw_accel":-0.849884,"smooth_accel":-0.15133,"accel_momentum":-0.113761,"rvol_3bar":[0.183118,1.484101,0.20948],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1843.0,"sell_vol":2051.0,"unclassified_vol":0.0,"imbalance":-0.053416,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":0.665889},"context":{"vwap":8.777437,"price_vs_vwap_pct":1.225453,"ema9":8.872698,"ema20":8.871059,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.615213,"dist_to_hod_atr":2.405643,"atr":0.022863,"spread_atr":0.43739,"own_change_pct":0.111611,"rel_strength_pct":{"SPY":0.121323,"IWM":0.132605}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.011189},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"101d1ba28eba","ts":"2026-09-21T16:55:15.586881+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3642,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.374,"trend":"flat","recent_slope_pct":0.0529,"volatility":"unknown"},"price":6.475,"volume":{"bars":205,"last_bar_volume":123349.0,"baseline_avg":87370.8,"bar_rvol":1.411787,"raw_accel":0.471436,"smooth_accel":0.334576,"accel_momentum":0.850564,"rvol_3bar":[0.110241,0.97528,1.411787],"trend_3bar":"ACCELERATING","projected_rvol":0.343653},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":5434.0,"sell_vol":5345.0,"unclassified_vol":0.0,"imbalance":0.008257,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.348604},"context":{"vwap":6.364152,"price_vs_vwap_pct":1.741749,"ema9":6.463559,"ema20":6.462331,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.231125,"dist_to_hod_atr":0.846085,"atr":0.017729,"spread_atr":0.564056,"own_change_pct":0.232198,"rel_strength_pct":{"SPY":0.24191,"IWM":0.253193}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.011657},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"631fbe895a93","ts":"2026-09-21T16:55:15.586881+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7997,"target":9.21,"target_label":"prev_day_high","reward_risk":3.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8886,"vwap":8.7774,"ext_from_open_pct":4.33,"max_ext_allowed_pct":3.0,"volume_pace":0.516,"trend":"flat","recent_slope_pct":0.0646,"volatility":"unknown"},"price":8.8886,"volume":{"bars":205,"last_bar_volume":8656.0,"baseline_avg":41321.3,"bar_rvol":0.20948,"raw_accel":-0.849884,"smooth_accel":-0.15133,"accel_momentum":-0.113761,"rvol_3bar":[0.183118,1.484101,0.20948],"trend_3bar":"MIXED","projected_rvol":0.128464},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":2061.0,"sell_vol":2198.0,"unclassified_vol":0.0,"imbalance":-0.032167,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":2.951245},"context":{"vwap":8.777437,"price_vs_vwap_pct":1.266468,"ema9":8.872698,"ema20":8.871059,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.574944,"dist_to_hod_atr":2.248182,"atr":0.022863,"spread_atr":0.43739,"own_change_pct":0.111611,"rel_strength_pct":{"SPY":0.121323,"IWM":0.132605}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.006738},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9be25256b3d4","ts":"2026-09-21T16:55:20.671380+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7961,"target":8.94,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.885,"vwap":8.7774,"ext_from_open_pct":4.28,"max_ext_allowed_pct":3.0,"volume_pace":0.516,"trend":"flat","recent_slope_pct":0.0564,"volatility":"unknown"},"price":8.885,"volume":{"bars":205,"last_bar_volume":8656.0,"baseline_avg":41321.3,"bar_rvol":0.20948,"raw_accel":-0.849884,"smooth_accel":-0.15133,"accel_momentum":-0.113761,"rvol_3bar":[0.183118,1.484101,0.20948],"trend_3bar":"MIXED","projected_rvol":0.099044},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":2062.0,"sell_vol":802.0,"unclassified_vol":0.0,"imbalance":0.439944,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":3.807109},"context":{"vwap":8.777437,"price_vs_vwap_pct":1.225453,"ema9":8.872698,"ema20":8.871059,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.615213,"dist_to_hod_atr":2.405643,"atr":0.022863,"spread_atr":0.43739,"own_change_pct":0.111611,"rel_strength_pct":{"SPY":0.121323,"IWM":0.132605}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.09216},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0e718131a91d","ts":"2026-09-21T16:55:25.776739+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.9882,"target":13.65,"target_label":"premarket_high","reward_risk":0.69,"pos_in_5d_range_pct":160.3,"room_to_5d_high_atr":-1.8},"price":13.38,"vwap":12.9006,"ext_from_open_pct":2.84,"max_ext_allowed_pct":3.0,"volume_pace":0.64,"trend":"flat","recent_slope_pct":-0.0662,"volatility":"high"},"price":13.38,"volume":{"bars":205,"last_bar_volume":8454.0,"baseline_avg":12226.7,"bar_rvol":0.691438,"raw_accel":-0.089597,"smooth_accel":-0.048202,"accel_momentum":-0.568479,"rvol_3bar":[1.267519,0.776658,0.691438],"trend_3bar":"DECELERATING","projected_rvol":2.357055},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":10421.0,"sell_vol":3805.0,"unclassified_vol":0.0,"imbalance":0.465064,"bid":13.32,"ask":13.38,"spread_pct":0.449438,"quote_size_imbalance":null,"quote_age_s":0.471739},"context":{"vwap":12.899475,"price_vs_vwap_pct":3.725153,"ema9":13.381909,"ema20":13.352925,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.043478,"dist_to_hod_atr":4.919198,"atr":0.08538,"spread_atr":0.702743,"own_change_pct":-0.019432,"rel_strength_pct":{"SPY":-0.00972,"IWM":0.001562}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.321563},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"5a8ff1cde543","ts":"2026-09-21T16:55:25.776739+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.5855,"target":12.0,"target_label":"premarket_high","reward_risk":1.03,"pos_in_5d_range_pct":119.8,"room_to_5d_high_atr":-0.88},"price":11.79,"vwap":11.5831,"ext_from_open_pct":1.03,"max_ext_allowed_pct":3.0,"volume_pace":0.233,"trend":"flat","recent_slope_pct":-0.1561,"volatility":"high"},"price":11.79,"volume":{"bars":205,"last_bar_volume":34255.0,"baseline_avg":6035.05,"bar_rvol":5.676009,"raw_accel":9.016082,"smooth_accel":-0.269881,"accel_momentum":0.434599,"rvol_3bar":[1.249165,0.580552,5.676009],"trend_3bar":"MIXED","projected_rvol":10.074702},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":6139.0,"sell_vol":20567.0,"unclassified_vol":0.0,"imbalance":-0.540253,"bid":11.78,"ask":11.84,"spread_pct":0.508044,"quote_size_imbalance":null,"quote_age_s":0.535274},"context":{"vwap":11.580733,"price_vs_vwap_pct":1.807031,"ema9":11.799375,"ema20":11.716154,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.585977,"dist_to_hod_atr":3.149841,"atr":0.06032,"spread_atr":0.994687,"own_change_pct":0.381194,"rel_strength_pct":{"SPY":0.390907,"IWM":0.402189}},"vas":{"raw":1,"score":5.0,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.066482},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"faf75eb21c8d","ts":"2026-09-21T16:55:25.776739+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.8008,"target":9.21,"target_label":"prev_day_high","reward_risk":3.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8897,"vwap":8.7774,"ext_from_open_pct":4.34,"max_ext_allowed_pct":3.0,"volume_pace":0.516,"trend":"flat","recent_slope_pct":0.067,"volatility":"unknown"},"price":8.8897,"volume":{"bars":205,"last_bar_volume":8656.0,"baseline_avg":41321.3,"bar_rvol":0.20948,"raw_accel":-0.849884,"smooth_accel":-0.15133,"accel_momentum":-0.113761,"rvol_3bar":[0.183118,1.484101,0.20948],"trend_3bar":"MIXED","projected_rvol":0.114972},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2482.0,"sell_vol":813.0,"unclassified_vol":0.0,"imbalance":0.506525,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":1.38758},"context":{"vwap":8.777437,"price_vs_vwap_pct":1.279,"ema9":8.872698,"ema20":8.871059,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.56264,"dist_to_hod_atr":2.20007,"atr":0.022863,"spread_atr":0.43739,"own_change_pct":0.111611,"rel_strength_pct":{"SPY":0.121323,"IWM":0.132605}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.106107},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d757a68a9d35","ts":"2026-09-21T16:55:30.853156+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.5861,"target":12.0,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":120.2,"room_to_5d_high_atr":-0.9},"price":11.805,"vwap":11.5832,"ext_from_open_pct":1.16,"max_ext_allowed_pct":3.0,"volume_pace":0.233,"trend":"flat","recent_slope_pct":-0.1308,"volatility":"high"},"price":11.805,"volume":{"bars":205,"last_bar_volume":34255.0,"baseline_avg":6035.05,"bar_rvol":5.676009,"raw_accel":9.016082,"smooth_accel":-0.269881,"accel_momentum":0.434599,"rvol_3bar":[1.249165,0.580552,5.676009],"trend_3bar":"MIXED","projected_rvol":8.57818},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":6639.0,"sell_vol":19982.0,"unclassified_vol":0.0,"imbalance":-0.501221,"bid":11.77,"ask":11.84,"spread_pct":0.592969,"quote_size_imbalance":null,"quote_age_s":0.105425},"context":{"vwap":11.580733,"price_vs_vwap_pct":1.936556,"ema9":11.799375,"ema20":11.716154,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.460768,"dist_to_hod_atr":2.90117,"atr":0.06032,"spread_atr":1.160468,"own_change_pct":0.381194,"rel_strength_pct":{"SPY":0.390907,"IWM":0.402189}},"vas":{"raw":1,"score":5.0,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.844934},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"818978993bed","ts":"2026-09-21T16:55:30.853156+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.7952,"target":8.94,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.884,"vwap":8.7775,"ext_from_open_pct":4.27,"max_ext_allowed_pct":4.0,"volume_pace":0.516,"trend":"flat","recent_slope_pct":0.0542,"volatility":"unknown"},"price":8.884,"volume":{"bars":205,"last_bar_volume":8656.0,"baseline_avg":41321.3,"bar_rvol":0.20948,"raw_accel":-0.849884,"smooth_accel":-0.15133,"accel_momentum":-0.113761,"rvol_3bar":[0.183118,1.484101,0.20948],"trend_3bar":"MIXED","projected_rvol":0.640289},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":12651.0,"sell_vol":954.0,"unclassified_vol":0.0,"imbalance":0.859757,"bid":8.89,"ask":8.9,"spread_pct":0.112423,"quote_size_imbalance":null,"quote_age_s":0.368445},"context":{"vwap":8.777437,"price_vs_vwap_pct":1.214061,"ema9":8.872698,"ema20":8.871059,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.626398,"dist_to_hod_atr":2.449382,"atr":0.022863,"spread_atr":0.43739,"own_change_pct":0.111611,"rel_strength_pct":{"SPY":0.121323,"IWM":0.132605}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.180102},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"78adf48d9d37","ts":"2026-09-21T16:55:35.932646+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.5755,"target":12.0,"target_label":"premarket_high","reward_risk":1.08,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.87},"price":11.78,"vwap":11.5831,"ext_from_open_pct":0.94,"max_ext_allowed_pct":3.0,"volume_pace":0.233,"trend":"flat","recent_slope_pct":-0.173,"volatility":"high"},"price":11.78,"volume":{"bars":205,"last_bar_volume":34255.0,"baseline_avg":6035.05,"bar_rvol":5.676009,"raw_accel":9.016082,"smooth_accel":-0.269881,"accel_momentum":0.434599,"rvol_3bar":[1.249165,0.580552,5.676009],"trend_3bar":"MIXED","projected_rvol":7.375793},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":6424.0,"sell_vol":20019.0,"unclassified_vol":0.0,"imbalance":-0.514125,"bid":11.77,"ask":11.84,"spread_pct":0.592969,"quote_size_imbalance":null,"quote_age_s":1.522005},"context":{"vwap":11.580733,"price_vs_vwap_pct":1.72068,"ema9":11.799375,"ema20":11.716154,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.669449,"dist_to_hod_atr":3.315623,"atr":0.06032,"spread_atr":1.160468,"own_change_pct":0.381194,"rel_strength_pct":{"SPY":0.390907,"IWM":0.402189}},"vas":{"raw":1,"score":5.0,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.918177},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8df92fef0d4a","ts":"2026-09-21T16:55:35.932646+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.8011,"target":9.21,"target_label":"prev_day_high","reward_risk":3.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.89,"vwap":8.7776,"ext_from_open_pct":4.34,"max_ext_allowed_pct":3.0,"volume_pace":0.516,"trend":"flat","recent_slope_pct":0.0677,"volatility":"unknown"},"price":8.89,"volume":{"bars":205,"last_bar_volume":8656.0,"baseline_avg":41321.3,"bar_rvol":0.20948,"raw_accel":-0.849884,"smooth_accel":-0.15133,"accel_momentum":-0.113761,"rvol_3bar":[0.183118,1.484101,0.20948],"trend_3bar":"MIXED","projected_rvol":1.095836},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":12839.0,"sell_vol":13605.0,"unclassified_vol":0.0,"imbalance":-0.028967,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":1.878447},"context":{"vwap":8.777437,"price_vs_vwap_pct":1.282418,"ema9":8.872698,"ema20":8.871059,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.559284,"dist_to_hod_atr":2.186948,"atr":0.022863,"spread_atr":0.43739,"own_change_pct":0.111611,"rel_strength_pct":{"SPY":0.121323,"IWM":0.132605}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.006068},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2691315ad9a5","ts":"2026-09-21T16:55:41.014989+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7961,"target":8.94,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.885,"vwap":8.7776,"ext_from_open_pct":4.28,"max_ext_allowed_pct":3.0,"volume_pace":0.516,"trend":"flat","recent_slope_pct":0.0564,"volatility":"unknown"},"price":8.885,"volume":{"bars":205,"last_bar_volume":8656.0,"baseline_avg":41321.3,"bar_rvol":0.20948,"raw_accel":-0.849884,"smooth_accel":-0.15133,"accel_momentum":-0.113761,"rvol_3bar":[0.183118,1.484101,0.20948],"trend_3bar":"MIXED","projected_rvol":0.964791},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":12673.0,"sell_vol":13704.0,"unclassified_vol":0.0,"imbalance":-0.039087,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":0.337444},"context":{"vwap":8.777437,"price_vs_vwap_pct":1.225453,"ema9":8.872698,"ema20":8.871059,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.615213,"dist_to_hod_atr":2.405643,"atr":0.022863,"spread_atr":0.43739,"own_change_pct":0.111611,"rel_strength_pct":{"SPY":0.121323,"IWM":0.132605}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.008188},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a19385ca5b27","ts":"2026-09-21T16:55:46.092539+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.5861,"target":12.0,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":120.2,"room_to_5d_high_atr":-0.9},"price":11.805,"vwap":11.5832,"ext_from_open_pct":1.16,"max_ext_allowed_pct":3.0,"volume_pace":0.233,"trend":"flat","recent_slope_pct":-0.1308,"volatility":"high"},"price":11.805,"volume":{"bars":205,"last_bar_volume":34255.0,"baseline_avg":6035.05,"bar_rvol":5.676009,"raw_accel":9.016082,"smooth_accel":-0.269881,"accel_momentum":0.434599,"rvol_3bar":[1.249165,0.580552,5.676009],"trend_3bar":"MIXED","projected_rvol":5.814701},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1826.0,"sell_vol":11761.0,"unclassified_vol":0.0,"imbalance":-0.731214,"bid":11.77,"ask":11.84,"spread_pct":0.592969,"quote_size_imbalance":null,"quote_age_s":1.71879},"context":{"vwap":11.580733,"price_vs_vwap_pct":1.936556,"ema9":11.799375,"ema20":11.716154,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.460768,"dist_to_hod_atr":2.90117,"atr":0.06032,"spread_atr":1.160468,"own_change_pct":0.381194,"rel_strength_pct":{"SPY":0.390907,"IWM":0.402189}},"vas":{"raw":1,"score":5.0,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-4.150376},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8bf422ba5b42","ts":"2026-09-21T16:55:51.149934+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3644,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.372,"trend":"flat","recent_slope_pct":0.0683,"volatility":"unknown"},"price":6.48,"volume":{"bars":205,"last_bar_volume":123349.0,"baseline_avg":87370.8,"bar_rvol":1.411787,"raw_accel":0.471436,"smooth_accel":0.334576,"accel_momentum":0.850564,"rvol_3bar":[0.110241,0.97528,1.411787],"trend_3bar":"ACCELERATING","projected_rvol":0.433895},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":16255.0,"sell_vol":7993.0,"unclassified_vol":0.0,"imbalance":0.340729,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.937937},"context":{"vwap":6.364152,"price_vs_vwap_pct":1.820314,"ema9":6.463559,"ema20":6.462331,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.564056,"atr":0.017729,"spread_atr":0.564056,"own_change_pct":0.232198,"rel_strength_pct":{"SPY":0.24191,"IWM":0.253193}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.481037},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"177973cdd718","ts":"2026-09-21T16:55:56.222504+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4053,"target":7.775,"target_label":"range_20d_high","reward_risk":20.17,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.3644,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.372,"trend":"flat","recent_slope_pct":0.0374,"volatility":"unknown"},"price":6.47,"volume":{"bars":205,"last_bar_volume":123349.0,"baseline_avg":87370.8,"bar_rvol":1.411787,"raw_accel":0.471436,"smooth_accel":0.334576,"accel_momentum":0.850564,"rvol_3bar":[0.110241,0.97528,1.411787],"trend_3bar":"ACCELERATING","projected_rvol":0.408476},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":17162.0,"sell_vol":8187.0,"unclassified_vol":0.0,"imbalance":0.354057,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.263638},"context":{"vwap":6.364152,"price_vs_vwap_pct":1.663184,"ema9":6.463559,"ema20":6.462331,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.308166,"dist_to_hod_atr":1.128113,"atr":0.017729,"spread_atr":0.564056,"own_change_pct":0.232198,"rel_strength_pct":{"SPY":0.24191,"IWM":0.253193}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.499854},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d5f1a036efc2","ts":"2026-09-21T16:56:01.284762+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.5861,"target":12.0,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":120.1,"room_to_5d_high_atr":-0.89},"price":11.8,"vwap":11.5832,"ext_from_open_pct":1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.232,"trend":"flat","recent_slope_pct":-0.1392,"volatility":"high"},"price":11.8,"volume":{"bars":205,"last_bar_volume":34255.0,"baseline_avg":6035.05,"bar_rvol":5.676009,"raw_accel":9.016082,"smooth_accel":-0.269881,"accel_momentum":0.434599,"rvol_3bar":[1.249165,0.580552,5.676009],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":352.0,"sell_vol":107.0,"unclassified_vol":0.0,"imbalance":0.533769,"bid":11.77,"ask":11.84,"spread_pct":0.592969,"quote_size_imbalance":null,"quote_age_s":1.267596},"context":{"vwap":11.580733,"price_vs_vwap_pct":1.893381,"ema9":11.799375,"ema20":11.716154,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.502504,"dist_to_hod_atr":2.98406,"atr":0.06032,"spread_atr":1.160468,"own_change_pct":0.381194,"rel_strength_pct":{"SPY":0.3799,"IWM":0.41093}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.029678},"shadow":{"decision":"FAIL","failed":["spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9beac23e4bd9","ts":"2026-09-21T16:56:01.284762+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.5831,"target":8.76,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6315,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":-0.0087,"volatility":"medium"},"price":8.685,"volume":{"bars":206,"last_bar_volume":995.0,"baseline_avg":2189.0,"bar_rvol":0.454545,"raw_accel":0.818182,"smooth_accel":-0.566358,"accel_momentum":-0.194029,"rvol_3bar":[0.094284,0.085333,0.454545],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":35.0,"sell_vol":12.0,"unclassified_vol":0.0,"imbalance":0.489362,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":0.056464},"context":{"vwap":8.631489,"price_vs_vwap_pct":0.619952,"ema9":8.683631,"ema20":8.678449,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":12.566417,"atr":0.020953,"spread_atr":0.477266,"own_change_pct":-0.136793,"rel_strength_pct":{"SPY":-0.138087,"IWM":-0.107057}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.222437},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d7904c7ae4a0","ts":"2026-09-21T16:56:06.403233+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.23x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.5861,"target":12.0,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":120.2,"room_to_5d_high_atr":-0.9},"price":11.805,"vwap":11.5832,"ext_from_open_pct":1.16,"max_ext_allowed_pct":3.0,"volume_pace":0.232,"trend":"flat","recent_slope_pct":-0.1689,"volatility":"high"},"price":11.805,"volume":{"bars":206,"last_bar_volume":27080.0,"baseline_avg":7696.2,"bar_rvol":3.51862,"raw_accel":-0.209458,"smooth_accel":0.954396,"accel_momentum":1.224277,"rvol_3bar":[0.580552,5.676009,3.51862],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":356.0,"sell_vol":70.0,"unclassified_vol":0.0,"imbalance":0.671362,"bid":11.77,"ask":11.84,"spread_pct":0.592969,"quote_size_imbalance":null,"quote_age_s":6.386067},"context":{"vwap":11.583181,"price_vs_vwap_pct":1.915008,"ema9":11.7995,"ema20":11.724139,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.460768,"dist_to_hod_atr":2.800748,"atr":0.062483,"spread_atr":1.120299,"own_change_pct":-0.505902,"rel_strength_pct":{"SPY":-0.507197,"IWM":-0.476167}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.362266},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"654bef25c1c1","ts":"2026-09-21T16:56:16.626990+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.23x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.5861,"target":12.0,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":120.1,"room_to_5d_high_atr":-0.89},"price":11.8,"vwap":11.5833,"ext_from_open_pct":1.11,"max_ext_allowed_pct":4.0,"volume_pace":0.232,"trend":"flat","recent_slope_pct":-0.1774,"volatility":"high"},"price":11.8,"volume":{"bars":206,"last_bar_volume":27080.0,"baseline_avg":7696.2,"bar_rvol":3.51862,"raw_accel":-0.209458,"smooth_accel":0.954396,"accel_momentum":1.224277,"rvol_3bar":[0.580552,5.676009,3.51862],"trend_3bar":"MIXED","projected_rvol":0.467473},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":942.0,"sell_vol":177.0,"unclassified_vol":0.0,"imbalance":0.683646,"bid":11.77,"ask":11.84,"spread_pct":0.592969,"quote_size_imbalance":null,"quote_age_s":2.805592},"context":{"vwap":11.583181,"price_vs_vwap_pct":1.871842,"ema9":11.7995,"ema20":11.724139,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.502504,"dist_to_hod_atr":2.880769,"atr":0.062483,"spread_atr":1.120299,"own_change_pct":-0.505902,"rel_strength_pct":{"SPY":-0.507197,"IWM":-0.476167}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.405491},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f7babfc151cc","ts":"2026-09-21T16:56:16.626990+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7997,"target":9.21,"target_label":"prev_day_high","reward_risk":3.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8886,"vwap":8.7776,"ext_from_open_pct":4.33,"max_ext_allowed_pct":3.0,"volume_pace":0.515,"trend":"flat","recent_slope_pct":0.0526,"volatility":"unknown"},"price":8.8886,"volume":{"bars":206,"last_bar_volume":27599.0,"baseline_avg":38088.0,"bar_rvol":0.724611,"raw_accel":1.898446,"smooth_accel":0.751464,"accel_momentum":0.902794,"rvol_3bar":[1.484101,0.20948,0.724611],"trend_3bar":"MIXED","projected_rvol":0.103934},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":63.0,"sell_vol":1060.0,"unclassified_vol":0.0,"imbalance":-0.887801,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":0.041373},"context":{"vwap":8.777607,"price_vs_vwap_pct":1.264498,"ema9":8.875158,"ema20":8.872386,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.574944,"dist_to_hod_atr":2.28359,"atr":0.022508,"spread_atr":0.444278,"own_change_pct":0.04504,"rel_strength_pct":{"SPY":0.043745,"IWM":0.074775}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.64331},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cd9144d95f49","ts":"2026-09-21T16:56:21.686126+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7912,"target":8.94,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.88,"vwap":8.7777,"ext_from_open_pct":4.23,"max_ext_allowed_pct":3.0,"volume_pace":0.515,"trend":"flat","recent_slope_pct":0.0332,"volatility":"unknown"},"price":8.88,"volume":{"bars":206,"last_bar_volume":27599.0,"baseline_avg":38088.0,"bar_rvol":0.724611,"raw_accel":1.898446,"smooth_accel":0.751464,"accel_momentum":0.902794,"rvol_3bar":[1.484101,0.20948,0.724611],"trend_3bar":"MIXED","projected_rvol":0.7259},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":4546.0,"sell_vol":5458.0,"unclassified_vol":0.0,"imbalance":-0.091164,"bid":8.87,"ask":8.88,"spread_pct":0.112676,"quote_size_imbalance":null,"quote_age_s":2.47746},"context":{"vwap":8.777607,"price_vs_vwap_pct":1.166522,"ema9":8.875158,"ema20":8.872386,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.671141,"dist_to_hod_atr":2.665669,"atr":0.022508,"spread_atr":0.444278,"own_change_pct":0.04504,"rel_strength_pct":{"SPY":0.043745,"IWM":0.074775}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.066058},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4c195126aa5b","ts":"2026-09-21T16:56:36.936922+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.23x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.5861,"target":12.0,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":120.2,"room_to_5d_high_atr":-0.9},"price":11.805,"vwap":11.5834,"ext_from_open_pct":1.16,"max_ext_allowed_pct":4.0,"volume_pace":0.232,"trend":"flat","recent_slope_pct":-0.1689,"volatility":"high"},"price":11.805,"volume":{"bars":206,"last_bar_volume":27080.0,"baseline_avg":7696.2,"bar_rvol":3.51862,"raw_accel":-0.209458,"smooth_accel":0.954396,"accel_momentum":1.224277,"rvol_3bar":[0.580552,5.676009,3.51862],"trend_3bar":"MIXED","projected_rvol":0.441124},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":1201.0,"sell_vol":885.0,"unclassified_vol":0.0,"imbalance":0.151486,"bid":11.77,"ask":11.84,"spread_pct":0.592969,"quote_size_imbalance":null,"quote_age_s":3.485131},"context":{"vwap":11.583181,"price_vs_vwap_pct":1.915008,"ema9":11.7995,"ema20":11.724139,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.460768,"dist_to_hod_atr":2.800748,"atr":0.062483,"spread_atr":1.120299,"own_change_pct":-0.505902,"rel_strength_pct":{"SPY":-0.507197,"IWM":-0.476167}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.533022},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"61f7a641e301","ts":"2026-09-21T16:56:47.156546+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.23x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.5861,"target":12.0,"target_label":"premarket_high","reward_risk":1.01,"pos_in_5d_range_pct":119.8,"room_to_5d_high_atr":-0.88},"price":11.7921,"vwap":11.5834,"ext_from_open_pct":1.05,"max_ext_allowed_pct":4.0,"volume_pace":0.232,"trend":"flat","recent_slope_pct":-0.1908,"volatility":"high"},"price":11.7921,"volume":{"bars":206,"last_bar_volume":27080.0,"baseline_avg":7696.2,"bar_rvol":3.51862,"raw_accel":-0.209458,"smooth_accel":0.954396,"accel_momentum":1.224277,"rvol_3bar":[0.580552,5.676009,3.51862],"trend_3bar":"MIXED","projected_rvol":0.380573},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":315.0,"sell_vol":990.0,"unclassified_vol":0.0,"imbalance":-0.517241,"bid":11.77,"ask":11.84,"spread_pct":0.592969,"quote_size_imbalance":null,"quote_age_s":13.704755},"context":{"vwap":11.583181,"price_vs_vwap_pct":1.80364,"ema9":11.7995,"ema20":11.724139,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.568447,"dist_to_hod_atr":3.007203,"atr":0.062483,"spread_atr":1.120299,"own_change_pct":-0.505902,"rel_strength_pct":{"SPY":-0.507197,"IWM":-0.476167}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.819976},"shadow":{"decision":"FAIL","failed":["imbalance","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b7f6689d285e","ts":"2026-09-21T16:56:57.548800+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.9747,"target":13.65,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":160.0,"room_to_5d_high_atr":-1.79},"price":13.3665,"vwap":12.9073,"ext_from_open_pct":2.74,"max_ext_allowed_pct":3.0,"volume_pace":0.644,"trend":"flat","recent_slope_pct":-0.0641,"volatility":"high"},"price":13.3665,"volume":{"bars":206,"last_bar_volume":33667.0,"baseline_avg":12114.4,"bar_rvol":2.779089,"raw_accel":2.982375,"smooth_accel":0.121493,"accel_momentum":0.169695,"rvol_3bar":[0.776658,0.691438,2.779089],"trend_3bar":"MIXED","projected_rvol":4.456135},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":1048.0,"sell_vol":703.0,"unclassified_vol":0.0,"imbalance":0.19703,"bid":13.35,"ask":13.45,"spread_pct":0.746269,"quote_size_imbalance":null,"quote_age_s":0.288122},"context":{"vwap":12.902428,"price_vs_vwap_pct":3.596779,"ema9":13.373527,"ema20":13.351694,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.141304,"dist_to_hod_atr":5.015964,"atr":0.086424,"spread_atr":1.157085,"own_change_pct":-0.521999,"rel_strength_pct":{"SPY":-0.523293,"IWM":-0.492263}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.547565},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"98bd551c4d91","ts":"2026-09-21T16:57:07.825745+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":13.0257,"target":13.53,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":161.1,"room_to_5d_high_atr":-1.83},"price":13.4175,"vwap":12.9077,"ext_from_open_pct":3.13,"max_ext_allowed_pct":3.0,"volume_pace":0.644,"trend":"flat","recent_slope_pct":0.0722,"volatility":"high"},"price":13.4175,"volume":{"bars":207,"last_bar_volume":52781.0,"baseline_avg":13480.25,"bar_rvol":3.915432,"raw_accel":0.567737,"smooth_accel":1.350572,"accel_momentum":1.229079,"rvol_3bar":[0.691438,2.779089,3.915432],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1613.0,"sell_vol":1301.0,"unclassified_vol":0.0,"imbalance":0.107069,"bid":13.37,"ask":13.45,"spread_pct":0.59657,"quote_size_imbalance":null,"quote_age_s":0.943808},"context":{"vwap":12.90753,"price_vs_vwap_pct":3.950951,"ema9":13.378822,"ema20":13.356295,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.771739,"dist_to_hod_atr":3.867228,"atr":0.098908,"spread_atr":0.808832,"own_change_pct":-0.137869,"rel_strength_pct":{"SPY":-0.123624,"IWM":-0.104625}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.419223},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"73efbea5bc07","ts":"2026-09-21T16:57:07.825745+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.23x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.5861,"target":12.0,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.9},"price":11.81,"vwap":11.5834,"ext_from_open_pct":1.2,"max_ext_allowed_pct":3.0,"volume_pace":0.231,"trend":"flat","recent_slope_pct":-0.1336,"volatility":"high"},"price":11.81,"volume":{"bars":207,"last_bar_volume":2302.0,"baseline_avg":8820.65,"bar_rvol":0.260978,"raw_accel":-0.914993,"smooth_accel":2.270144,"accel_momentum":1.315748,"rvol_3bar":[5.676009,3.51862,0.260978],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":15.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":-0.74359,"bid":11.77,"ask":11.84,"spread_pct":0.592969,"quote_size_imbalance":null,"quote_age_s":1.551921},"context":{"vwap":11.583378,"price_vs_vwap_pct":1.956438,"ema9":11.79802,"ema20":11.730612,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.419032,"dist_to_hod_atr":2.759474,"atr":0.061606,"spread_atr":1.136254,"own_change_pct":-0.656276,"rel_strength_pct":{"SPY":-0.642031,"IWM":-0.623032}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.194061},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"ea6daefb0293","ts":"2026-09-21T16:57:23.149809+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":13.0082,"target":13.53,"target_label":"ceiling","reward_risk":0.33,"pos_in_5d_range_pct":160.7,"room_to_5d_high_atr":-1.82},"price":13.4,"vwap":12.9078,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":0.643,"trend":"flat","recent_slope_pct":0.046,"volatility":"high"},"price":13.4,"volume":{"bars":207,"last_bar_volume":52781.0,"baseline_avg":13480.25,"bar_rvol":3.915432,"raw_accel":0.567737,"smooth_accel":1.350572,"accel_momentum":1.229079,"rvol_3bar":[0.691438,2.779089,3.915432],"trend_3bar":"ACCELERATING","projected_rvol":0.484899},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":1841.0,"sell_vol":2084.0,"unclassified_vol":0.0,"imbalance":-0.061911,"bid":13.37,"ask":13.42,"spread_pct":0.373274,"quote_size_imbalance":null,"quote_age_s":1.718204},"context":{"vwap":12.90753,"price_vs_vwap_pct":3.815371,"ema9":13.378822,"ema20":13.356295,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.898551,"dist_to_hod_atr":4.04416,"atr":0.098908,"spread_atr":0.50552,"own_change_pct":-0.137869,"rel_strength_pct":{"SPY":-0.123624,"IWM":-0.104625}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.242408},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5cc461026d5d","ts":"2026-09-21T16:57:28.277099+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $13.01 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":13.0227,"target":13.53,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":161.0,"room_to_5d_high_atr":-1.82},"price":13.4145,"vwap":12.908,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":0.643,"trend":"flat","recent_slope_pct":0.0677,"volatility":"high"},"price":13.4145,"volume":{"bars":207,"last_bar_volume":52781.0,"baseline_avg":13480.25,"bar_rvol":3.915432,"raw_accel":0.567737,"smooth_accel":1.350572,"accel_momentum":1.229079,"rvol_3bar":[0.691438,2.779089,3.915432],"trend_3bar":"ACCELERATING","projected_rvol":0.764673},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":1902.0,"sell_vol":3956.0,"unclassified_vol":0.0,"imbalance":-0.350632,"bid":13.37,"ask":13.42,"spread_pct":0.373274,"quote_size_imbalance":null,"quote_age_s":2.297468},"context":{"vwap":12.90753,"price_vs_vwap_pct":3.927709,"ema9":13.378822,"ema20":13.356295,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.793478,"dist_to_hod_atr":3.897559,"atr":0.098908,"spread_atr":0.50552,"own_change_pct":-0.137869,"rel_strength_pct":{"SPY":-0.123624,"IWM":-0.104625}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.372874},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"adc4e68cca92","ts":"2026-09-21T16:57:33.423832+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":13.0082,"target":13.53,"target_label":"ceiling","reward_risk":0.33,"pos_in_5d_range_pct":160.7,"room_to_5d_high_atr":-1.82},"price":13.4,"vwap":12.908,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":0.643,"trend":"flat","recent_slope_pct":0.046,"volatility":"high"},"price":13.4,"volume":{"bars":207,"last_bar_volume":52781.0,"baseline_avg":13480.25,"bar_rvol":3.915432,"raw_accel":0.567737,"smooth_accel":1.350572,"accel_momentum":1.229079,"rvol_3bar":[0.691438,2.779089,3.915432],"trend_3bar":"ACCELERATING","projected_rvol":0.660642},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":904.0,"sell_vol":2944.0,"unclassified_vol":0.0,"imbalance":-0.530146,"bid":13.39,"ask":13.42,"spread_pct":0.223797,"quote_size_imbalance":null,"quote_age_s":0.183133},"context":{"vwap":12.90753,"price_vs_vwap_pct":3.815371,"ema9":13.378822,"ema20":13.356295,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-2.898551,"dist_to_hod_atr":4.04416,"atr":0.098908,"spread_atr":0.303312,"own_change_pct":-0.137869,"rel_strength_pct":{"SPY":-0.123624,"IWM":-0.104625}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.075749},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4bbe25edd7ae","ts":"2026-09-21T16:57:33.423832+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6607,"target":10.02,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":132.6,"room_to_5d_high_atr":-0.76},"price":9.8714,"vwap":9.8291,"ext_from_open_pct":-1.19,"max_ext_allowed_pct":4.0,"volume_pace":0.908,"trend":"flat","recent_slope_pct":0.1874,"volatility":"high"},"price":9.8714,"volume":{"bars":207,"last_bar_volume":6935.0,"baseline_avg":19935.5,"bar_rvol":0.347872,"raw_accel":-0.650647,"smooth_accel":0.754374,"accel_momentum":-0.712081,"rvol_3bar":[3.323693,1.021452,0.347872],"trend_3bar":"DECELERATING","projected_rvol":16.233802},"flow":{"window_s":30,"trades":569,"trade_rate":18.966667,"buy_vol":157571.0,"sell_vol":22666.0,"unclassified_vol":0.0,"imbalance":0.748487,"bid":9.87,"ask":9.88,"spread_pct":0.101266,"quote_size_imbalance":null,"quote_age_s":1.050465},"context":{"vwap":9.828824,"price_vs_vwap_pct":0.433172,"ema9":9.77634,"ema20":9.750255,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.456522,"dist_to_hod_atr":6.95753,"atr":0.035731,"spread_atr":0.279868,"own_change_pct":0.072597,"rel_strength_pct":{"SPY":0.086843,"IWM":0.105842}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.260377},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"94a0e85b708d","ts":"2026-09-21T16:57:48.780328+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.82 below VWAP $9.83","plan":{"state":"PASS","setup":"","stop":9.656,"target":10.02,"target_label":"premarket_high","reward_risk":1.2,"pos_in_5d_range_pct":129.4,"room_to_5d_high_atr":-0.69},"price":9.8217,"vwap":9.8287,"ext_from_open_pct":-1.68,"max_ext_allowed_pct":3.0,"volume_pace":0.908,"trend":"flat","recent_slope_pct":0.0861,"volatility":"high"},"price":9.8217,"volume":{"bars":207,"last_bar_volume":6935.0,"baseline_avg":19935.5,"bar_rvol":0.347872,"raw_accel":-0.650647,"smooth_accel":0.754374,"accel_momentum":-0.712081,"rvol_3bar":[3.323693,1.021452,0.347872],"trend_3bar":"DECELERATING","projected_rvol":12.162945},"flow":{"window_s":30,"trades":211,"trade_rate":7.033333,"buy_vol":48287.0,"sell_vol":12631.0,"unclassified_vol":0.0,"imbalance":0.585311,"bid":9.87,"ask":9.88,"spread_pct":0.101266,"quote_size_imbalance":null,"quote_age_s":2.615312},"context":{"vwap":9.828824,"price_vs_vwap_pct":-0.072484,"ema9":9.77634,"ema20":9.750255,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.947628,"dist_to_hod_atr":8.348477,"atr":0.035731,"spread_atr":0.279868,"own_change_pct":0.072597,"rel_strength_pct":{"SPY":0.086843,"IWM":0.105842}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.203613},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"da21b8e1ef71","ts":"2026-09-21T16:58:04.249854+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7997,"target":9.21,"target_label":"prev_day_high","reward_risk":3.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8886,"vwap":8.7778,"ext_from_open_pct":4.33,"max_ext_allowed_pct":3.0,"volume_pace":0.511,"trend":"flat","recent_slope_pct":0.029,"volatility":"unknown"},"price":8.8886,"volume":{"bars":207,"last_bar_volume":19289.0,"baseline_avg":36029.65,"bar_rvol":0.535365,"raw_accel":-0.301098,"smooth_accel":-0.414784,"accel_momentum":-1.166248,"rvol_3bar":[0.20948,0.724611,0.535365],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":3750.0,"sell_vol":5251.0,"unclassified_vol":0.0,"imbalance":-0.166759,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":1.427745},"context":{"vwap":8.77772,"price_vs_vwap_pct":1.263198,"ema9":8.876127,"ema20":8.873112,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.574944,"dist_to_hod_atr":2.301914,"atr":0.022329,"spread_atr":0.447843,"own_change_pct":0.169205,"rel_strength_pct":{"SPY":0.158195,"IWM":0.197202}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.089277},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"012dfa112102","ts":"2026-09-21T16:58:09.500016+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.1449,"target":5.25,"target_label":"ceiling","reward_risk":1.02,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1969,"vwap":5.1775,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.841,"trend":"flat","recent_slope_pct":0.0208,"volatility":"unknown"},"price":5.1969,"volume":{"bars":208,"last_bar_volume":30188.0,"baseline_avg":25715.4,"bar_rvol":1.173927,"raw_accel":0.017047,"smooth_accel":1.113291,"accel_momentum":-1.040771,"rvol_3bar":[2.585814,1.120223,1.173927],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":6148.0,"sell_vol":11464.0,"unclassified_vol":0.0,"imbalance":-0.30184,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.877668},"context":{"vwap":5.177527,"price_vs_vwap_pct":0.374179,"ema9":5.188659,"ema20":5.183371,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-1.945283,"dist_to_hod_atr":6.529303,"atr":0.01579,"spread_atr":0.633298,"own_change_pct":0.063584,"rel_strength_pct":{"SPY":0.052574,"IWM":0.091581}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.354338},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"439d2cff7912","ts":"2026-09-21T16:58:09.500016+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7912,"target":8.94,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.88,"vwap":8.7778,"ext_from_open_pct":4.23,"max_ext_allowed_pct":3.0,"volume_pace":0.511,"trend":"flat","recent_slope_pct":0.0041,"volatility":"unknown"},"price":8.88,"volume":{"bars":208,"last_bar_volume":16729.0,"baseline_avg":34107.0,"bar_rvol":0.490486,"raw_accel":-0.132718,"smooth_accel":-0.134321,"accel_momentum":0.280463,"rvol_3bar":[0.724611,0.535365,0.490486],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":294.0,"sell_vol":5444.0,"unclassified_vol":0.0,"imbalance":-0.897525,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":1.843056},"context":{"vwap":8.77782,"price_vs_vwap_pct":1.164067,"ema9":8.878621,"ema20":8.874587,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.671141,"dist_to_hod_atr":2.70723,"atr":0.022163,"spread_atr":0.451205,"own_change_pct":0.210825,"rel_strength_pct":{"SPY":0.199816,"IWM":0.238823}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.440223},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"c84664730f52","ts":"2026-09-21T16:58:20.088620+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.8011,"target":9.21,"target_label":"prev_day_high","reward_risk":3.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.89,"vwap":8.7778,"ext_from_open_pct":4.34,"max_ext_allowed_pct":3.0,"volume_pace":0.511,"trend":"flat","recent_slope_pct":0.0266,"volatility":"unknown"},"price":8.89,"volume":{"bars":208,"last_bar_volume":16729.0,"baseline_avg":34107.0,"bar_rvol":0.490486,"raw_accel":-0.132718,"smooth_accel":-0.134321,"accel_momentum":0.280463,"rvol_3bar":[0.724611,0.535365,0.490486],"trend_3bar":"DECELERATING","projected_rvol":0.133545},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":269.0,"sell_vol":1528.0,"unclassified_vol":0.0,"imbalance":-0.700612,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":1.999152},"context":{"vwap":8.77782,"price_vs_vwap_pct":1.27799,"ema9":8.878621,"ema20":8.874587,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.559284,"dist_to_hod_atr":2.256025,"atr":0.022163,"spread_atr":0.451205,"own_change_pct":0.210825,"rel_strength_pct":{"SPY":0.199816,"IWM":0.238823}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.34364},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0f9ab4e81b3b","ts":"2026-09-21T16:58:25.405067+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6607,"target":10.02,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":130.9,"room_to_5d_high_atr":-0.72},"price":9.845,"vwap":9.8289,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":4.0,"volume_pace":0.91,"trend":"flat","recent_slope_pct":0.1733,"volatility":"high"},"price":9.845,"volume":{"bars":208,"last_bar_volume":227902.0,"baseline_avg":19700.2,"bar_rvol":11.568512,"raw_accel":31.862581,"smooth_accel":1.582257,"accel_momentum":0.827883,"rvol_3bar":[1.021452,0.347872,11.568512],"trend_3bar":"MIXED","projected_rvol":1.131223},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":9543.0,"sell_vol":825.0,"unclassified_vol":0.0,"imbalance":0.840856,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":0.187004},"context":{"vwap":9.828858,"price_vs_vwap_pct":0.164227,"ema9":9.790072,"ema20":9.759278,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.717391,"dist_to_hod_atr":6.643614,"atr":0.041393,"spread_atr":0.241586,"own_change_pct":0.561798,"rel_strength_pct":{"SPY":0.550788,"IWM":0.589795}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":9.727458},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"33d56e147f6a","ts":"2026-09-21T16:58:25.405067+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7961,"target":8.94,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.885,"vwap":8.7778,"ext_from_open_pct":4.28,"max_ext_allowed_pct":3.0,"volume_pace":0.51,"trend":"flat","recent_slope_pct":0.0153,"volatility":"unknown"},"price":8.885,"volume":{"bars":208,"last_bar_volume":16729.0,"baseline_avg":34107.0,"bar_rvol":0.490486,"raw_accel":-0.132718,"smooth_accel":-0.134321,"accel_momentum":0.280463,"rvol_3bar":[0.724611,0.535365,0.490486],"trend_3bar":"DECELERATING","projected_rvol":0.107814},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":279.0,"sell_vol":1479.0,"unclassified_vol":0.0,"imbalance":-0.682594,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":0.043055},"context":{"vwap":8.77782,"price_vs_vwap_pct":1.221028,"ema9":8.878621,"ema20":8.874587,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.615213,"dist_to_hod_atr":2.481628,"atr":0.022163,"spread_atr":0.451205,"own_change_pct":0.210825,"rel_strength_pct":{"SPY":0.199816,"IWM":0.238823}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.334803},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"77e8cc830f8c","ts":"2026-09-21T16:58:30.705780+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.82 below VWAP $9.83","plan":{"state":"PASS","setup":"","stop":9.6523,"target":10.02,"target_label":"premarket_high","reward_risk":1.22,"pos_in_5d_range_pct":129.1,"room_to_5d_high_atr":-0.68},"price":9.818,"vwap":9.8289,"ext_from_open_pct":-1.72,"max_ext_allowed_pct":4.0,"volume_pace":0.912,"trend":"flat","recent_slope_pct":0.1183,"volatility":"high"},"price":9.818,"volume":{"bars":208,"last_bar_volume":227902.0,"baseline_avg":19700.2,"bar_rvol":11.568512,"raw_accel":31.862581,"smooth_accel":1.582257,"accel_momentum":0.827883,"rvol_3bar":[1.021452,0.347872,11.568512],"trend_3bar":"MIXED","projected_rvol":2.425452},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":23220.0,"sell_vol":1233.0,"unclassified_vol":0.0,"imbalance":0.899153,"bid":9.85,"ask":9.86,"spread_pct":0.101471,"quote_size_imbalance":null,"quote_age_s":1.192843},"context":{"vwap":9.828858,"price_vs_vwap_pct":-0.110474,"ema9":9.790072,"ema20":9.759278,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.98419,"dist_to_hod_atr":7.295896,"atr":0.041393,"spread_atr":0.241586,"own_change_pct":0.561798,"rel_strength_pct":{"SPY":0.550788,"IWM":0.589795}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":10.401868},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"46db83ceb1b7","ts":"2026-09-21T16:58:35.912916+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6607,"target":10.02,"target_label":"premarket_high","reward_risk":1.0,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-0.72},"price":9.84,"vwap":9.8289,"ext_from_open_pct":-1.5,"max_ext_allowed_pct":3.0,"volume_pace":0.914,"trend":"flat","recent_slope_pct":0.1631,"volatility":"high"},"price":9.84,"volume":{"bars":208,"last_bar_volume":227902.0,"baseline_avg":19700.2,"bar_rvol":11.568512,"raw_accel":31.862581,"smooth_accel":1.582257,"accel_momentum":0.827883,"rvol_3bar":[1.021452,0.347872,11.568512],"trend_3bar":"MIXED","projected_rvol":3.845049},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":26440.0,"sell_vol":16897.0,"unclassified_vol":0.0,"imbalance":0.220204,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":0.272213},"context":{"vwap":9.828858,"price_vs_vwap_pct":0.113356,"ema9":9.790072,"ema20":9.759278,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.766798,"dist_to_hod_atr":6.764407,"atr":0.041393,"spread_atr":0.241586,"own_change_pct":0.561798,"rel_strength_pct":{"SPY":0.550788,"IWM":0.589795}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":2.547438},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d7772aabf38d","ts":"2026-09-21T16:58:41.069092+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.82 below VWAP $9.83","plan":{"state":"PASS","setup":"","stop":9.6545,"target":10.02,"target_label":"premarket_high","reward_risk":1.21,"pos_in_5d_range_pct":129.3,"room_to_5d_high_atr":-0.69},"price":9.8202,"vwap":9.8289,"ext_from_open_pct":-1.7,"max_ext_allowed_pct":3.0,"volume_pace":0.914,"trend":"flat","recent_slope_pct":0.1228,"volatility":"high"},"price":9.8202,"volume":{"bars":208,"last_bar_volume":227902.0,"baseline_avg":19700.2,"bar_rvol":11.568512,"raw_accel":31.862581,"smooth_accel":1.582257,"accel_momentum":0.827883,"rvol_3bar":[1.021452,0.347872,11.568512],"trend_3bar":"MIXED","projected_rvol":4.004156},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":31889.0,"sell_vol":18123.0,"unclassified_vol":0.0,"imbalance":0.275254,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":1.68301},"context":{"vwap":9.828858,"price_vs_vwap_pct":-0.088091,"ema9":9.790072,"ema20":9.759278,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.962451,"dist_to_hod_atr":7.242747,"atr":0.041393,"spread_atr":0.241586,"own_change_pct":0.561798,"rel_strength_pct":{"SPY":0.550788,"IWM":0.589795}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":3.184278},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a1e924fd3e74","ts":"2026-09-21T16:58:46.179819+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6607,"target":10.02,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":130.9,"room_to_5d_high_atr":-0.72},"price":9.845,"vwap":9.8289,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":3.0,"volume_pace":0.915,"trend":"flat","recent_slope_pct":0.1733,"volatility":"high"},"price":9.845,"volume":{"bars":208,"last_bar_volume":227902.0,"baseline_avg":19700.2,"bar_rvol":11.568512,"raw_accel":31.862581,"smooth_accel":1.582257,"accel_momentum":0.827883,"rvol_3bar":[1.021452,0.347872,11.568512],"trend_3bar":"MIXED","projected_rvol":4.083356},"flow":{"window_s":30,"trades":118,"trade_rate":3.933333,"buy_vol":39399.0,"sell_vol":18423.0,"unclassified_vol":0.0,"imbalance":0.362768,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":3.605027},"context":{"vwap":9.828858,"price_vs_vwap_pct":0.164227,"ema9":9.790072,"ema20":9.759278,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.717391,"dist_to_hod_atr":6.643614,"atr":0.041393,"spread_atr":0.241586,"own_change_pct":0.561798,"rel_strength_pct":{"SPY":0.550788,"IWM":0.589795}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":4.196692},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f8f2fc590af3","ts":"2026-09-21T16:59:01.636514+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.137,"target":5.2,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1889,"vwap":5.1776,"ext_from_open_pct":-0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.839,"trend":"flat","recent_slope_pct":-0.0534,"volatility":"unknown"},"price":5.1889,"volume":{"bars":209,"last_bar_volume":21678.0,"baseline_avg":26617.2,"bar_rvol":0.814436,"raw_accel":-0.2819,"smooth_accel":-0.167215,"accel_momentum":-1.280505,"rvol_3bar":[1.120223,1.173927,0.814436],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":185.0,"sell_vol":11927.0,"unclassified_vol":0.0,"imbalance":-0.969452,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":4.424355},"context":{"vwap":5.177554,"price_vs_vwap_pct":0.21913,"ema9":5.187008,"ema20":5.183088,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.096226,"dist_to_hod_atr":7.000801,"atr":0.01587,"spread_atr":0.630135,"own_change_pct":-0.281039,"rel_strength_pct":{"SPY":-0.295416,"IWM":-0.249541}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.789556},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a6fddf188b0e","ts":"2026-09-21T16:59:17.032232+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.82 below VWAP $9.83","plan":{"state":"PASS","setup":"","stop":9.6543,"target":10.02,"target_label":"premarket_high","reward_risk":1.21,"pos_in_5d_range_pct":129.3,"room_to_5d_high_atr":-0.69},"price":9.82,"vwap":9.8289,"ext_from_open_pct":-1.7,"max_ext_allowed_pct":3.0,"volume_pace":0.916,"trend":"flat","recent_slope_pct":0.0997,"volatility":"high"},"price":9.82,"volume":{"bars":209,"last_bar_volume":71615.0,"baseline_avg":30917.55,"bar_rvol":2.316322,"raw_accel":-0.685764,"smooth_accel":1.83141,"accel_momentum":0.249153,"rvol_3bar":[0.347872,11.568512,2.316322],"trend_3bar":"MIXED","projected_rvol":1.974915},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":13427.0,"sell_vol":13607.0,"unclassified_vol":0.0,"imbalance":-0.006658,"bid":9.81,"ask":9.82,"spread_pct":0.101885,"quote_size_imbalance":null,"quote_age_s":0.179642},"context":{"vwap":9.82893,"price_vs_vwap_pct":-0.090851,"ema9":9.799057,"ema20":9.76649,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.964427,"dist_to_hod_atr":7.206456,"atr":0.041629,"spread_atr":0.240215,"own_change_pct":0.556203,"rel_strength_pct":{"SPY":0.541827,"IWM":0.587701}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.015423},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"647c0520764f","ts":"2026-09-21T16:59:22.174511+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7815,"target":8.94,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8702,"vwap":8.778,"ext_from_open_pct":4.11,"max_ext_allowed_pct":4.0,"volume_pace":0.509,"trend":"flat","recent_slope_pct":-0.0295,"volatility":"unknown"},"price":8.8702,"volume":{"bars":209,"last_bar_volume":19177.0,"baseline_avg":32075.9,"bar_rvol":0.597863,"raw_accel":0.146333,"smooth_accel":-0.4123,"accel_momentum":-0.277979,"rvol_3bar":[0.535365,0.490486,0.597863],"trend_3bar":"MIXED","projected_rvol":0.352779},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":4681.0,"sell_vol":543.0,"unclassified_vol":0.0,"imbalance":0.792113,"bid":8.87,"ask":8.88,"spread_pct":0.112676,"quote_size_imbalance":null,"quote_age_s":1.081887},"context":{"vwap":8.777933,"price_vs_vwap_pct":1.051123,"ema9":8.879577,"ema20":8.875426,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.780761,"dist_to_hod_atr":3.171519,"atr":0.022008,"spread_atr":0.454372,"own_change_pct":0.086754,"rel_strength_pct":{"SPY":0.072377,"IWM":0.118252}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.473575},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f3f8f7798248","ts":"2026-09-21T16:59:27.312496+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.7863,"target":8.94,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.875,"vwap":8.778,"ext_from_open_pct":4.17,"max_ext_allowed_pct":4.0,"volume_pace":0.509,"trend":"flat","recent_slope_pct":-0.0187,"volatility":"unknown"},"price":8.875,"volume":{"bars":209,"last_bar_volume":19177.0,"baseline_avg":32075.9,"bar_rvol":0.597863,"raw_accel":0.146333,"smooth_accel":-0.4123,"accel_momentum":-0.277979,"rvol_3bar":[0.535365,0.490486,0.597863],"trend_3bar":"MIXED","projected_rvol":0.333054},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":3776.0,"sell_vol":1087.0,"unclassified_vol":0.0,"imbalance":0.552951,"bid":8.87,"ask":8.88,"spread_pct":0.112676,"quote_size_imbalance":null,"quote_age_s":2.03879},"context":{"vwap":8.777933,"price_vs_vwap_pct":1.105805,"ema9":8.879577,"ema20":8.875426,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.727069,"dist_to_hod_atr":2.95342,"atr":0.022008,"spread_atr":0.454372,"own_change_pct":0.086754,"rel_strength_pct":{"SPY":0.072377,"IWM":0.118252}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.330589},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f06602baf44b","ts":"2026-09-21T16:59:32.509677+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3648,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.353,"trend":"flat","recent_slope_pct":0.0002,"volatility":"unknown"},"price":6.48,"volume":{"bars":209,"last_bar_volume":12333.0,"baseline_avg":87471.55,"bar_rvol":0.140994,"raw_accel":-0.436022,"smooth_accel":-0.786651,"accel_momentum":-0.121849,"rvol_3bar":[0.264463,0.167444,0.140994],"trend_3bar":"DECELERATING","projected_rvol":0.188376},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":227.0,"sell_vol":5573.0,"unclassified_vol":0.0,"imbalance":-0.921724,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.073563},"context":{"vwap":6.364695,"price_vs_vwap_pct":1.811641,"ema9":6.469974,"ema20":6.466434,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.574606,"atr":0.017403,"spread_atr":0.574606,"own_change_pct":0.05103,"rel_strength_pct":{"SPY":0.036653,"IWM":0.082528}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.129958},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b9afa9e62b30","ts":"2026-09-21T16:59:32.509677+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7813,"target":8.94,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.87,"vwap":8.778,"ext_from_open_pct":4.11,"max_ext_allowed_pct":3.0,"volume_pace":0.509,"trend":"flat","recent_slope_pct":-0.03,"volatility":"unknown"},"price":8.87,"volume":{"bars":209,"last_bar_volume":19177.0,"baseline_avg":32075.9,"bar_rvol":0.597863,"raw_accel":0.146333,"smooth_accel":-0.4123,"accel_momentum":-0.277979,"rvol_3bar":[0.535365,0.490486,0.597863],"trend_3bar":"MIXED","projected_rvol":1.11648},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":7445.0,"sell_vol":11952.0,"unclassified_vol":0.0,"imbalance":-0.232356,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.022668},"context":{"vwap":8.777933,"price_vs_vwap_pct":1.048844,"ema9":8.879577,"ema20":8.875426,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.782998,"dist_to_hod_atr":3.180607,"atr":0.022008,"spread_atr":0.454372,"own_change_pct":0.086754,"rel_strength_pct":{"SPY":0.072377,"IWM":0.118252}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.138917},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a9d8e56c9968","ts":"2026-09-21T16:59:37.637548+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6706,"target":10.02,"target_label":"premarket_high","reward_risk":1.11,"pos_in_5d_range_pct":130.3,"room_to_5d_high_atr":-0.71},"price":9.8363,"vwap":9.8289,"ext_from_open_pct":-1.54,"max_ext_allowed_pct":3.0,"volume_pace":0.915,"trend":"flat","recent_slope_pct":0.1329,"volatility":"high"},"price":9.8363,"volume":{"bars":209,"last_bar_volume":71615.0,"baseline_avg":30917.55,"bar_rvol":2.316322,"raw_accel":-0.685764,"smooth_accel":1.83141,"accel_momentum":0.249153,"rvol_3bar":[0.347872,11.568512,2.316322],"trend_3bar":"MIXED","projected_rvol":1.077066},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":1615.0,"sell_vol":9967.0,"unclassified_vol":0.0,"imbalance":-0.721119,"bid":9.81,"ask":9.82,"spread_pct":0.101885,"quote_size_imbalance":null,"quote_age_s":2.406198},"context":{"vwap":9.82893,"price_vs_vwap_pct":0.074986,"ema9":9.799057,"ema20":9.76649,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.80336,"dist_to_hod_atr":6.814905,"atr":0.041629,"spread_atr":0.240215,"own_change_pct":0.556203,"rel_strength_pct":{"SPY":0.541827,"IWM":0.587701}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.670344},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"887188f9b9d3","ts":"2026-09-21T16:59:37.637548+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.412,"target":7.775,"target_label":"range_20d_high","reward_risk":20.04,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4768,"vwap":6.3648,"ext_from_open_pct":2.97,"max_ext_allowed_pct":3.0,"volume_pace":1.352,"trend":"flat","recent_slope_pct":-0.0097,"volatility":"unknown"},"price":6.4768,"volume":{"bars":209,"last_bar_volume":12333.0,"baseline_avg":87471.55,"bar_rvol":0.140994,"raw_accel":-0.436022,"smooth_accel":-0.786651,"accel_momentum":-0.121849,"rvol_3bar":[0.264463,0.167444,0.140994],"trend_3bar":"DECELERATING","projected_rvol":0.165299},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":188.0,"sell_vol":5299.0,"unclassified_vol":0.0,"imbalance":-0.931474,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.156693},"context":{"vwap":6.364695,"price_vs_vwap_pct":1.761364,"ema9":6.469974,"ema20":6.466434,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.20339,"dist_to_hod_atr":0.758481,"atr":0.017403,"spread_atr":0.574606,"own_change_pct":0.05103,"rel_strength_pct":{"SPY":0.036653,"IWM":0.082528}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.131333},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ad53fedafd47","ts":"2026-09-21T16:59:42.910441+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.82 below VWAP $9.83","plan":{"state":"PASS","setup":"","stop":9.652,"target":10.02,"target_label":"premarket_high","reward_risk":1.22,"pos_in_5d_range_pct":129.1,"room_to_5d_high_atr":-0.68},"price":9.8177,"vwap":9.8289,"ext_from_open_pct":-1.72,"max_ext_allowed_pct":3.0,"volume_pace":0.914,"trend":"flat","recent_slope_pct":0.095,"volatility":"high"},"price":9.8177,"volume":{"bars":209,"last_bar_volume":71615.0,"baseline_avg":30917.55,"bar_rvol":2.316322,"raw_accel":-0.685764,"smooth_accel":1.83141,"accel_momentum":0.249153,"rvol_3bar":[0.347872,11.568512,2.316322],"trend_3bar":"MIXED","projected_rvol":0.944806},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":1316.0,"sell_vol":9130.0,"unclassified_vol":0.0,"imbalance":-0.748038,"bid":9.81,"ask":9.82,"spread_pct":0.101885,"quote_size_imbalance":null,"quote_age_s":1.672088},"context":{"vwap":9.82893,"price_vs_vwap_pct":-0.114251,"ema9":9.799057,"ema20":9.76649,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.987154,"dist_to_hod_atr":7.261705,"atr":0.041629,"spread_atr":0.240215,"own_change_pct":0.556203,"rel_strength_pct":{"SPY":0.541827,"IWM":0.587701}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.732696},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fc4d50f90331","ts":"2026-09-21T16:59:48.041740+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7923,"target":8.94,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8811,"vwap":8.778,"ext_from_open_pct":4.24,"max_ext_allowed_pct":3.0,"volume_pace":0.508,"trend":"flat","recent_slope_pct":-0.005,"volatility":"unknown"},"price":8.8811,"volume":{"bars":209,"last_bar_volume":19177.0,"baseline_avg":32075.9,"bar_rvol":0.597863,"raw_accel":0.146333,"smooth_accel":-0.4123,"accel_momentum":-0.277979,"rvol_3bar":[0.535365,0.490486,0.597863],"trend_3bar":"MIXED","projected_rvol":0.820074},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":5220.0,"sell_vol":11694.0,"unclassified_vol":0.0,"imbalance":-0.38276,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.490195},"context":{"vwap":8.777933,"price_vs_vwap_pct":1.175298,"ema9":8.879577,"ema20":8.875426,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.658837,"dist_to_hod_atr":2.676253,"atr":0.022008,"spread_atr":0.454372,"own_change_pct":0.086754,"rel_strength_pct":{"SPY":0.072377,"IWM":0.118252}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.228838},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e13dbed14b5d","ts":"2026-09-21T16:59:53.169865+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7715,"target":8.94,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8601,"vwap":8.7781,"ext_from_open_pct":3.99,"max_ext_allowed_pct":3.0,"volume_pace":0.508,"trend":"flat","recent_slope_pct":-0.0523,"volatility":"unknown"},"price":8.8601,"volume":{"bars":209,"last_bar_volume":19177.0,"baseline_avg":32075.9,"bar_rvol":0.597863,"raw_accel":0.146333,"smooth_accel":-0.4123,"accel_momentum":-0.277979,"rvol_3bar":[0.535365,0.490486,0.597863],"trend_3bar":"MIXED","projected_rvol":1.190873},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":5683.0,"sell_vol":23981.0,"unclassified_vol":0.0,"imbalance":-0.616842,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":2.028994},"context":{"vwap":8.777933,"price_vs_vwap_pct":0.936061,"ema9":8.879577,"ema20":8.875426,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.893736,"dist_to_hod_atr":3.630435,"atr":0.022008,"spread_atr":0.454372,"own_change_pct":0.086754,"rel_strength_pct":{"SPY":0.072377,"IWM":0.118252}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.368787},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3028ca2ce2dd","ts":"2026-09-21T16:59:58.306001+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.789,"target":8.94,"target_label":"ceiling","reward_risk":0.7,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8778,"vwap":8.7781,"ext_from_open_pct":4.2,"max_ext_allowed_pct":3.0,"volume_pace":0.508,"trend":"flat","recent_slope_pct":-0.0124,"volatility":"unknown"},"price":8.8778,"volume":{"bars":209,"last_bar_volume":19177.0,"baseline_avg":32075.9,"bar_rvol":0.597863,"raw_accel":0.146333,"smooth_accel":-0.4123,"accel_momentum":-0.277979,"rvol_3bar":[0.535365,0.490486,0.597863],"trend_3bar":"MIXED","projected_rvol":1.099027},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":6062.0,"sell_vol":23217.0,"unclassified_vol":0.0,"imbalance":-0.585915,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.736803},"context":{"vwap":8.777933,"price_vs_vwap_pct":1.137703,"ema9":8.879577,"ema20":8.875426,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.695749,"dist_to_hod_atr":2.826196,"atr":0.022008,"spread_atr":0.454372,"own_change_pct":0.086754,"rel_strength_pct":{"SPY":0.072377,"IWM":0.118252}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.350297},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ad71590cb57c","ts":"2026-09-21T17:00:03.452541+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.9382,"target":13.53,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":159.2,"room_to_5d_high_atr":-1.77},"price":13.33,"vwap":12.9111,"ext_from_open_pct":2.46,"max_ext_allowed_pct":3.0,"volume_pace":0.64,"trend":"flat","recent_slope_pct":-0.1574,"volatility":"high"},"price":13.33,"volume":{"bars":210,"last_bar_volume":20098.0,"baseline_avg":15757.8,"bar_rvol":1.275432,"raw_accel":0.574955,"smooth_accel":-0.553866,"accel_momentum":-1.013239,"rvol_3bar":[0.603324,0.803015,1.275432],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":1037.0,"sell_vol":13496.0,"unclassified_vol":0.0,"imbalance":-0.85729,"bid":13.29,"ask":13.34,"spread_pct":0.375516,"quote_size_imbalance":null,"quote_age_s":0.188954},"context":{"vwap":12.911062,"price_vs_vwap_pct":3.2448,"ema9":13.352597,"ema20":13.348883,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-3.405797,"dist_to_hod_atr":4.945029,"atr":0.095045,"spread_atr":0.526067,"own_change_pct":-0.503835,"rel_strength_pct":{"SPY":-0.525204,"IWM":-0.481086}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.093415},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ec9a8ffa9f1f","ts":"2026-09-21T17:00:03.452541+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.22,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":119.6,"room_to_5d_high_atr":-0.62},"price":8.0864,"vwap":8.0783,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":3.0,"volume_pace":0.554,"trend":"flat","recent_slope_pct":-0.0214,"volatility":"high"},"price":8.0864,"volume":{"bars":210,"last_bar_volume":627.0,"baseline_avg":5009.85,"bar_rvol":0.125153,"raw_accel":-0.499386,"smooth_accel":-0.708123,"accel_momentum":-0.47675,"rvol_3bar":[0.072204,0.228052,0.125153],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":5.0,"sell_vol":33.0,"unclassified_vol":0.0,"imbalance":-0.736842,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":3.930269},"context":{"vwap":8.078279,"price_vs_vwap_pct":0.10053,"ema9":8.090666,"ema20":8.072593,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.48976,"dist_to_hod_atr":6.94713,"atr":0.042089,"spread_atr":0.23759,"own_change_pct":0.137312,"rel_strength_pct":{"SPY":0.115943,"IWM":0.16006}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.092218},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"611c83709ac2","ts":"2026-09-21T17:00:03.452541+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7775,"target":8.94,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8662,"vwap":8.7781,"ext_from_open_pct":4.06,"max_ext_allowed_pct":3.0,"volume_pace":0.508,"trend":"flat","recent_slope_pct":-0.0577,"volatility":"unknown"},"price":8.8662,"volume":{"bars":210,"last_bar_volume":34399.0,"baseline_avg":30330.05,"bar_rvol":1.134156,"raw_accel":0.793763,"smooth_accel":0.265753,"accel_momentum":0.678053,"rvol_3bar":[0.490486,0.597863,1.134156],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":2491.0,"sell_vol":12633.0,"unclassified_vol":0.0,"imbalance":-0.67059,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.067341},"context":{"vwap":8.778111,"price_vs_vwap_pct":1.003512,"ema9":8.876662,"ema20":8.874433,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.825503,"dist_to_hod_atr":3.338191,"atr":0.022108,"spread_atr":0.452329,"own_change_pct":-0.168919,"rel_strength_pct":{"SPY":-0.190288,"IWM":-0.14617}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.760553},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b704248ef146","ts":"2026-09-21T17:00:09.216442+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.7% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":6.5883,"target":6.94,"target_label":"ceiling","reward_risk":1.15,"pos_in_5d_range_pct":118.8,"room_to_5d_high_atr":-0.51},"price":6.7516,"vwap":6.5826,"ext_from_open_pct":5.66,"max_ext_allowed_pct":4.0,"volume_pace":0.601,"trend":"flat","recent_slope_pct":0.0493,"volatility":"high"},"price":6.7516,"volume":{"bars":208,"last_bar_volume":111.0,"baseline_avg":2243.4,"bar_rvol":0.049478,"raw_accel":-0.820968,"smooth_accel":0.459547,"accel_momentum":-0.052546,"rvol_3bar":[1.482934,0.26141,0.049478],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":90.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.71,"ask":6.74,"spread_pct":0.446097,"quote_size_imbalance":null,"quote_age_s":25.68323},"context":{"vwap":6.582573,"price_vs_vwap_pct":2.567791,"ema9":6.735165,"ema20":6.745857,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-2.714697,"dist_to_hod_atr":6.688657,"atr":0.028167,"spread_atr":1.065073,"own_change_pct":-0.411364,"rel_strength_pct":{"SPY":-0.432733,"IWM":-0.388616}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.049478},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"3a7b8e03df98","ts":"2026-09-21T17:00:09.216442+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":11.1425,"target":11.275,"target_label":"range_20d_high","reward_risk":0.18,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.255,"vwap":11.0171,"ext_from_open_pct":5.19,"max_ext_allowed_pct":4.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":-0.1316,"volatility":"unknown"},"price":11.255,"volume":{"bars":210,"last_bar_volume":24802.0,"baseline_avg":57521.75,"bar_rvol":0.431176,"raw_accel":-0.377429,"smooth_accel":-0.585453,"accel_momentum":-0.613327,"rvol_3bar":[0.81318,0.705939,0.431176],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":3471.0,"sell_vol":311.0,"unclassified_vol":0.0,"imbalance":0.835537,"bid":11.25,"ask":11.26,"spread_pct":0.088849,"quote_size_imbalance":null,"quote_age_s":1.538228},"context":{"vwap":11.017048,"price_vs_vwap_pct":2.159853,"ema9":11.283909,"ema20":11.288515,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-2.045257,"dist_to_hod_atr":4.679213,"atr":0.050222,"spread_atr":0.199115,"own_change_pct":-0.48696,"rel_strength_pct":{"SPY":-0.508329,"IWM":-0.464211}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.360263},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"920f9d157f79","ts":"2026-09-21T17:00:09.216442+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.1331,"target":5.2,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.185,"vwap":5.1776,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.835,"trend":"flat","recent_slope_pct":-0.0274,"volatility":"unknown"},"price":5.185,"volume":{"bars":210,"last_bar_volume":3725.0,"baseline_avg":27453.3,"bar_rvol":0.135685,"raw_accel":-0.828167,"smooth_accel":-0.51615,"accel_momentum":-0.348935,"rvol_3bar":[1.173927,0.814436,0.135685],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":231.0,"sell_vol":1871.0,"unclassified_vol":0.0,"imbalance":-0.780209,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":1.68564},"context":{"vwap":5.177562,"price_vs_vwap_pct":0.143658,"ema9":5.188746,"ema20":5.184289,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.169811,"dist_to_hod_atr":7.261903,"atr":0.015836,"spread_atr":0.63147,"own_change_pct":0.109827,"rel_strength_pct":{"SPY":0.088458,"IWM":0.132575}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.105863},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ecf618c312f3","ts":"2026-09-21T17:00:14.455869+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.4% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":6.5739,"target":6.94,"target_label":"ceiling","reward_risk":1.24,"pos_in_5d_range_pct":118.0,"room_to_5d_high_atr":-0.49},"price":6.7372,"vwap":6.5826,"ext_from_open_pct":5.43,"max_ext_allowed_pct":4.0,"volume_pace":0.601,"trend":"flat","recent_slope_pct":0.0065,"volatility":"high"},"price":6.7372,"volume":{"bars":208,"last_bar_volume":111.0,"baseline_avg":2243.4,"bar_rvol":0.049478,"raw_accel":-0.820968,"smooth_accel":0.459547,"accel_momentum":-0.052546,"rvol_3bar":[1.482934,0.26141,0.049478],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":90.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.978022,"bid":6.71,"ask":6.74,"spread_pct":0.446097,"quote_size_imbalance":null,"quote_age_s":0.842718},"context":{"vwap":6.582573,"price_vs_vwap_pct":2.349032,"ema9":6.735165,"ema20":6.745857,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-2.92219,"dist_to_hod_atr":7.199892,"atr":0.028167,"spread_atr":1.065073,"own_change_pct":-0.411364,"rel_strength_pct":{"SPY":-0.432733,"IWM":-0.388616}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.048391},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"bc3cf86d0b91","ts":"2026-09-21T17:00:19.668451+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.5755,"target":12.0,"target_label":"premarket_high","reward_risk":1.08,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.87},"price":11.78,"vwap":11.5847,"ext_from_open_pct":0.94,"max_ext_allowed_pct":3.0,"volume_pace":0.229,"trend":"flat","recent_slope_pct":-0.0205,"volatility":"high"},"price":11.78,"volume":{"bars":210,"last_bar_volume":1055.0,"baseline_avg":8948.6,"bar_rvol":0.117896,"raw_accel":-0.883657,"smooth_accel":-0.822493,"accel_momentum":-0.016193,"rvol_3bar":[0.135185,1.061417,0.117896],"trend_3bar":"MIXED","projected_rvol":1.335302},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":259.0,"sell_vol":3758.0,"unclassified_vol":0.0,"imbalance":-0.871048,"bid":11.78,"ask":11.82,"spread_pct":0.338983,"quote_size_imbalance":null,"quote_age_s":0.538332},"context":{"vwap":11.584436,"price_vs_vwap_pct":1.688165,"ema9":11.809546,"ema20":11.754227,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.669449,"dist_to_hod_atr":3.580251,"atr":0.055862,"spread_atr":0.71605,"own_change_pct":-0.253165,"rel_strength_pct":{"SPY":-0.274533,"IWM":-0.230416}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.102693},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"988a0bfd8bb2","ts":"2026-09-21T17:00:24.823337+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"held 47.2s, plan says WATCH; stop 6.39, target 6.49 (ceiling), R:R 0.62; R:R 0.62 < 2.0 at 6.45; pullback: buy 6.43-6.45 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":6.3855,"target":6.49,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.45,"vwap":6.3651,"ext_from_open_pct":2.54,"max_ext_allowed_pct":3.0,"volume_pace":1.352,"trend":"flat","recent_slope_pct":-0.1005,"volatility":"unknown"},"price":6.45,"volume":{"bars":210,"last_bar_volume":25683.0,"baseline_avg":83083.15,"bar_rvol":0.309124,"raw_accel":0.236496,"smooth_accel":-0.707684,"accel_momentum":0.078966,"rvol_3bar":[0.167444,0.140994,0.309124],"trend_3bar":"MIXED","projected_rvol":1.098322},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":14668.0,"sell_vol":26101.0,"unclassified_vol":0.0,"imbalance":-0.280434,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":0.450121},"context":{"vwap":6.364857,"price_vs_vwap_pct":1.337712,"ema9":6.469979,"ema20":6.466773,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.616333,"dist_to_hod_atr":2.34563,"atr":0.017053,"spread_atr":0.586408,"own_change_pct":-0.07722,"rel_strength_pct":{"SPY":-0.098589,"IWM":-0.054471}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.086689},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d8be90c7b037","ts":"2026-09-21T17:00:35.140597+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"held 57.5s, plan says PASS; stop 6.40, target 7.78 (range_20d_high), R:R 20.36; target 1.32 away > ~0.08 reachable in 174 min","plan":{"state":"PASS","setup":"","stop":6.3953,"target":7.775,"target_label":"range_20d_high","reward_risk":20.36,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4599,"vwap":6.3651,"ext_from_open_pct":2.7,"max_ext_allowed_pct":3.0,"volume_pace":1.351,"trend":"flat","recent_slope_pct":-0.0699,"volatility":"unknown"},"price":6.4599,"volume":{"bars":210,"last_bar_volume":25683.0,"baseline_avg":83083.15,"bar_rvol":0.309124,"raw_accel":0.236496,"smooth_accel":-0.707684,"accel_momentum":0.078966,"rvol_3bar":[0.167444,0.140994,0.309124],"trend_3bar":"MIXED","projected_rvol":0.855243},"flow":{"window_s":30,"trades":149,"trade_rate":4.966667,"buy_vol":15647.0,"sell_vol":19084.0,"unclassified_vol":0.0,"imbalance":-0.098961,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":1.788293},"context":{"vwap":6.364857,"price_vs_vwap_pct":1.493254,"ema9":6.469979,"ema20":6.466773,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.46379,"dist_to_hod_atr":1.765087,"atr":0.017053,"spread_atr":0.586408,"own_change_pct":-0.07722,"rel_strength_pct":{"SPY":-0.098589,"IWM":-0.054471}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.030591},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ba2779d03856","ts":"2026-09-21T17:00:50.485513+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.4% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":11.1702,"target":11.4631,"target_label":"clear air (typical 60-min move)","reward_risk":1.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.283,"vwap":11.0176,"ext_from_open_pct":5.45,"max_ext_allowed_pct":4.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":-0.0819,"volatility":"unknown"},"price":11.283,"volume":{"bars":210,"last_bar_volume":24802.0,"baseline_avg":57521.75,"bar_rvol":0.431176,"raw_accel":-0.377429,"smooth_accel":-0.585453,"accel_momentum":-0.613327,"rvol_3bar":[0.81318,0.705939,0.431176],"trend_3bar":"DECELERATING","projected_rvol":1.126647},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":8398.0,"sell_vol":14939.0,"unclassified_vol":0.0,"imbalance":-0.280285,"bid":11.25,"ask":11.26,"spread_pct":0.088849,"quote_size_imbalance":null,"quote_age_s":2.671158},"context":{"vwap":11.017048,"price_vs_vwap_pct":2.414005,"ema9":11.283909,"ema20":11.288515,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.801567,"dist_to_hod_atr":4.12169,"atr":0.050222,"spread_atr":0.199115,"own_change_pct":-0.48696,"rel_strength_pct":{"SPY":-0.508329,"IWM":-0.464211}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.120852},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"531091a4d2b3","ts":"2026-09-21T17:00:55.616616+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":11.1379,"target":11.275,"target_label":"range_20d_high","reward_risk":0.22,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.2504,"vwap":11.0176,"ext_from_open_pct":5.14,"max_ext_allowed_pct":3.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":-0.1398,"volatility":"unknown"},"price":11.2504,"volume":{"bars":210,"last_bar_volume":24802.0,"baseline_avg":57521.75,"bar_rvol":0.431176,"raw_accel":-0.377429,"smooth_accel":-0.585453,"accel_momentum":-0.613327,"rvol_3bar":[0.81318,0.705939,0.431176],"trend_3bar":"DECELERATING","projected_rvol":1.160628},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":7514.0,"sell_vol":14956.0,"unclassified_vol":0.0,"imbalance":-0.331197,"bid":11.25,"ask":11.26,"spread_pct":0.088849,"quote_size_imbalance":null,"quote_age_s":2.963809},"context":{"vwap":11.017048,"price_vs_vwap_pct":2.1181,"ema9":11.283909,"ema20":11.288515,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-2.085292,"dist_to_hod_atr":4.770806,"atr":0.050222,"spread_atr":0.199115,"own_change_pct":-0.48696,"rel_strength_pct":{"SPY":-0.508329,"IWM":-0.464211}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.142804},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"cb0fc85357e5","ts":"2026-09-21T17:01:00.729469+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":6.5867,"target":6.94,"target_label":"ceiling","reward_risk":1.16,"pos_in_5d_range_pct":118.8,"room_to_5d_high_atr":-0.51},"price":6.75,"vwap":6.5833,"ext_from_open_pct":5.63,"max_ext_allowed_pct":4.0,"volume_pace":0.601,"trend":"flat","recent_slope_pct":0.0446,"volatility":"high"},"price":6.75,"volume":{"bars":208,"last_bar_volume":111.0,"baseline_avg":2243.4,"bar_rvol":0.049478,"raw_accel":-0.820968,"smooth_accel":0.459547,"accel_momentum":-0.052546,"rvol_3bar":[1.482934,0.26141,0.049478],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":7757.0,"sell_vol":1341.0,"unclassified_vol":0.0,"imbalance":0.70521,"bid":6.72,"ask":6.75,"spread_pct":0.445434,"quote_size_imbalance":null,"quote_age_s":18.003948},"context":{"vwap":6.582573,"price_vs_vwap_pct":2.543485,"ema9":6.735165,"ema20":6.745857,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-2.737752,"dist_to_hod_atr":6.745461,"atr":0.028167,"spread_atr":1.065073,"own_change_pct":-0.411364,"rel_strength_pct":{"SPY":-0.428198,"IWM":-0.376371}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.034893},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"cc3791968a29","ts":"2026-09-21T17:01:05.861860+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 304.6s, plan says WATCH; stop 8.58, target 8.76 (premarket_high), R:R 0.74; no reclaim yet (needs a close > 8.69); R:R 0.74 < 2.0 at 8.69; pullback: buy 8.68-8.70 holding + reclaim/fading selling","plan":{"state":"WATCH","setup":"","stop":8.5831,"target":8.76,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6319,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.84,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":8.685,"volume":{"bars":211,"last_bar_volume":2983.0,"baseline_avg":2214.45,"bar_rvol":1.347061,"raw_accel":2.378256,"smooth_accel":1.617532,"accel_momentum":0.790621,"rvol_3bar":[0.672487,0.394831,1.347061],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":105.0,"sell_vol":23.0,"unclassified_vol":0.0,"imbalance":0.640625,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":4.678425},"context":{"vwap":8.631888,"price_vs_vwap_pct":0.615295,"ema9":8.685351,"ema20":8.681459,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":15.787078,"atr":0.016678,"spread_atr":0.599585,"own_change_pct":-0.027626,"rel_strength_pct":{"SPY":-0.044459,"IWM":0.007367}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.862961},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"54fa9257f791","ts":"2026-09-21T17:01:05.861860+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1289,"target":5.2,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1807,"vwap":5.1776,"ext_from_open_pct":-0.37,"max_ext_allowed_pct":4.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":-0.0687,"volatility":"unknown"},"price":5.1807,"volume":{"bars":211,"last_bar_volume":10823.0,"baseline_avg":25381.7,"bar_rvol":0.42641,"raw_accel":0.705638,"smooth_accel":-0.700859,"accel_momentum":-0.184709,"rvol_3bar":[0.814436,0.135685,0.42641],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":1232.0,"sell_vol":1253.0,"unclassified_vol":0.0,"imbalance":-0.008451,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":6.684466},"context":{"vwap":5.177564,"price_vs_vwap_pct":0.060574,"ema9":5.184997,"ema20":5.182928,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.250943,"dist_to_hod_atr":7.21254,"atr":0.016541,"spread_atr":0.604572,"own_change_pct":-0.506129,"rel_strength_pct":{"SPY":-0.522963,"IWM":-0.471136}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.003603},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"02c13d81e246","ts":"2026-09-21T17:01:10.970071+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.18 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1246,"target":5.2,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1764,"vwap":5.1776,"ext_from_open_pct":-0.45,"max_ext_allowed_pct":4.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":-0.0853,"volatility":"unknown"},"price":5.1764,"volume":{"bars":211,"last_bar_volume":10823.0,"baseline_avg":25381.7,"bar_rvol":0.42641,"raw_accel":0.705638,"smooth_accel":-0.700859,"accel_momentum":-0.184709,"rvol_3bar":[0.814436,0.135685,0.42641],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":1451.0,"sell_vol":253.0,"unclassified_vol":0.0,"imbalance":0.703052,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":2.58242},"context":{"vwap":5.177564,"price_vs_vwap_pct":-0.022476,"ema9":5.184997,"ema20":5.182928,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.332075,"dist_to_hod_atr":7.472506,"atr":0.016541,"spread_atr":0.604572,"own_change_pct":-0.506129,"rel_strength_pct":{"SPY":-0.522963,"IWM":-0.471136}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.299788},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6ce9364c6f10","ts":"2026-09-21T17:01:16.057317+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.92,"target":8.22,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":121.2,"room_to_5d_high_atr":-0.67},"price":8.1176,"vwap":8.0784,"ext_from_open_pct":-0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.557,"trend":"flat","recent_slope_pct":0.0445,"volatility":"high"},"price":8.1176,"volume":{"bars":211,"last_bar_volume":15987.0,"baseline_avg":4841.9,"bar_rvol":3.301803,"raw_accel":12.207212,"smooth_accel":1.950116,"accel_momentum":2.658239,"rvol_3bar":[0.228052,0.125153,3.301803],"trend_3bar":"MIXED","projected_rvol":5.726198},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":4285.0,"sell_vol":3803.0,"unclassified_vol":0.0,"imbalance":0.059594,"bid":8.11,"ask":8.12,"spread_pct":0.123229,"quote_size_imbalance":null,"quote_age_s":2.245238},"context":{"vwap":8.078316,"price_vs_vwap_pct":0.486284,"ema9":8.089793,"ema20":8.073899,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.117392,"dist_to_hod_atr":6.308512,"atr":0.041404,"spread_atr":0.24152,"own_change_pct":-0.107474,"rel_strength_pct":{"SPY":-0.124307,"IWM":-0.072481}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.196769},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"01bbb799d2bf","ts":"2026-09-21T17:01:16.057317+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.4% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":11.1686,"target":11.4614,"target_label":"clear air (typical 60-min move)","reward_risk":1.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.2814,"vwap":11.0177,"ext_from_open_pct":5.43,"max_ext_allowed_pct":4.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":-0.0135,"volatility":"unknown"},"price":11.2814,"volume":{"bars":211,"last_bar_volume":62475.0,"baseline_avg":56965.6,"bar_rvol":1.096715,"raw_accel":1.51895,"smooth_accel":-0.534662,"accel_momentum":0.050791,"rvol_3bar":[0.705939,0.431176,1.096715],"trend_3bar":"MIXED","projected_rvol":0.448271},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":7322.0,"sell_vol":8549.0,"unclassified_vol":0.0,"imbalance":-0.077311,"bid":11.26,"ask":11.27,"spread_pct":0.088771,"quote_size_imbalance":null,"quote_age_s":0.313506},"context":{"vwap":11.017637,"price_vs_vwap_pct":2.394003,"ema9":11.277127,"ema20":11.284847,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.815492,"dist_to_hod_atr":4.132519,"atr":0.050478,"spread_atr":0.198107,"own_change_pct":-0.221729,"rel_strength_pct":{"SPY":-0.238563,"IWM":-0.186736}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.084788},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9ac09bf68a63","ts":"2026-09-21T17:01:16.057317+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1387,"target":5.25,"target_label":"ceiling","reward_risk":1.14,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1906,"vwap":5.1776,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":4.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":-0.0305,"volatility":"unknown"},"price":5.1906,"volume":{"bars":211,"last_bar_volume":10823.0,"baseline_avg":25381.7,"bar_rvol":0.42641,"raw_accel":0.705638,"smooth_accel":-0.700859,"accel_momentum":-0.184709,"rvol_3bar":[0.814436,0.135685,0.42641],"trend_3bar":"MIXED","projected_rvol":0.185052},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1364.0,"sell_vol":253.0,"unclassified_vol":0.0,"imbalance":0.687075,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":1.298207},"context":{"vwap":5.177564,"price_vs_vwap_pct":0.251784,"ema9":5.184997,"ema20":5.182928,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.064151,"dist_to_hod_atr":6.614014,"atr":0.016541,"spread_atr":0.604572,"own_change_pct":-0.506129,"rel_strength_pct":{"SPY":-0.522963,"IWM":-0.471136}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.292975},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0b671892cc62","ts":"2026-09-21T17:01:21.143093+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.3% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":11.1573,"target":11.345,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.27,"vwap":11.0177,"ext_from_open_pct":5.33,"max_ext_allowed_pct":4.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":-0.0337,"volatility":"unknown"},"price":11.27,"volume":{"bars":211,"last_bar_volume":62475.0,"baseline_avg":56965.6,"bar_rvol":1.096715,"raw_accel":1.51895,"smooth_accel":-0.534662,"accel_momentum":0.050791,"rvol_3bar":[0.705939,0.431176,1.096715],"trend_3bar":"MIXED","projected_rvol":0.35504},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":6585.0,"sell_vol":8475.0,"unclassified_vol":0.0,"imbalance":-0.125498,"bid":11.26,"ask":11.27,"spread_pct":0.088771,"quote_size_imbalance":null,"quote_age_s":0.399631},"context":{"vwap":11.017637,"price_vs_vwap_pct":2.290532,"ema9":11.277127,"ema20":11.284847,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.914708,"dist_to_hod_atr":4.358362,"atr":0.050478,"spread_atr":0.198107,"own_change_pct":-0.221729,"rel_strength_pct":{"SPY":-0.238563,"IWM":-0.186736}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.137635},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"931024d401ac","ts":"2026-09-21T17:01:26.258392+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1232,"target":5.2,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1776,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":-0.0907,"volatility":"unknown"},"price":5.175,"volume":{"bars":211,"last_bar_volume":10823.0,"baseline_avg":25381.7,"bar_rvol":0.42641,"raw_accel":0.705638,"smooth_accel":-0.700859,"accel_momentum":-0.184709,"rvol_3bar":[0.814436,0.135685,0.42641],"trend_3bar":"MIXED","projected_rvol":0.132517},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":1256.0,"sell_vol":359.0,"unclassified_vol":0.0,"imbalance":0.555418,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.298135},"context":{"vwap":5.177564,"price_vs_vwap_pct":-0.049516,"ema9":5.184997,"ema20":5.182928,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":7.557146,"atr":0.016541,"spread_atr":0.604572,"own_change_pct":-0.506129,"rel_strength_pct":{"SPY":-0.522963,"IWM":-0.471136}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.236836},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0e993d8ef052","ts":"2026-09-21T17:01:26.258392+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":6.3856,"target":6.49,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4501,"vwap":6.3652,"ext_from_open_pct":2.55,"max_ext_allowed_pct":4.0,"volume_pace":1.347,"trend":"flat","recent_slope_pct":-0.1004,"volatility":"unknown"},"price":6.4501,"volume":{"bars":211,"last_bar_volume":43222.0,"baseline_avg":81904.45,"bar_rvol":0.527712,"raw_accel":0.682903,"smooth_accel":0.115432,"accel_momentum":0.823116,"rvol_3bar":[0.140994,0.309124,0.527712],"trend_3bar":"ACCELERATING","projected_rvol":0.371492},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":6014.0,"sell_vol":7638.0,"unclassified_vol":0.0,"imbalance":-0.118957,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":0.134985},"context":{"vwap":6.365101,"price_vs_vwap_pct":1.335396,"ema9":6.466983,"ema20":6.465652,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.614792,"dist_to_hod_atr":2.219407,"atr":0.017978,"spread_atr":0.556242,"own_change_pct":-0.30888,"rel_strength_pct":{"SPY":-0.325714,"IWM":-0.273887}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.062775},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e7d1264b68e3","ts":"2026-09-21T17:01:31.373120+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1372,"target":5.2,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1891,"vwap":5.1776,"ext_from_open_pct":-0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":-0.0363,"volatility":"unknown"},"price":5.1891,"volume":{"bars":211,"last_bar_volume":10823.0,"baseline_avg":25381.7,"bar_rvol":0.42641,"raw_accel":0.705638,"smooth_accel":-0.700859,"accel_momentum":-0.184709,"rvol_3bar":[0.814436,0.135685,0.42641],"trend_3bar":"MIXED","projected_rvol":0.451336},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":270.0,"sell_vol":4737.0,"unclassified_vol":0.0,"imbalance":-0.892151,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":1.917552},"context":{"vwap":5.177564,"price_vs_vwap_pct":0.222813,"ema9":5.184997,"ema20":5.182928,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.092453,"dist_to_hod_atr":6.7047,"atr":0.016541,"spread_atr":0.604572,"own_change_pct":-0.506129,"rel_strength_pct":{"SPY":-0.522963,"IWM":-0.471136}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.380422},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a506c5c278a8","ts":"2026-09-21T17:01:31.373120+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.3947,"target":7.775,"target_label":"range_20d_high","reward_risk":20.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4593,"vwap":6.3652,"ext_from_open_pct":2.69,"max_ext_allowed_pct":4.0,"volume_pace":1.346,"trend":"flat","recent_slope_pct":-0.0719,"volatility":"unknown"},"price":6.4593,"volume":{"bars":211,"last_bar_volume":43222.0,"baseline_avg":81904.45,"bar_rvol":0.527712,"raw_accel":0.682903,"smooth_accel":0.115432,"accel_momentum":0.823116,"rvol_3bar":[0.140994,0.309124,0.527712],"trend_3bar":"ACCELERATING","projected_rvol":0.342801},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":7011.0,"sell_vol":7570.0,"unclassified_vol":0.0,"imbalance":-0.038338,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":0.086244},"context":{"vwap":6.365101,"price_vs_vwap_pct":1.479935,"ema9":6.466983,"ema20":6.465652,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.473035,"dist_to_hod_atr":1.707664,"atr":0.017978,"spread_atr":0.556242,"own_change_pct":-0.30888,"rel_strength_pct":{"SPY":-0.325714,"IWM":-0.273887}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.020231},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"795d775cac1f","ts":"2026-09-21T17:01:36.496676+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.23x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.6099,"target":12.0,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":120.5,"room_to_5d_high_atr":-0.91},"price":11.8144,"vwap":11.5856,"ext_from_open_pct":1.24,"max_ext_allowed_pct":3.0,"volume_pace":0.229,"trend":"flat","recent_slope_pct":-0.0522,"volatility":"high"},"price":11.8144,"volume":{"bars":211,"last_bar_volume":11530.0,"baseline_avg":8889.85,"bar_rvol":1.296985,"raw_accel":4.187939,"smooth_accel":-0.291343,"accel_momentum":0.53115,"rvol_3bar":[1.061417,0.117896,1.296985],"trend_3bar":"MIXED","projected_rvol":0.637263},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1378.0,"sell_vol":1937.0,"unclassified_vol":0.0,"imbalance":-0.168627,"bid":11.78,"ask":11.82,"spread_pct":0.338983,"quote_size_imbalance":null,"quote_age_s":1.364343},"context":{"vwap":11.585313,"price_vs_vwap_pct":1.977395,"ema9":11.802537,"ema20":11.756158,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.382304,"dist_to_hod_atr":2.946971,"atr":0.056193,"spread_atr":0.711829,"own_change_pct":-0.216102,"rel_strength_pct":{"SPY":-0.232935,"IWM":-0.181109}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.218707},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b3b942b631b3","ts":"2026-09-21T17:01:36.496676+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.18 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1233,"target":5.2,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1751,"vwap":5.1776,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":-0.0903,"volatility":"unknown"},"price":5.1751,"volume":{"bars":211,"last_bar_volume":10823.0,"baseline_avg":25381.7,"bar_rvol":0.42641,"raw_accel":0.705638,"smooth_accel":-0.700859,"accel_momentum":-0.184709,"rvol_3bar":[0.814436,0.135685,0.42641],"trend_3bar":"MIXED","projected_rvol":0.450025},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":269.0,"sell_vol":5671.0,"unclassified_vol":0.0,"imbalance":-0.909428,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":7.041108},"context":{"vwap":5.177564,"price_vs_vwap_pct":-0.047585,"ema9":5.184997,"ema20":5.182928,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.356604,"dist_to_hod_atr":7.5511,"atr":0.016541,"spread_atr":0.604572,"own_change_pct":-0.506129,"rel_strength_pct":{"SPY":-0.522963,"IWM":-0.471136}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.387789},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5e5a1998893e","ts":"2026-09-21T17:01:46.721651+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1258,"target":5.2,"target_label":"premarket_high","reward_risk":0.43,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1776,"vwap":5.1776,"ext_from_open_pct":-0.43,"max_ext_allowed_pct":3.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":-0.0806,"volatility":"unknown"},"price":5.1776,"volume":{"bars":211,"last_bar_volume":10823.0,"baseline_avg":25381.7,"bar_rvol":0.42641,"raw_accel":0.705638,"smooth_accel":-0.700859,"accel_momentum":-0.184709,"rvol_3bar":[0.814436,0.135685,0.42641],"trend_3bar":"MIXED","projected_rvol":0.420247},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":190.0,"sell_vol":6759.0,"unclassified_vol":0.0,"imbalance":-0.945316,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.552799},"context":{"vwap":5.177564,"price_vs_vwap_pct":0.000701,"ema9":5.184997,"ema20":5.182928,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.309434,"dist_to_hod_atr":7.399957,"atr":0.016541,"spread_atr":0.604572,"own_change_pct":-0.506129,"rel_strength_pct":{"SPY":-0.522963,"IWM":-0.471136}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.403092},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ebb805ec81cf","ts":"2026-09-21T17:01:46.721651+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":6.3855,"target":6.49,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.45,"vwap":6.3652,"ext_from_open_pct":2.54,"max_ext_allowed_pct":4.0,"volume_pace":1.345,"trend":"flat","recent_slope_pct":-0.1007,"volatility":"unknown"},"price":6.45,"volume":{"bars":211,"last_bar_volume":43222.0,"baseline_avg":81904.45,"bar_rvol":0.527712,"raw_accel":0.682903,"smooth_accel":0.115432,"accel_momentum":0.823116,"rvol_3bar":[0.140994,0.309124,0.527712],"trend_3bar":"ACCELERATING","projected_rvol":0.376255},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":11216.0,"sell_vol":6746.0,"unclassified_vol":0.0,"imbalance":0.248859,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":0.87719},"context":{"vwap":6.365101,"price_vs_vwap_pct":1.333825,"ema9":6.466983,"ema20":6.465652,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.616333,"dist_to_hod_atr":2.22497,"atr":0.017978,"spread_atr":0.556242,"own_change_pct":-0.30888,"rel_strength_pct":{"SPY":-0.325714,"IWM":-0.273887}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.131326},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c2f4e6d16660","ts":"2026-09-21T17:01:51.785009+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.4% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":6.5717,"target":6.94,"target_label":"ceiling","reward_risk":1.26,"pos_in_5d_range_pct":117.9,"room_to_5d_high_atr":-0.48},"price":6.735,"vwap":6.5833,"ext_from_open_pct":5.4,"max_ext_allowed_pct":4.0,"volume_pace":0.599,"trend":"flat","recent_slope_pct":0.1108,"volatility":"high"},"price":6.735,"volume":{"bars":209,"last_bar_volume":9924.0,"baseline_avg":2038.65,"bar_rvol":4.867927,"raw_accel":18.471709,"smooth_accel":0.997188,"accel_momentum":0.537641,"rvol_3bar":[0.26141,0.049478,4.867927],"trend_3bar":"MIXED","projected_rvol":0.113667},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":100.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.0,"bid":6.72,"ask":6.75,"spread_pct":0.445434,"quote_size_imbalance":null,"quote_age_s":2.368993},"context":{"vwap":6.583324,"price_vs_vwap_pct":2.303935,"ema9":6.738132,"ema20":6.746252,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-2.95389,"dist_to_hod_atr":7.038244,"atr":0.029127,"spread_atr":1.029987,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.016833,"IWM":0.034993}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.0},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d0c89bc8c491","ts":"2026-09-21T17:01:51.785009+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.3905,"target":7.775,"target_label":"range_20d_high","reward_risk":20.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.455,"vwap":6.3652,"ext_from_open_pct":2.62,"max_ext_allowed_pct":4.0,"volume_pace":1.345,"trend":"flat","recent_slope_pct":-0.0852,"volatility":"unknown"},"price":6.455,"volume":{"bars":211,"last_bar_volume":43222.0,"baseline_avg":81904.45,"bar_rvol":0.527712,"raw_accel":0.682903,"smooth_accel":0.115432,"accel_momentum":0.823116,"rvol_3bar":[0.140994,0.309124,0.527712],"trend_3bar":"ACCELERATING","projected_rvol":0.379302},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":10787.0,"sell_vol":5136.0,"unclassified_vol":0.0,"imbalance":0.354895,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":0.264578},"context":{"vwap":6.365101,"price_vs_vwap_pct":1.412379,"ema9":6.466983,"ema20":6.465652,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.539291,"dist_to_hod_atr":1.946849,"atr":0.017978,"spread_atr":0.556242,"own_change_pct":-0.30888,"rel_strength_pct":{"SPY":-0.325714,"IWM":-0.273887}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.187283},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"446240a16758","ts":"2026-09-21T17:01:56.847842+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.5% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":11.1722,"target":11.465,"target_label":"clear air (typical 60-min move)","reward_risk":1.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.285,"vwap":11.0195,"ext_from_open_pct":5.47,"max_ext_allowed_pct":4.0,"volume_pace":0.599,"trend":"flat","recent_slope_pct":-0.0071,"volatility":"unknown"},"price":11.285,"volume":{"bars":211,"last_bar_volume":62475.0,"baseline_avg":56965.6,"bar_rvol":1.096715,"raw_accel":1.51895,"smooth_accel":-0.534662,"accel_momentum":0.050791,"rvol_3bar":[0.705939,0.431176,1.096715],"trend_3bar":"MIXED","projected_rvol":3.364117},"flow":{"window_s":30,"trades":536,"trade_rate":17.866667,"buy_vol":128548.0,"sell_vol":45260.0,"unclassified_vol":0.0,"imbalance":0.479195,"bid":11.28,"ask":11.29,"spread_pct":0.088613,"quote_size_imbalance":null,"quote_age_s":0.019317},"context":{"vwap":11.017637,"price_vs_vwap_pct":2.426678,"ema9":11.277127,"ema20":11.284847,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.78416,"dist_to_hod_atr":4.061201,"atr":0.050478,"spread_atr":0.198107,"own_change_pct":-0.221729,"rel_strength_pct":{"SPY":-0.238563,"IWM":-0.186736}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.525541},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4b69685c7636","ts":"2026-09-21T17:01:56.847842+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1221,"target":5.2,"target_label":"premarket_high","reward_risk":0.51,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1738,"vwap":5.1776,"ext_from_open_pct":-0.5,"max_ext_allowed_pct":3.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":-0.0953,"volatility":"unknown"},"price":5.1738,"volume":{"bars":211,"last_bar_volume":10823.0,"baseline_avg":25381.7,"bar_rvol":0.42641,"raw_accel":0.705638,"smooth_accel":-0.700859,"accel_momentum":-0.184709,"rvol_3bar":[0.814436,0.135685,0.42641],"trend_3bar":"MIXED","projected_rvol":0.352666},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":270.0,"sell_vol":6439.0,"unclassified_vol":0.0,"imbalance":-0.919511,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":9.104457},"context":{"vwap":5.177564,"price_vs_vwap_pct":-0.072693,"ema9":5.184997,"ema20":5.182928,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.381132,"dist_to_hod_atr":7.629695,"atr":0.016541,"spread_atr":0.604572,"own_change_pct":-0.506129,"rel_strength_pct":{"SPY":-0.522963,"IWM":-0.471136}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.392088},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"20bb34e2f944","ts":"2026-09-21T17:02:07.047544+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.8483,"target":13.53,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":157.3,"room_to_5d_high_atr":-1.71},"price":13.2401,"vwap":12.9127,"ext_from_open_pct":1.77,"max_ext_allowed_pct":3.0,"volume_pace":0.637,"trend":"flat","recent_slope_pct":-0.0987,"volatility":"high"},"price":13.2401,"volume":{"bars":212,"last_bar_volume":7038.0,"baseline_avg":16921.05,"bar_rvol":0.415932,"raw_accel":-0.5532,"smooth_accel":-0.428328,"accel_momentum":0.064928,"rvol_3bar":[1.275432,0.957257,0.415932],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1313.0,"sell_vol":2329.0,"unclassified_vol":0.0,"imbalance":-0.278968,"bid":13.24,"ask":13.3,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":17.419081},"context":{"vwap":12.912723,"price_vs_vwap_pct":2.535302,"ema9":13.331782,"ema20":13.33902,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.057246,"dist_to_hod_atr":5.749907,"atr":0.097375,"spread_atr":0.616172,"own_change_pct":-0.756716,"rel_strength_pct":{"SPY":-0.798165,"IWM":-0.754966}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.116031},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f50e039c1191","ts":"2026-09-21T17:02:07.047544+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":6.5862,"target":6.94,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":118.7,"room_to_5d_high_atr":-0.5},"price":6.7495,"vwap":6.5833,"ext_from_open_pct":5.63,"max_ext_allowed_pct":4.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":0.0798,"volatility":"high"},"price":6.7495,"volume":{"bars":210,"last_bar_volume":200.0,"baseline_avg":2512.5,"bar_rvol":0.079602,"raw_accel":-0.979847,"smooth_accel":1.372508,"accel_momentum":0.37532,"rvol_3bar":[0.049478,4.867927,0.079602],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":106.0,"sell_vol":106.0,"unclassified_vol":0.0,"imbalance":0.0,"bid":6.73,"ask":6.75,"spread_pct":0.296736,"quote_size_imbalance":null,"quote_age_s":1.559862},"context":{"vwap":6.583339,"price_vs_vwap_pct":2.523958,"ema9":6.737506,"ema20":6.74518,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-2.744957,"dist_to_hod_atr":6.77513,"atr":0.028118,"spread_atr":0.7113,"own_change_pct":-0.148258,"rel_strength_pct":{"SPY":-0.189706,"IWM":-0.146508}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.0},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e4cee24487b4","ts":"2026-09-21T17:02:07.047544+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":11.1462,"target":11.275,"target_label":"range_20d_high","reward_risk":0.14,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.2588,"vwap":11.0198,"ext_from_open_pct":5.22,"max_ext_allowed_pct":4.0,"volume_pace":0.599,"trend":"flat","recent_slope_pct":0.1,"volatility":"unknown"},"price":11.2588,"volume":{"bars":212,"last_bar_volume":204716.0,"baseline_avg":59044.15,"bar_rvol":3.467168,"raw_accel":2.276767,"smooth_accel":0.420344,"accel_momentum":0.955006,"rvol_3bar":[0.431176,1.096715,3.467168],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":613,"trade_rate":20.433333,"buy_vol":146525.0,"sell_vol":41798.0,"unclassified_vol":0.0,"imbalance":0.556103,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":4.189347},"context":{"vwap":11.019764,"price_vs_vwap_pct":2.169161,"ema9":11.282701,"ema20":11.286766,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-2.012185,"dist_to_hod_atr":4.454047,"atr":0.051908,"spread_atr":0.192649,"own_change_pct":-0.030066,"rel_strength_pct":{"SPY":-0.071514,"IWM":-0.028316}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.928103},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"717337ee799b","ts":"2026-09-21T17:02:12.117787+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.5853,"target":6.94,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":118.7,"room_to_5d_high_atr":-0.5},"price":6.7486,"vwap":6.5834,"ext_from_open_pct":5.61,"max_ext_allowed_pct":3.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":0.0772,"volatility":"high"},"price":6.7486,"volume":{"bars":210,"last_bar_volume":200.0,"baseline_avg":2512.5,"bar_rvol":0.079602,"raw_accel":-0.979847,"smooth_accel":1.372508,"accel_momentum":0.37532,"rvol_3bar":[0.049478,4.867927,0.079602],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":225.0,"sell_vol":207.0,"unclassified_vol":0.0,"imbalance":0.041667,"bid":6.73,"ask":6.75,"spread_pct":0.296736,"quote_size_imbalance":null,"quote_age_s":0.312598},"context":{"vwap":6.583339,"price_vs_vwap_pct":2.510287,"ema9":6.737506,"ema20":6.74518,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-2.757925,"dist_to_hod_atr":6.807139,"atr":0.028118,"spread_atr":0.7113,"own_change_pct":-0.148258,"rel_strength_pct":{"SPY":-0.189706,"IWM":-0.146508}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.003317},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ef725278fe90","ts":"2026-09-21T17:02:12.117787+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.8% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":11.2,"target":11.5,"target_label":"clear air (typical 60-min move)","reward_risk":1.5,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.32,"vwap":11.0198,"ext_from_open_pct":5.79,"max_ext_allowed_pct":4.0,"volume_pace":0.599,"trend":"flat","recent_slope_pct":0.2085,"volatility":"unknown"},"price":11.32,"volume":{"bars":212,"last_bar_volume":204716.0,"baseline_avg":59044.15,"bar_rvol":3.467168,"raw_accel":2.276767,"smooth_accel":0.420344,"accel_momentum":0.955006,"rvol_3bar":[0.431176,1.096715,3.467168],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":602,"trade_rate":20.066667,"buy_vol":138809.0,"sell_vol":41696.0,"unclassified_vol":0.0,"imbalance":0.538007,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":0.731271},"context":{"vwap":11.019764,"price_vs_vwap_pct":2.724526,"ema9":11.282701,"ema20":11.286766,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.479547,"dist_to_hod_atr":3.275035,"atr":0.051908,"spread_atr":0.192649,"own_change_pct":-0.030066,"rel_strength_pct":{"SPY":-0.071514,"IWM":-0.028316}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.865362},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cc5dd2f0460e","ts":"2026-09-21T17:02:17.250229+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.25x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.9521,"target":13.1286,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":-1.7,"room_to_5d_high_atr":3.04},"price":13.05,"vwap":13.0415,"ext_from_open_pct":-1.36,"max_ext_allowed_pct":3.0,"volume_pace":0.251,"trend":"flat","recent_slope_pct":-0.0183,"volatility":"medium"},"price":13.05,"volume":{"bars":212,"last_bar_volume":864.0,"baseline_avg":3228.65,"bar_rvol":0.267604,"raw_accel":-0.671233,"smooth_accel":-0.808118,"accel_momentum":-1.794724,"rvol_3bar":[0.124033,0.801085,0.267604],"trend_3bar":"MIXED","projected_rvol":2.007004},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1447.0,"sell_vol":810.0,"unclassified_vol":0.0,"imbalance":0.282233,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":0.615915},"context":{"vwap":13.041515,"price_vs_vwap_pct":0.065061,"ema9":13.063309,"ema20":13.062659,"ema_stack":false,"ema_warm":true,"hod":13.3617,"dist_to_hod_pct":-2.332787,"dist_to_hod_atr":24.600961,"atr":0.01267,"spread_atr":0.789251,"own_change_pct":-0.10631,"rel_strength_pct":{"SPY":-0.147758,"IWM":-0.104559}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.075527},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9653802d4860","ts":"2026-09-21T17:02:17.250229+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1282,"target":5.2,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.18,"vwap":5.1776,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":-0.0415,"volatility":"unknown"},"price":5.18,"volume":{"bars":212,"last_bar_volume":8588.0,"baseline_avg":21799.3,"bar_rvol":0.393958,"raw_accel":-0.206505,"smooth_accel":-0.71629,"accel_momentum":-0.015431,"rvol_3bar":[0.135685,0.42641,0.393958],"trend_3bar":"MIXED","projected_rvol":0.167055},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":409.0,"sell_vol":920.0,"unclassified_vol":0.0,"imbalance":-0.3845,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":3.167735},"context":{"vwap":5.177565,"price_vs_vwap_pct":0.047027,"ema9":5.182997,"ema20":5.182173,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.264151,"dist_to_hod_atr":7.120808,"atr":0.016852,"spread_atr":0.593401,"own_change_pct":-0.352377,"rel_strength_pct":{"SPY":-0.393825,"IWM":-0.350627}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.151477},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0776fcf5c588","ts":"2026-09-21T17:02:17.250229+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":6.3855,"target":6.49,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.45,"vwap":6.3653,"ext_from_open_pct":2.54,"max_ext_allowed_pct":3.0,"volume_pace":1.343,"trend":"flat","recent_slope_pct":-0.0932,"volatility":"unknown"},"price":6.45,"volume":{"bars":212,"last_bar_volume":28494.0,"baseline_avg":80238.1,"bar_rvol":0.355118,"raw_accel":-0.340752,"smooth_accel":0.894775,"accel_momentum":0.779343,"rvol_3bar":[0.309124,0.527712,0.355118],"trend_3bar":"MIXED","projected_rvol":0.506182},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":6181.0,"sell_vol":9978.0,"unclassified_vol":0.0,"imbalance":-0.234977,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":0.252778},"context":{"vwap":6.365253,"price_vs_vwap_pct":1.331406,"ema9":6.463586,"ema20":6.464161,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.616333,"dist_to_hod_atr":2.207235,"atr":0.018122,"spread_atr":0.551809,"own_change_pct":-0.462963,"rel_strength_pct":{"SPY":-0.504411,"IWM":-0.461213}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.083445},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1f288a9cc5d7","ts":"2026-09-21T17:02:22.360651+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.25x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.9571,"target":13.42,"target_label":"prev_day_high","reward_risk":3.73,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":3.02},"price":13.055,"vwap":13.0415,"ext_from_open_pct":-1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.251,"trend":"flat","recent_slope_pct":-0.0106,"volatility":"medium"},"price":13.055,"volume":{"bars":212,"last_bar_volume":864.0,"baseline_avg":3228.65,"bar_rvol":0.267604,"raw_accel":-0.671233,"smooth_accel":-0.808118,"accel_momentum":-1.794724,"rvol_3bar":[0.124033,0.801085,0.267604],"trend_3bar":"MIXED","projected_rvol":1.549975},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1431.0,"sell_vol":810.0,"unclassified_vol":0.0,"imbalance":0.277108,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":1.367574},"context":{"vwap":13.041515,"price_vs_vwap_pct":0.1034,"ema9":13.063309,"ema20":13.062659,"ema_stack":false,"ema_warm":true,"hod":13.3617,"dist_to_hod_pct":-2.295367,"dist_to_hod_atr":24.206336,"atr":0.01267,"spread_atr":0.789251,"own_change_pct":-0.10631,"rel_strength_pct":{"SPY":-0.147758,"IWM":-0.104559}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.074155},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"786994621ead","ts":"2026-09-21T17:02:22.360651+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1232,"target":5.2,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1776,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":-0.0608,"volatility":"unknown"},"price":5.175,"volume":{"bars":212,"last_bar_volume":8588.0,"baseline_avg":21799.3,"bar_rvol":0.393958,"raw_accel":-0.206505,"smooth_accel":-0.71629,"accel_momentum":-0.015431,"rvol_3bar":[0.135685,0.42641,0.393958],"trend_3bar":"MIXED","projected_rvol":0.387612},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":411.0,"sell_vol":3020.0,"unclassified_vol":0.0,"imbalance":-0.76042,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":1.745197},"context":{"vwap":5.177565,"price_vs_vwap_pct":-0.049543,"ema9":5.182997,"ema20":5.182173,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":7.417509,"atr":0.016852,"spread_atr":0.593401,"own_change_pct":-0.352377,"rel_strength_pct":{"SPY":-0.393825,"IWM":-0.350627}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.299573},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"62fdf802617f","ts":"2026-09-21T17:02:22.360651+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.3905,"target":7.775,"target_label":"range_20d_high","reward_risk":20.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.455,"vwap":6.3653,"ext_from_open_pct":2.62,"max_ext_allowed_pct":3.0,"volume_pace":1.343,"trend":"flat","recent_slope_pct":-0.0777,"volatility":"unknown"},"price":6.455,"volume":{"bars":212,"last_bar_volume":28494.0,"baseline_avg":80238.1,"bar_rvol":0.355118,"raw_accel":-0.340752,"smooth_accel":0.894775,"accel_momentum":0.779343,"rvol_3bar":[0.309124,0.527712,0.355118],"trend_3bar":"MIXED","projected_rvol":0.395346},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":6018.0,"sell_vol":7379.0,"unclassified_vol":0.0,"imbalance":-0.10159,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":1.289516},"context":{"vwap":6.365253,"price_vs_vwap_pct":1.409957,"ema9":6.463586,"ema20":6.464161,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.539291,"dist_to_hod_atr":1.931331,"atr":0.018122,"spread_atr":0.551809,"own_change_pct":-0.462963,"rel_strength_pct":{"SPY":-0.504411,"IWM":-0.461213}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.036076},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ab137667fb9b","ts":"2026-09-21T17:02:27.478357+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1326,"target":5.2,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1844,"vwap":5.1776,"ext_from_open_pct":-0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":-0.0245,"volatility":"unknown"},"price":5.1844,"volume":{"bars":212,"last_bar_volume":8588.0,"baseline_avg":21799.3,"bar_rvol":0.393958,"raw_accel":-0.206505,"smooth_accel":-0.71629,"accel_momentum":-0.015431,"rvol_3bar":[0.135685,0.42641,0.393958],"trend_3bar":"MIXED","projected_rvol":0.317224},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":323.0,"sell_vol":2944.0,"unclassified_vol":0.0,"imbalance":-0.802265,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":6.862903},"context":{"vwap":5.177565,"price_vs_vwap_pct":0.132009,"ema9":5.182997,"ema20":5.182173,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.181132,"dist_to_hod_atr":6.859712,"atr":0.016852,"spread_atr":0.593401,"own_change_pct":-0.352377,"rel_strength_pct":{"SPY":-0.393825,"IWM":-0.350627}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.316058},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d26b0cc2b1fc","ts":"2026-09-21T17:02:32.633132+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1232,"target":5.2,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1776,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":-0.0608,"volatility":"unknown"},"price":5.175,"volume":{"bars":212,"last_bar_volume":8588.0,"baseline_avg":21799.3,"bar_rvol":0.393958,"raw_accel":-0.206505,"smooth_accel":-0.71629,"accel_momentum":-0.015431,"rvol_3bar":[0.135685,0.42641,0.393958],"trend_3bar":"MIXED","projected_rvol":0.287104},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":460.0,"sell_vol":2944.0,"unclassified_vol":0.0,"imbalance":-0.72973,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":1.982764},"context":{"vwap":5.177565,"price_vs_vwap_pct":-0.049543,"ema9":5.182997,"ema20":5.182173,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":7.417509,"atr":0.016852,"spread_atr":0.593401,"own_change_pct":-0.352377,"rel_strength_pct":{"SPY":-0.393825,"IWM":-0.350627}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.287483},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f4d95b87a68f","ts":"2026-09-21T17:02:37.802059+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7111,"target":8.88,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.22},"price":8.82,"vwap":8.6935,"ext_from_open_pct":1.15,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":-0.0645,"volatility":"medium"},"price":8.82,"volume":{"bars":212,"last_bar_volume":13521.0,"baseline_avg":5761.5,"bar_rvol":2.346785,"raw_accel":0.507526,"smooth_accel":0.767513,"accel_momentum":0.863991,"rvol_3bar":[0.718657,1.654553,2.346785],"trend_3bar":"ACCELERATING","projected_rvol":1.57716},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":1635.0,"sell_vol":4028.0,"unclassified_vol":0.0,"imbalance":-0.422568,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.522292},"context":{"vwap":8.693315,"price_vs_vwap_pct":1.457273,"ema9":8.8437,"ema20":8.843252,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.800278,"dist_to_hod_atr":12.301162,"atr":0.020657,"spread_atr":0.484107,"own_change_pct":-0.022624,"rel_strength_pct":{"SPY":-0.064073,"IWM":-0.020874}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.991675},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"403eaa677255","ts":"2026-09-21T17:02:37.802059+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1319,"target":5.2,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1837,"vwap":5.1776,"ext_from_open_pct":-0.31,"max_ext_allowed_pct":4.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":-0.0272,"volatility":"unknown"},"price":5.1837,"volume":{"bars":212,"last_bar_volume":8588.0,"baseline_avg":21799.3,"bar_rvol":0.393958,"raw_accel":-0.206505,"smooth_accel":-0.71629,"accel_momentum":-0.015431,"rvol_3bar":[0.135685,0.42641,0.393958],"trend_3bar":"MIXED","projected_rvol":0.25804},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":286.0,"sell_vol":2287.0,"unclassified_vol":0.0,"imbalance":-0.777691,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":7.151691},"context":{"vwap":5.177565,"price_vs_vwap_pct":0.118489,"ema9":5.182997,"ema20":5.182173,"ema_stack":true,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.19434,"dist_to_hod_atr":6.90125,"atr":0.016852,"spread_atr":0.593401,"own_change_pct":-0.352377,"rel_strength_pct":{"SPY":-0.393825,"IWM":-0.350627}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.306377},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"074a2dd3841d","ts":"2026-09-21T17:02:42.941633+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1232,"target":5.2,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1776,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":-0.0608,"volatility":"unknown"},"price":5.175,"volume":{"bars":212,"last_bar_volume":8588.0,"baseline_avg":21799.3,"bar_rvol":0.393958,"raw_accel":-0.206505,"smooth_accel":-0.71629,"accel_momentum":-0.015431,"rvol_3bar":[0.135685,0.42641,0.393958],"trend_3bar":"MIXED","projected_rvol":0.231002},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":275.0,"sell_vol":2347.0,"unclassified_vol":0.0,"imbalance":-0.790236,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":12.291265},"context":{"vwap":5.177565,"price_vs_vwap_pct":-0.049543,"ema9":5.182997,"ema20":5.182173,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":7.417509,"atr":0.016852,"spread_atr":0.593401,"own_change_pct":-0.352377,"rel_strength_pct":{"SPY":-0.393825,"IWM":-0.350627}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.31132},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4665b2d0fa11","ts":"2026-09-21T17:02:48.058831+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.3% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":11.1586,"target":11.345,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.2713,"vwap":11.0208,"ext_from_open_pct":5.34,"max_ext_allowed_pct":3.0,"volume_pace":0.599,"trend":"flat","recent_slope_pct":0.1222,"volatility":"unknown"},"price":11.2713,"volume":{"bars":212,"last_bar_volume":204716.0,"baseline_avg":59044.15,"bar_rvol":3.467168,"raw_accel":2.276767,"smooth_accel":0.420344,"accel_momentum":0.955006,"rvol_3bar":[0.431176,1.096715,3.467168],"trend_3bar":"ACCELERATING","projected_rvol":2.005806},"flow":{"window_s":30,"trades":287,"trade_rate":9.566667,"buy_vol":64501.0,"sell_vol":22037.0,"unclassified_vol":0.0,"imbalance":0.490698,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":0.282063},"context":{"vwap":11.019764,"price_vs_vwap_pct":2.282593,"ema9":11.282701,"ema20":11.286766,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.903394,"dist_to_hod_atr":4.213236,"atr":0.051908,"spread_atr":0.192649,"own_change_pct":-0.030066,"rel_strength_pct":{"SPY":-0.071514,"IWM":-0.028316}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.701332},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0421d5e51bae","ts":"2026-09-21T17:02:48.058831+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":6.3855,"target":6.49,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.45,"vwap":6.3653,"ext_from_open_pct":2.54,"max_ext_allowed_pct":3.0,"volume_pace":1.34,"trend":"flat","recent_slope_pct":-0.0932,"volatility":"unknown"},"price":6.45,"volume":{"bars":212,"last_bar_volume":28494.0,"baseline_avg":80238.1,"bar_rvol":0.355118,"raw_accel":-0.340752,"smooth_accel":0.894775,"accel_momentum":0.779343,"rvol_3bar":[0.309124,0.527712,0.355118],"trend_3bar":"MIXED","projected_rvol":0.23761},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":2289.0,"sell_vol":1205.0,"unclassified_vol":0.0,"imbalance":0.310246,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":3.633839},"context":{"vwap":6.365253,"price_vs_vwap_pct":1.331406,"ema9":6.463586,"ema20":6.464161,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.616333,"dist_to_hod_atr":2.207235,"atr":0.018122,"spread_atr":0.551809,"own_change_pct":-0.462963,"rel_strength_pct":{"SPY":-0.504411,"IWM":-0.461213}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.110174},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"97fdac36c71d","ts":"2026-09-21T17:02:53.195556+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.1% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":11.2,"target":11.53,"target_label":"clear air (typical 60-min move)","reward_risk":1.2,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.35,"vwap":11.0212,"ext_from_open_pct":6.07,"max_ext_allowed_pct":3.0,"volume_pace":0.6,"trend":"flat","recent_slope_pct":0.2616,"volatility":"unknown"},"price":11.35,"volume":{"bars":212,"last_bar_volume":204716.0,"baseline_avg":59044.15,"bar_rvol":3.467168,"raw_accel":2.276767,"smooth_accel":0.420344,"accel_momentum":0.955006,"rvol_3bar":[0.431176,1.096715,3.467168],"trend_3bar":"ACCELERATING","projected_rvol":2.421979},"flow":{"window_s":30,"trades":368,"trade_rate":12.266667,"buy_vol":84506.0,"sell_vol":30374.0,"unclassified_vol":0.0,"imbalance":0.471205,"bid":11.35,"ask":11.36,"spread_pct":0.088067,"quote_size_imbalance":null,"quote_age_s":1.399714},"context":{"vwap":11.019764,"price_vs_vwap_pct":2.996765,"ema9":11.282701,"ema20":11.286766,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.218451,"dist_to_hod_atr":2.697087,"atr":0.051908,"spread_atr":0.192649,"own_change_pct":-0.030066,"rel_strength_pct":{"SPY":-0.071514,"IWM":-0.028316}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.633746},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a51e9d79494e","ts":"2026-09-21T17:02:53.195556+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.3997,"target":7.775,"target_label":"range_20d_high","reward_risk":20.28,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4643,"vwap":6.3653,"ext_from_open_pct":2.77,"max_ext_allowed_pct":3.0,"volume_pace":1.34,"trend":"flat","recent_slope_pct":-0.0489,"volatility":"unknown"},"price":6.4643,"volume":{"bars":212,"last_bar_volume":28494.0,"baseline_avg":80238.1,"bar_rvol":0.355118,"raw_accel":-0.340752,"smooth_accel":0.894775,"accel_momentum":0.779343,"rvol_3bar":[0.309124,0.527712,0.355118],"trend_3bar":"MIXED","projected_rvol":0.215664},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":2316.0,"sell_vol":1184.0,"unclassified_vol":0.0,"imbalance":0.323429,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":2.33291},"context":{"vwap":6.365253,"price_vs_vwap_pct":1.556063,"ema9":6.463586,"ema20":6.464161,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.395994,"dist_to_hod_atr":1.418149,"atr":0.018122,"spread_atr":0.551809,"own_change_pct":-0.462963,"rel_strength_pct":{"SPY":-0.504411,"IWM":-0.461213}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.114855},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3078a7ed7a89","ts":"2026-09-21T17:02:58.305684+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.23x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.5905,"target":12.0,"target_label":"premarket_high","reward_risk":1.0,"pos_in_5d_range_pct":119.9,"room_to_5d_high_atr":-0.89},"price":11.795,"vwap":11.5856,"ext_from_open_pct":1.07,"max_ext_allowed_pct":3.0,"volume_pace":0.227,"trend":"flat","recent_slope_pct":-0.0678,"volatility":"high"},"price":11.795,"volume":{"bars":212,"last_bar_volume":3582.0,"baseline_avg":9374.9,"bar_rvol":0.382084,"raw_accel":-0.689332,"smooth_accel":0.288926,"accel_momentum":0.58027,"rvol_3bar":[0.117896,1.296985,0.382084],"trend_3bar":"MIXED","projected_rvol":0.019209},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":135.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":11.78,"ask":11.82,"spread_pct":0.338983,"quote_size_imbalance":null,"quote_age_s":2.49318},"context":{"vwap":11.585595,"price_vs_vwap_pct":1.807464,"ema9":11.80203,"ema20":11.760333,"ema_stack":false,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.54424,"dist_to_hod_atr":3.320884,"atr":0.055708,"spread_atr":0.718029,"own_change_pct":0.066994,"rel_strength_pct":{"SPY":0.025546,"IWM":0.068744}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.382084},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8954f99cd582","ts":"2026-09-21T17:02:58.305684+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1298,"target":5.2,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1816,"vwap":5.1776,"ext_from_open_pct":-0.35,"max_ext_allowed_pct":3.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":-0.0353,"volatility":"unknown"},"price":5.1816,"volume":{"bars":212,"last_bar_volume":8588.0,"baseline_avg":21799.3,"bar_rvol":0.393958,"raw_accel":-0.206505,"smooth_accel":-0.71629,"accel_momentum":-0.015431,"rvol_3bar":[0.135685,0.42641,0.393958],"trend_3bar":"MIXED","projected_rvol":0.288948},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":2282.0,"sell_vol":672.0,"unclassified_vol":0.0,"imbalance":0.545024,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.087672},"context":{"vwap":5.177565,"price_vs_vwap_pct":0.07793,"ema9":5.182997,"ema20":5.182173,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.233962,"dist_to_hod_atr":7.025864,"atr":0.016852,"spread_atr":0.593401,"own_change_pct":-0.352377,"rel_strength_pct":{"SPY":-0.393825,"IWM":-0.350627}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.214716},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"75e4564f9e54","ts":"2026-09-21T17:03:03.400734+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7225,"target":9.3,"target_label":"premarket_high","reward_risk":4.3,"pos_in_5d_range_pct":88.5,"room_to_5d_high_atr":0.19},"price":8.8314,"vwap":8.6936,"ext_from_open_pct":1.28,"max_ext_allowed_pct":4.0,"volume_pace":0.656,"trend":"flat","recent_slope_pct":-0.0478,"volatility":"medium"},"price":8.8314,"volume":{"bars":213,"last_bar_volume":9564.0,"baseline_avg":6034.35,"bar_rvol":1.584926,"raw_accel":-0.292656,"smooth_accel":2.278511,"accel_momentum":1.510998,"rvol_3bar":[1.654553,2.346785,1.584926],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1685.0,"sell_vol":6519.0,"unclassified_vol":0.0,"imbalance":-0.589225,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.053282},"context":{"vwap":8.693644,"price_vs_vwap_pct":1.584558,"ema9":8.83996,"ema20":8.841513,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.674645,"dist_to_hod_atr":11.614996,"atr":0.020895,"spread_atr":0.478574,"own_change_pct":-0.226116,"rel_strength_pct":{"SPY":-0.244895,"IWM":-0.215614}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.933878},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c99eb1633149","ts":"2026-09-21T17:03:03.400734+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.5% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":11.1731,"target":11.36,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.286,"vwap":11.0215,"ext_from_open_pct":5.48,"max_ext_allowed_pct":3.0,"volume_pace":0.6,"trend":"flat","recent_slope_pct":0.1197,"volatility":"unknown"},"price":11.286,"volume":{"bars":213,"last_bar_volume":145985.0,"baseline_avg":65449.25,"bar_rvol":2.230507,"raw_accel":-0.28689,"smooth_accel":2.724756,"accel_momentum":2.304411,"rvol_3bar":[1.096715,3.467168,2.230507],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":488,"trade_rate":16.266667,"buy_vol":103121.0,"sell_vol":36821.0,"unclassified_vol":0.0,"imbalance":0.473768,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.232453},"context":{"vwap":11.021434,"price_vs_vwap_pct":2.400466,"ema9":11.292781,"ema20":11.291179,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.775457,"dist_to_hod_atr":3.659652,"atr":0.055743,"spread_atr":0.179395,"own_change_pct":0.279609,"rel_strength_pct":{"SPY":0.26083,"IWM":0.290111}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.056742},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ad8fb02be2ff","ts":"2026-09-21T17:03:03.400734+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 488.2s, plan says WATCH; stop 12.04, target 12.29 (prev_day_high), R:R 0.43; selling not fading: red-bar volume 1.63x the advance (max 0.7); imbalance -100% still heavy selling; R:R 0.43 < 2.0 at","plan":{"state":"WATCH","setup":"","stop":12.0394,"target":12.29,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":65.6,"room_to_5d_high_atr":0.55},"price":12.2147,"vwap":12.1718,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":0.012,"volatility":"medium"},"price":12.2147,"volume":{"bars":213,"last_bar_volume":2498.0,"baseline_avg":9682.5,"bar_rvol":0.257991,"raw_accel":0.031965,"smooth_accel":-0.572598,"accel_momentum":-0.451942,"rvol_3bar":[0.579031,0.144312,0.257991],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":1058.0,"sell_vol":208.0,"unclassified_vol":0.0,"imbalance":0.671406,"bid":12.22,"ask":12.23,"spread_pct":0.0818,"quote_size_imbalance":null,"quote_age_s":1.173197},"context":{"vwap":12.171849,"price_vs_vwap_pct":0.352053,"ema9":12.216565,"ema20":12.214138,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.204163,"dist_to_hod_atr":13.621455,"atr":0.020211,"spread_atr":0.494786,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.018779,"IWM":0.010502}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.173217},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"15afc77e8145","ts":"2026-09-21T17:03:03.400734+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1232,"target":5.2,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1776,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":-0.0798,"volatility":"unknown"},"price":5.175,"volume":{"bars":213,"last_bar_volume":8245.0,"baseline_avg":20020.25,"bar_rvol":0.411833,"raw_accel":-0.039939,"smooth_accel":-0.502509,"accel_momentum":0.21378,"rvol_3bar":[0.42641,0.393958,0.411833],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":3032.0,"sell_vol":1783.0,"unclassified_vol":0.0,"imbalance":0.259398,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":1.960996},"context":{"vwap":5.177562,"price_vs_vwap_pct":-0.049482,"ema9":5.180418,"ema20":5.181023,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":7.473004,"atr":0.016727,"spread_atr":0.59784,"own_change_pct":-0.446729,"rel_strength_pct":{"SPY":-0.465508,"IWM":-0.436227}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.106829},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7b46b8f30122","ts":"2026-09-21T17:03:08.480496+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.3% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":11.2,"target":11.554,"target_label":"clear air (typical 60-min move)","reward_risk":1.02,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.375,"vwap":11.0217,"ext_from_open_pct":6.31,"max_ext_allowed_pct":3.0,"volume_pace":0.6,"trend":"flat","recent_slope_pct":0.277,"volatility":"unknown"},"price":11.375,"volume":{"bars":213,"last_bar_volume":145985.0,"baseline_avg":65449.25,"bar_rvol":2.230507,"raw_accel":-0.28689,"smooth_accel":2.724756,"accel_momentum":2.304411,"rvol_3bar":[1.096715,3.467168,2.230507],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":523,"trade_rate":17.433333,"buy_vol":117424.0,"sell_vol":37542.0,"unclassified_vol":0.0,"imbalance":0.515481,"bid":11.37,"ask":11.38,"spread_pct":0.087912,"quote_size_imbalance":null,"quote_age_s":2.165089},"context":{"vwap":11.021434,"price_vs_vwap_pct":3.207984,"ema9":11.292781,"ema20":11.291179,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.00087,"dist_to_hod_atr":2.063039,"atr":0.055743,"spread_atr":0.179395,"own_change_pct":0.279609,"rel_strength_pct":{"SPY":0.26083,"IWM":0.290111}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.149783},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cc88e79fa952","ts":"2026-09-21T17:03:08.480496+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7696,"target":8.94,"target_label":"ceiling","reward_risk":0.92,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8582,"vwap":8.7788,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.505,"trend":"flat","recent_slope_pct":-0.0259,"volatility":"unknown"},"price":8.8582,"volume":{"bars":213,"last_bar_volume":49160.0,"baseline_avg":33470.2,"bar_rvol":1.468769,"raw_accel":-0.303564,"smooth_accel":1.295527,"accel_momentum":-0.360982,"rvol_3bar":[1.377065,2.271745,1.468769],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":423.0,"sell_vol":14933.0,"unclassified_vol":0.0,"imbalance":-0.944908,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.165138},"context":{"vwap":8.778835,"price_vs_vwap_pct":0.90405,"ema9":8.865674,"ema20":8.869269,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.914989,"dist_to_hod_atr":3.56315,"atr":0.022957,"spread_atr":0.435593,"own_change_pct":-0.433139,"rel_strength_pct":{"SPY":-0.451918,"IWM":-0.422637}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.387851},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dcc884e5dc31","ts":"2026-09-21T17:03:18.635660+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.1267,"target":5.2,"target_label":"premarket_high","reward_risk":0.42,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1785,"vwap":5.1776,"ext_from_open_pct":-0.41,"max_ext_allowed_pct":3.0,"volume_pace":0.826,"trend":"flat","recent_slope_pct":-0.0662,"volatility":"unknown"},"price":5.1785,"volume":{"bars":213,"last_bar_volume":8245.0,"baseline_avg":20020.25,"bar_rvol":0.411833,"raw_accel":-0.039939,"smooth_accel":-0.502509,"accel_momentum":0.21378,"rvol_3bar":[0.42641,0.393958,0.411833],"trend_3bar":"MIXED","projected_rvol":0.066097},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1239.0,"sell_vol":1413.0,"unclassified_vol":0.0,"imbalance":-0.065611,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":5.101478},"context":{"vwap":5.177562,"price_vs_vwap_pct":0.018117,"ema9":5.180418,"ema20":5.181023,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.292453,"dist_to_hod_atr":7.26376,"atr":0.016727,"spread_atr":0.59784,"own_change_pct":-0.446729,"rel_strength_pct":{"SPY":-0.465508,"IWM":-0.436227}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.027021},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ad28262c8f3f","ts":"2026-09-21T17:03:23.690588+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.5% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":11.1765,"target":11.36,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.2894,"vwap":11.0218,"ext_from_open_pct":5.51,"max_ext_allowed_pct":4.0,"volume_pace":0.6,"trend":"flat","recent_slope_pct":0.1257,"volatility":"unknown"},"price":11.2894,"volume":{"bars":213,"last_bar_volume":145985.0,"baseline_avg":65449.25,"bar_rvol":2.230507,"raw_accel":-0.28689,"smooth_accel":2.724756,"accel_momentum":2.304411,"rvol_3bar":[1.096715,3.467168,2.230507],"trend_3bar":"MIXED","projected_rvol":1.135043},"flow":{"window_s":30,"trades":195,"trade_rate":6.5,"buy_vol":36904.0,"sell_vol":10427.0,"unclassified_vol":0.0,"imbalance":0.559401,"bid":11.37,"ask":11.38,"spread_pct":0.087912,"quote_size_imbalance":null,"quote_age_s":0.424243},"context":{"vwap":11.021434,"price_vs_vwap_pct":2.431315,"ema9":11.292781,"ema20":11.291179,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.745866,"dist_to_hod_atr":3.598658,"atr":0.055743,"spread_atr":0.179395,"own_change_pct":0.279609,"rel_strength_pct":{"SPY":0.26083,"IWM":0.290111}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.247747},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d91d0d18b555","ts":"2026-09-21T17:03:23.690588+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.25x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.9521,"target":13.1286,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":-1.7,"room_to_5d_high_atr":3.04},"price":13.05,"vwap":13.0416,"ext_from_open_pct":-1.36,"max_ext_allowed_pct":4.0,"volume_pace":0.251,"trend":"flat","recent_slope_pct":-0.0256,"volatility":"medium"},"price":13.05,"volume":{"bars":213,"last_bar_volume":6058.0,"baseline_avg":3185.0,"bar_rvol":1.902041,"raw_accel":6.011574,"smooth_accel":-0.409108,"accel_momentum":0.39901,"rvol_3bar":[0.801085,0.267604,1.902041],"trend_3bar":"MIXED","projected_rvol":1.127567},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":504.0,"sell_vol":945.0,"unclassified_vol":0.0,"imbalance":-0.304348,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":5.644414},"context":{"vwap":13.041602,"price_vs_vwap_pct":0.064395,"ema9":13.062947,"ema20":13.062549,"ema_stack":false,"ema_warm":true,"hod":13.3617,"dist_to_hod_pct":-2.332787,"dist_to_hod_atr":24.28204,"atr":0.012837,"spread_atr":0.77902,"own_change_pct":-0.065034,"rel_strength_pct":{"SPY":-0.083813,"IWM":-0.054532}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.578882},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c769dc111131","ts":"2026-09-21T17:03:28.791235+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.1% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":11.2,"target":11.534,"target_label":"clear air (typical 60-min move)","reward_risk":1.15,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.355,"vwap":11.0221,"ext_from_open_pct":6.12,"max_ext_allowed_pct":3.0,"volume_pace":0.6,"trend":"flat","recent_slope_pct":0.2417,"volatility":"unknown"},"price":11.355,"volume":{"bars":213,"last_bar_volume":145985.0,"baseline_avg":65449.25,"bar_rvol":2.230507,"raw_accel":-0.28689,"smooth_accel":2.724756,"accel_momentum":2.304411,"rvol_3bar":[1.096715,3.467168,2.230507],"trend_3bar":"MIXED","projected_rvol":1.673625},"flow":{"window_s":30,"trades":257,"trade_rate":8.566667,"buy_vol":51779.0,"sell_vol":18289.0,"unclassified_vol":0.0,"imbalance":0.477964,"bid":11.35,"ask":11.36,"spread_pct":0.088067,"quote_size_imbalance":null,"quote_age_s":0.476548},"context":{"vwap":11.021434,"price_vs_vwap_pct":3.026519,"ema9":11.292781,"ema20":11.291179,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.174935,"dist_to_hod_atr":2.421829,"atr":0.055743,"spread_atr":0.179395,"own_change_pct":0.279609,"rel_strength_pct":{"SPY":0.26083,"IWM":0.290111}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.066103},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"90de846831b8","ts":"2026-09-21T17:03:28.791235+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.25x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.9571,"target":13.42,"target_label":"prev_day_high","reward_risk":3.73,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":3.02},"price":13.055,"vwap":13.0416,"ext_from_open_pct":-1.32,"max_ext_allowed_pct":4.0,"volume_pace":0.251,"trend":"flat","recent_slope_pct":-0.018,"volatility":"medium"},"price":13.055,"volume":{"bars":213,"last_bar_volume":6058.0,"baseline_avg":3185.0,"bar_rvol":1.902041,"raw_accel":6.011574,"smooth_accel":-0.409108,"accel_momentum":0.39901,"rvol_3bar":[0.801085,0.267604,1.902041],"trend_3bar":"MIXED","projected_rvol":0.938276},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":510.0,"sell_vol":924.0,"unclassified_vol":0.0,"imbalance":-0.288703,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":0.584421},"context":{"vwap":13.041602,"price_vs_vwap_pct":0.102733,"ema9":13.062947,"ema20":13.062549,"ema_stack":false,"ema_warm":true,"hod":13.3617,"dist_to_hod_pct":-2.295367,"dist_to_hod_atr":23.89253,"atr":0.012837,"spread_atr":0.77902,"own_change_pct":-0.065034,"rel_strength_pct":{"SPY":-0.083813,"IWM":-0.054532}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.549125},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"013af5180e69","ts":"2026-09-21T17:03:28.791235+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1232,"target":5.2,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1776,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.826,"trend":"flat","recent_slope_pct":-0.0798,"volatility":"unknown"},"price":5.175,"volume":{"bars":213,"last_bar_volume":8245.0,"baseline_avg":20020.25,"bar_rvol":0.411833,"raw_accel":-0.039939,"smooth_accel":-0.502509,"accel_momentum":0.21378,"rvol_3bar":[0.42641,0.393958,0.411833],"trend_3bar":"MIXED","projected_rvol":0.070159},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":315.0,"sell_vol":459.0,"unclassified_vol":0.0,"imbalance":-0.186047,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":1.285545},"context":{"vwap":5.177562,"price_vs_vwap_pct":-0.049482,"ema9":5.180418,"ema20":5.181023,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":7.473004,"atr":0.016727,"spread_atr":0.59784,"own_change_pct":-0.446729,"rel_strength_pct":{"SPY":-0.465508,"IWM":-0.436227}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.07662},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"952ef87b1589","ts":"2026-09-21T17:03:28.791235+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7764,"target":8.94,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.779,"ext_from_open_pct":4.05,"max_ext_allowed_pct":4.0,"volume_pace":0.505,"trend":"flat","recent_slope_pct":-0.0105,"volatility":"unknown"},"price":8.865,"volume":{"bars":213,"last_bar_volume":49160.0,"baseline_avg":33470.2,"bar_rvol":1.468769,"raw_accel":-0.303564,"smooth_accel":1.295527,"accel_momentum":-0.360982,"rvol_3bar":[1.377065,2.271745,1.468769],"trend_3bar":"MIXED","projected_rvol":2.012228},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":30526.0,"sell_vol":1792.0,"unclassified_vol":0.0,"imbalance":0.889102,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":7.273987},"context":{"vwap":8.778835,"price_vs_vwap_pct":0.981509,"ema9":8.865674,"ema20":8.869269,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.838926,"dist_to_hod_atr":3.266947,"atr":0.022957,"spread_atr":0.435593,"own_change_pct":-0.433139,"rel_strength_pct":{"SPY":-0.451918,"IWM":-0.422637}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.305886},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3e5d22350bf1","ts":"2026-09-21T17:03:44.187409+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.25x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.9521,"target":13.1286,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":-1.7,"room_to_5d_high_atr":3.04},"price":13.05,"vwap":13.0416,"ext_from_open_pct":-1.36,"max_ext_allowed_pct":4.0,"volume_pace":0.25,"trend":"flat","recent_slope_pct":-0.0256,"volatility":"medium"},"price":13.05,"volume":{"bars":213,"last_bar_volume":6058.0,"baseline_avg":3185.0,"bar_rvol":1.902041,"raw_accel":6.011574,"smooth_accel":-0.409108,"accel_momentum":0.39901,"rvol_3bar":[0.801085,0.267604,1.902041],"trend_3bar":"MIXED","projected_rvol":0.683829},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":113.0,"sell_vol":88.0,"unclassified_vol":0.0,"imbalance":0.124378,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":0.169942},"context":{"vwap":13.041602,"price_vs_vwap_pct":0.064395,"ema9":13.062947,"ema20":13.062549,"ema_stack":false,"ema_warm":true,"hod":13.3617,"dist_to_hod_pct":-2.332787,"dist_to_hod_atr":24.28204,"atr":0.012837,"spread_atr":0.77902,"own_change_pct":-0.065034,"rel_strength_pct":{"SPY":-0.083813,"IWM":-0.054532}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.236572},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"28654fbd0c4e","ts":"2026-09-21T17:03:54.421889+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.5% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":11.1784,"target":11.36,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.2913,"vwap":11.0221,"ext_from_open_pct":5.53,"max_ext_allowed_pct":3.0,"volume_pace":0.599,"trend":"flat","recent_slope_pct":0.1291,"volatility":"unknown"},"price":11.2913,"volume":{"bars":213,"last_bar_volume":145985.0,"baseline_avg":65449.25,"bar_rvol":2.230507,"raw_accel":-0.28689,"smooth_accel":2.724756,"accel_momentum":2.304411,"rvol_3bar":[1.096715,3.467168,2.230507],"trend_3bar":"MIXED","projected_rvol":1.04901},"flow":{"window_s":30,"trades":125,"trade_rate":4.166667,"buy_vol":22936.0,"sell_vol":10006.0,"unclassified_vol":0.0,"imbalance":0.392508,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.226909},"context":{"vwap":11.021434,"price_vs_vwap_pct":2.448554,"ema9":11.292781,"ema20":11.291179,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.72933,"dist_to_hod_atr":3.564573,"atr":0.055743,"spread_atr":0.179395,"own_change_pct":0.279609,"rel_strength_pct":{"SPY":0.26083,"IWM":0.290111}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.875492},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"51f4aa121499","ts":"2026-09-21T17:03:54.421889+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.25x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.9571,"target":13.42,"target_label":"prev_day_high","reward_risk":3.73,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":3.02},"price":13.055,"vwap":13.0416,"ext_from_open_pct":-1.32,"max_ext_allowed_pct":4.0,"volume_pace":0.25,"trend":"flat","recent_slope_pct":-0.018,"volatility":"medium"},"price":13.055,"volume":{"bars":213,"last_bar_volume":6058.0,"baseline_avg":3185.0,"bar_rvol":1.902041,"raw_accel":6.011574,"smooth_accel":-0.409108,"accel_momentum":0.39901,"rvol_3bar":[0.801085,0.267604,1.902041],"trend_3bar":"MIXED","projected_rvol":0.573576},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":134.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":0.121339,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":9.381834},"context":{"vwap":13.041602,"price_vs_vwap_pct":0.102733,"ema9":13.062947,"ema20":13.062549,"ema_stack":false,"ema_warm":true,"hod":13.3617,"dist_to_hod_pct":-2.295367,"dist_to_hod_atr":23.89253,"atr":0.012837,"spread_atr":0.77902,"own_change_pct":-0.065034,"rel_strength_pct":{"SPY":-0.083813,"IWM":-0.054532}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.230792},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d1ce91e1b405","ts":"2026-09-21T17:03:54.421889+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.7961,"target":8.94,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.885,"vwap":8.7792,"ext_from_open_pct":4.28,"max_ext_allowed_pct":4.0,"volume_pace":0.506,"trend":"flat","recent_slope_pct":0.0346,"volatility":"unknown"},"price":8.885,"volume":{"bars":213,"last_bar_volume":49160.0,"baseline_avg":33470.2,"bar_rvol":1.468769,"raw_accel":-0.303564,"smooth_accel":1.295527,"accel_momentum":-0.360982,"rvol_3bar":[1.377065,2.271745,1.468769],"trend_3bar":"MIXED","projected_rvol":2.394649},"flow":{"window_s":30,"trades":150,"trade_rate":5.0,"buy_vol":39705.0,"sell_vol":10265.0,"unclassified_vol":0.0,"imbalance":0.589153,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":0.032438},"context":{"vwap":8.778835,"price_vs_vwap_pct":1.209329,"ema9":8.865674,"ema20":8.869269,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.615213,"dist_to_hod_atr":2.395761,"atr":0.022957,"spread_atr":0.435593,"own_change_pct":-0.433139,"rel_strength_pct":{"SPY":-0.451918,"IWM":-0.422637}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.865331},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"53163f9cab9d","ts":"2026-09-21T17:03:59.534740+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":11.1829,"target":11.4749,"target_label":"clear air (typical 60-min move)","reward_risk":1.58,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.2959,"vwap":11.0222,"ext_from_open_pct":5.57,"max_ext_allowed_pct":4.0,"volume_pace":0.599,"trend":"flat","recent_slope_pct":0.1372,"volatility":"unknown"},"price":11.2959,"volume":{"bars":213,"last_bar_volume":145985.0,"baseline_avg":65449.25,"bar_rvol":2.230507,"raw_accel":-0.28689,"smooth_accel":2.724756,"accel_momentum":2.304411,"rvol_3bar":[1.096715,3.467168,2.230507],"trend_3bar":"MIXED","projected_rvol":0.978262},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":8840.0,"sell_vol":2028.0,"unclassified_vol":0.0,"imbalance":0.626794,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":1.238429},"context":{"vwap":11.021434,"price_vs_vwap_pct":2.490291,"ema9":11.292781,"ema20":11.291179,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.689295,"dist_to_hod_atr":3.482052,"atr":0.055743,"spread_atr":0.179395,"own_change_pct":0.279609,"rel_strength_pct":{"SPY":0.26083,"IWM":0.290111}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.398069},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ddf867a939ba","ts":"2026-09-21T17:04:04.695210+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.6882,"target":13.53,"target_label":"ceiling","reward_risk":1.15,"pos_in_5d_range_pct":153.9,"room_to_5d_high_atr":-1.61},"price":13.08,"vwap":12.9143,"ext_from_open_pct":0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.634,"trend":"flat","recent_slope_pct":-0.4684,"volatility":"high"},"price":13.08,"volume":{"bars":214,"last_bar_volume":13183.0,"baseline_avg":16313.55,"bar_rvol":0.808101,"raw_accel":0.122435,"smooth_accel":-0.342412,"accel_momentum":-0.15809,"rvol_3bar":[0.415932,0.70287,0.808101],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":580.0,"sell_vol":7712.0,"unclassified_vol":0.0,"imbalance":-0.860106,"bid":13.04,"ask":13.11,"spread_pct":0.535373,"quote_size_imbalance":null,"quote_age_s":0.044347},"context":{"vwap":12.914162,"price_vs_vwap_pct":1.284153,"ema9":13.27554,"ema20":13.310309,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.217391,"dist_to_hod_atr":7.132367,"atr":0.100948,"spread_atr":0.693425,"own_change_pct":-1.503759,"rel_strength_pct":{"SPY":-1.51399,"IWM":-1.489756}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.695053},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"21b76fd1474e","ts":"2026-09-21T17:04:04.695210+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.3% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":11.2,"target":11.548,"target_label":"clear air (typical 60-min move)","reward_risk":1.05,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.37,"vwap":11.0222,"ext_from_open_pct":6.26,"max_ext_allowed_pct":4.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":0.1989,"volatility":"unknown"},"price":11.37,"volume":{"bars":214,"last_bar_volume":63640.0,"baseline_avg":70528.2,"bar_rvol":0.902334,"raw_accel":-0.564065,"smooth_accel":2.259576,"accel_momentum":-0.46518,"rvol_3bar":[3.467168,2.230507,0.902334],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":6030.0,"sell_vol":1407.0,"unclassified_vol":0.0,"imbalance":0.621622,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.455092},"context":{"vwap":11.022161,"price_vs_vwap_pct":3.15581,"ema9":11.292225,"ema20":11.291067,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.044386,"dist_to_hod_atr":2.045889,"atr":0.058654,"spread_atr":0.170491,"own_change_pct":0.579065,"rel_strength_pct":{"SPY":0.568834,"IWM":0.593068}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.56091},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"94acbd017d99","ts":"2026-09-21T17:04:04.695210+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7961,"target":8.94,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.885,"vwap":8.7792,"ext_from_open_pct":4.28,"max_ext_allowed_pct":4.0,"volume_pace":0.505,"trend":"flat","recent_slope_pct":0.0916,"volatility":"unknown"},"price":8.885,"volume":{"bars":214,"last_bar_volume":72709.0,"baseline_avg":35683.35,"bar_rvol":2.037617,"raw_accel":0.479028,"smooth_accel":1.021289,"accel_momentum":-0.274238,"rvol_3bar":[2.271745,1.468769,2.037617],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":139,"trade_rate":4.633333,"buy_vol":27812.0,"sell_vol":4987.0,"unclassified_vol":0.0,"imbalance":0.695905,"bid":8.88,"ask":8.89,"spread_pct":0.112549,"quote_size_imbalance":null,"quote_age_s":0.280859},"context":{"vwap":8.779234,"price_vs_vwap_pct":1.204729,"ema9":8.869539,"ema20":8.870767,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.615213,"dist_to_hod_atr":2.275792,"atr":0.024167,"spread_atr":0.41378,"own_change_pct":0.018011,"rel_strength_pct":{"SPY":0.007781,"IWM":0.032015}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.417989},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"79852e695cfd","ts":"2026-09-21T17:04:20.115386+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.25x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.9521,"target":13.1286,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":-1.7,"room_to_5d_high_atr":3.04},"price":13.05,"vwap":13.0416,"ext_from_open_pct":-1.36,"max_ext_allowed_pct":3.0,"volume_pace":0.25,"trend":"flat","recent_slope_pct":-0.0314,"volatility":"medium"},"price":13.05,"volume":{"bars":214,"last_bar_volume":1664.0,"baseline_avg":3238.6,"bar_rvol":0.513802,"raw_accel":-0.725322,"smooth_accel":-0.517586,"accel_momentum":-0.108478,"rvol_3bar":[0.267604,1.902041,0.513802],"trend_3bar":"MIXED","projected_rvol":0.758914},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":57.0,"sell_vol":827.0,"unclassified_vol":0.0,"imbalance":-0.871041,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":0.00022},"context":{"vwap":13.04162,"price_vs_vwap_pct":0.064257,"ema9":13.060377,"ema20":13.061363,"ema_stack":false,"ema_warm":true,"hod":13.3617,"dist_to_hod_pct":-2.332787,"dist_to_hod_atr":24.165945,"atr":0.012898,"spread_atr":0.775295,"own_change_pct":-0.075804,"rel_strength_pct":{"SPY":-0.086034,"IWM":-0.0618}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.447543},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1fa12ff6e1e9","ts":"2026-09-21T17:04:30.450119+00:00","symbol":"MAT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.25x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.9534,"target":13.42,"target_label":"prev_day_high","reward_risk":3.76,"pos_in_5d_range_pct":-1.6,"room_to_5d_high_atr":3.03},"price":13.0513,"vwap":13.0416,"ext_from_open_pct":-1.35,"max_ext_allowed_pct":3.0,"volume_pace":0.25,"trend":"flat","recent_slope_pct":-0.0294,"volatility":"medium"},"price":13.0513,"volume":{"bars":214,"last_bar_volume":1664.0,"baseline_avg":3238.6,"bar_rvol":0.513802,"raw_accel":-0.725322,"smooth_accel":-0.517586,"accel_momentum":-0.108478,"rvol_3bar":[0.267604,1.902041,0.513802],"trend_3bar":"MIXED","projected_rvol":1.129231},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":64.0,"sell_vol":1792.0,"unclassified_vol":0.0,"imbalance":-0.931034,"bid":13.05,"ask":13.06,"spread_pct":0.076599,"quote_size_imbalance":null,"quote_age_s":4.751286},"context":{"vwap":13.04162,"price_vs_vwap_pct":0.074226,"ema9":13.060377,"ema20":13.061363,"ema_stack":false,"ema_warm":true,"hod":13.3617,"dist_to_hod_pct":-2.323058,"dist_to_hod_atr":24.065157,"atr":0.012898,"spread_atr":0.775295,"own_change_pct":-0.075804,"rel_strength_pct":{"SPY":-0.086034,"IWM":-0.0618}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.478368},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"28a68b9c3a68","ts":"2026-09-21T17:05:31.964176+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.1282,"target":5.2,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.18,"vwap":5.1776,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":0.0288,"volatility":"unknown"},"price":5.18,"volume":{"bars":215,"last_bar_volume":7407.0,"baseline_avg":19091.8,"bar_rvol":0.387968,"raw_accel":0.55187,"smooth_accel":-0.252334,"accel_momentum":0.237563,"rvol_3bar":[0.411833,0.082764,0.387968],"trend_3bar":"MIXED","projected_rvol":0.840732},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":255.0,"sell_vol":8216.0,"unclassified_vol":0.0,"imbalance":-0.939795,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":2.575402},"context":{"vwap":5.177559,"price_vs_vwap_pct":0.047152,"ema9":5.178771,"ema20":5.180094,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.264151,"dist_to_hod_atr":7.605148,"atr":0.015779,"spread_atr":0.633762,"own_change_pct":-0.398406,"rel_strength_pct":{"SPY":-0.391285,"IWM":-0.368651}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.36461},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cc442976a247","ts":"2026-09-21T17:05:37.050260+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1226,"target":5.2,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1743,"vwap":5.1776,"ext_from_open_pct":-0.49,"max_ext_allowed_pct":3.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":0.0068,"volatility":"unknown"},"price":5.1743,"volume":{"bars":215,"last_bar_volume":7407.0,"baseline_avg":19091.8,"bar_rvol":0.387968,"raw_accel":0.55187,"smooth_accel":-0.252334,"accel_momentum":0.237563,"rvol_3bar":[0.411833,0.082764,0.387968],"trend_3bar":"MIXED","projected_rvol":0.764085},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":355.0,"sell_vol":8573.0,"unclassified_vol":0.0,"imbalance":-0.920475,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":2.642083},"context":{"vwap":5.177559,"price_vs_vwap_pct":-0.062938,"ema9":5.178771,"ema20":5.180094,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.371698,"dist_to_hod_atr":7.966393,"atr":0.015779,"spread_atr":0.633762,"own_change_pct":-0.398406,"rel_strength_pct":{"SPY":-0.391285,"IWM":-0.368651}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.357114},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cfb735b62cf2","ts":"2026-09-21T17:06:02.618869+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":10.786,"target":11.05,"target_label":"ceiling","reward_risk":1.05,"pos_in_5d_range_pct":104.5,"room_to_5d_high_atr":-0.11},"price":10.915,"vwap":10.858,"ext_from_open_pct":-0.59,"max_ext_allowed_pct":4.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":-0.0027,"volatility":"medium"},"price":10.915,"volume":{"bars":216,"last_bar_volume":119282.0,"baseline_avg":70264.2,"bar_rvol":1.697621,"raw_accel":5.745575,"smooth_accel":0.140241,"accel_momentum":0.632499,"rvol_3bar":[0.405173,0.236725,1.697621],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":21505.0,"sell_vol":4778.0,"unclassified_vol":0.0,"imbalance":0.636419,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":0.208968},"context":{"vwap":10.858049,"price_vs_vwap_pct":0.524501,"ema9":10.915048,"ema20":10.91577,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.839111,"dist_to_hod_atr":5.121296,"atr":0.039931,"spread_atr":0.25043,"own_change_pct":-0.119874,"rel_strength_pct":{"SPY":-0.128937,"IWM":-0.100621}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.080398},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1847f86343b6","ts":"2026-09-21T17:06:07.745266+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7382,"target":13.53,"target_label":"ceiling","reward_risk":1.02,"pos_in_5d_range_pct":155.0,"room_to_5d_high_atr":-1.64},"price":13.13,"vwap":12.9149,"ext_from_open_pct":0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":-0.1672,"volatility":"high"},"price":13.13,"volume":{"bars":216,"last_bar_volume":6851.0,"baseline_avg":14761.8,"bar_rvol":0.464103,"raw_accel":-0.323759,"smooth_accel":-0.126538,"accel_momentum":0.056007,"rvol_3bar":[0.808101,0.620917,0.464103],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":2069.0,"sell_vol":1276.0,"unclassified_vol":0.0,"imbalance":0.23707,"bid":13.13,"ask":13.16,"spread_pct":0.228224,"quote_size_imbalance":null,"quote_age_s":14.744077},"context":{"vwap":12.914887,"price_vs_vwap_pct":1.665618,"ema9":13.230058,"ema20":13.280948,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.855072,"dist_to_hod_atr":6.686268,"atr":0.100205,"spread_atr":0.299385,"own_change_pct":-0.978179,"rel_strength_pct":{"SPY":-0.987242,"IWM":-0.958926}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.110025},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"98681fb3738c","ts":"2026-09-21T17:07:04.103795+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 662.8s, plan says PASS; stop 8.58, target 8.76 (premarket_high), R:R 0.74; R:R 0.74 < 2.0 at 8.69; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.5831,"target":8.76,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6322,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":8.685,"volume":{"bars":217,"last_bar_volume":1465.0,"baseline_avg":988.5,"bar_rvol":1.482044,"raw_accel":-0.227321,"smooth_accel":2.756859,"accel_momentum":2.876365,"rvol_3bar":[0.581562,1.781369,1.482044],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":489.0,"sell_vol":777.0,"unclassified_vol":0.0,"imbalance":-0.227488,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":2.853292},"context":{"vwap":8.632205,"price_vs_vwap_pct":0.611604,"ema9":8.685471,"ema20":8.683183,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":18.454592,"atr":0.014267,"spread_atr":0.700896,"own_change_pct":0.040316,"rel_strength_pct":{"SPY":0.027368,"IWM":0.047317}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.337147},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c6e39ca3130e","ts":"2026-09-21T17:07:04.103795+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"held 348.0s, plan says WATCH; stop 7.99, target 8.22 (ceiling), R:R 0.47; R:R 0.47 < 2.0 at 8.15; pullback: buy 8.12-8.14 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":7.994,"target":8.22,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":122.8,"room_to_5d_high_atr":-0.72},"price":8.148,"vwap":8.0799,"ext_from_open_pct":-0.51,"max_ext_allowed_pct":4.0,"volume_pace":0.559,"trend":"flat","recent_slope_pct":0.0662,"volatility":"high"},"price":8.148,"volume":{"bars":217,"last_bar_volume":4205.0,"baseline_avg":6066.85,"bar_rvol":0.693111,"raw_accel":0.609261,"smooth_accel":-0.845053,"accel_momentum":0.067598,"rvol_3bar":[0.330027,0.41263,0.693111],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":3023.0,"sell_vol":591.0,"unclassified_vol":0.0,"imbalance":0.672939,"bid":8.12,"ask":8.13,"spread_pct":0.123077,"quote_size_imbalance":null,"quote_age_s":5.142451},"context":{"vwap":8.079944,"price_vs_vwap_pct":0.842289,"ema9":8.119195,"ema20":8.099337,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.754571,"dist_to_hod_atr":5.812891,"atr":0.039705,"spread_atr":0.251858,"own_change_pct":-0.19644,"rel_strength_pct":{"SPY":-0.209387,"IWM":-0.189438}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.466421},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1575c7dc076c","ts":"2026-09-21T17:07:04.103795+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.9% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":11.2,"target":11.5086,"target_label":"clear air (typical 60-min move)","reward_risk":1.26,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.3364,"vwap":11.0266,"ext_from_open_pct":5.95,"max_ext_allowed_pct":4.0,"volume_pace":0.599,"trend":"flat","recent_slope_pct":-0.0113,"volatility":"unknown"},"price":11.3364,"volume":{"bars":217,"last_bar_volume":50506.0,"baseline_avg":78229.8,"bar_rvol":0.645611,"raw_accel":-0.831698,"smooth_accel":-0.027574,"accel_momentum":-0.03453,"rvol_3bar":[0.722599,4.518032,0.645611],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":18066.0,"sell_vol":3233.0,"unclassified_vol":0.0,"imbalance":0.696418,"bid":11.26,"ask":11.27,"spread_pct":0.088771,"quote_size_imbalance":null,"quote_age_s":2.812955},"context":{"vwap":11.026612,"price_vs_vwap_pct":2.809457,"ema9":11.297099,"ema20":11.295024,"ema_stack":true,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.336815,"dist_to_hod_atr":2.344351,"atr":0.065519,"spread_atr":0.152627,"own_change_pct":-0.314905,"rel_strength_pct":{"SPY":-0.327852,"IWM":-0.307904}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.449615},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fb4793c364b7","ts":"2026-09-21T17:07:09.256473+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.1573,"target":11.4422,"target_label":"clear air (typical 60-min move)","reward_risk":1.53,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.27,"vwap":11.0266,"ext_from_open_pct":5.33,"max_ext_allowed_pct":4.0,"volume_pace":0.599,"trend":"flat","recent_slope_pct":-0.1289,"volatility":"unknown"},"price":11.27,"volume":{"bars":217,"last_bar_volume":50506.0,"baseline_avg":78229.8,"bar_rvol":0.645611,"raw_accel":-0.831698,"smooth_accel":-0.027574,"accel_momentum":-0.03453,"rvol_3bar":[0.722599,4.518032,0.645611],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":15597.0,"sell_vol":2111.0,"unclassified_vol":0.0,"imbalance":0.761577,"bid":11.26,"ask":11.27,"spread_pct":0.088771,"quote_size_imbalance":null,"quote_age_s":3.008964},"context":{"vwap":11.026612,"price_vs_vwap_pct":2.207277,"ema9":11.297099,"ema20":11.295024,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.914708,"dist_to_hod_atr":3.357794,"atr":0.065519,"spread_atr":0.152627,"own_change_pct":-0.314905,"rel_strength_pct":{"SPY":-0.327852,"IWM":-0.307904}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.491682},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fcd0f5f428d3","ts":"2026-09-21T17:08:26.002019+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3664,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.319,"trend":"flat","recent_slope_pct":0.07,"volatility":"unknown"},"price":6.48,"volume":{"bars":218,"last_bar_volume":78246.0,"baseline_avg":37573.05,"bar_rvol":2.082503,"raw_accel":7.330013,"smooth_accel":0.373202,"accel_momentum":1.114249,"rvol_3bar":[0.176435,0.06416,2.082503],"trend_3bar":"MIXED","projected_rvol":2.049571},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":9784.0,"sell_vol":37557.0,"unclassified_vol":0.0,"imbalance":-0.586658,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.125141},"context":{"vwap":6.366166,"price_vs_vwap_pct":1.788107,"ema9":6.466354,"ema20":6.464929,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.58088,"atr":0.017215,"spread_atr":0.58088,"own_change_pct":0.41063,"rel_strength_pct":{"SPY":0.406745,"IWM":0.398376}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.221718},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aa20953f98c2","ts":"2026-09-21T17:08:31.124616+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.2,"target":11.497,"target_label":"clear air (typical 60-min move)","reward_risk":1.34,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.327,"vwap":11.0279,"ext_from_open_pct":5.86,"max_ext_allowed_pct":4.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":-0.1068,"volatility":"unknown"},"price":11.327,"volume":{"bars":218,"last_bar_volume":98637.0,"baseline_avg":79515.1,"bar_rvol":1.240481,"raw_accel":0.952976,"smooth_accel":0.715011,"accel_momentum":0.742584,"rvol_3bar":[4.518032,0.645611,1.240481],"trend_3bar":"MIXED","projected_rvol":0.682604},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":18894.0,"sell_vol":9244.0,"unclassified_vol":0.0,"imbalance":0.342953,"bid":11.23,"ask":11.24,"spread_pct":0.089008,"quote_size_imbalance":null,"quote_age_s":1.934559},"context":{"vwap":11.027581,"price_vs_vwap_pct":2.715188,"ema9":11.289739,"ema20":11.291717,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.418625,"dist_to_hod_atr":2.453896,"atr":0.066425,"spread_atr":0.150546,"own_change_pct":-0.642366,"rel_strength_pct":{"SPY":-0.646251,"IWM":-0.65462}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.425426},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c55ac2ac9c91","ts":"2026-09-21T17:08:31.124616+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4053,"target":7.775,"target_label":"range_20d_high","reward_risk":20.17,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.3664,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.319,"trend":"flat","recent_slope_pct":0.0391,"volatility":"unknown"},"price":6.47,"volume":{"bars":218,"last_bar_volume":78246.0,"baseline_avg":37573.05,"bar_rvol":2.082503,"raw_accel":7.330013,"smooth_accel":0.373202,"accel_momentum":1.114249,"rvol_3bar":[0.176435,0.06416,2.082503],"trend_3bar":"MIXED","projected_rvol":2.312478},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":5491.0,"sell_vol":39581.0,"unclassified_vol":0.0,"imbalance":-0.756345,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.155117},"context":{"vwap":6.366166,"price_vs_vwap_pct":1.631027,"ema9":6.466354,"ema20":6.464929,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.308166,"dist_to_hod_atr":1.16176,"atr":0.017215,"spread_atr":0.58088,"own_change_pct":0.41063,"rel_strength_pct":{"SPY":0.406745,"IWM":0.398376}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.575092},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b6eecc6fe81a","ts":"2026-09-21T17:08:36.261092+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.1941,"target":11.4772,"target_label":"clear air (typical 60-min move)","reward_risk":1.5,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.3072,"vwap":11.028,"ext_from_open_pct":5.67,"max_ext_allowed_pct":4.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":-0.1419,"volatility":"unknown"},"price":11.3072,"volume":{"bars":218,"last_bar_volume":98637.0,"baseline_avg":79515.1,"bar_rvol":1.240481,"raw_accel":0.952976,"smooth_accel":0.715011,"accel_momentum":0.742584,"rvol_3bar":[4.518032,0.645611,1.240481],"trend_3bar":"MIXED","projected_rvol":0.968347},"flow":{"window_s":30,"trades":194,"trade_rate":6.466667,"buy_vol":32060.0,"sell_vol":14037.0,"unclassified_vol":0.0,"imbalance":0.39098,"bid":11.23,"ask":11.24,"spread_pct":0.089008,"quote_size_imbalance":null,"quote_age_s":0.064058},"context":{"vwap":11.027581,"price_vs_vwap_pct":2.535638,"ema9":11.289739,"ema20":11.291717,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-1.590949,"dist_to_hod_atr":2.751977,"atr":0.066425,"spread_atr":0.150546,"own_change_pct":-0.642366,"rel_strength_pct":{"SPY":-0.646251,"IWM":-0.65462}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.485003},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"87e13621724d","ts":"2026-09-21T17:09:01.958466+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1331,"target":5.2,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.185,"vwap":5.1776,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.815,"trend":"flat","recent_slope_pct":0.0699,"volatility":"unknown"},"price":5.185,"volume":{"bars":219,"last_bar_volume":48412.0,"baseline_avg":17419.4,"bar_rvol":2.7792,"raw_accel":2.015385,"smooth_accel":2.654523,"accel_momentum":2.06509,"rvol_3bar":[0.128707,0.962593,2.7792],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":17714.0,"sell_vol":15177.0,"unclassified_vol":0.0,"imbalance":0.077134,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.843158},"context":{"vwap":5.177562,"price_vs_vwap_pct":0.143649,"ema9":5.177267,"ema20":5.178624,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.169811,"dist_to_hod_atr":7.753463,"atr":0.014832,"spread_atr":0.674214,"own_change_pct":0.156464,"rel_strength_pct":{"SPY":0.151285,"IWM":0.135456}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.21437},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"abbb4a22e9e3","ts":"2026-09-21T17:09:07.258341+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.18 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1255,"target":5.2,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1773,"vwap":5.1776,"ext_from_open_pct":-0.44,"max_ext_allowed_pct":3.0,"volume_pace":0.815,"trend":"flat","recent_slope_pct":0.0402,"volatility":"unknown"},"price":5.1773,"volume":{"bars":219,"last_bar_volume":48412.0,"baseline_avg":17419.4,"bar_rvol":2.7792,"raw_accel":2.015385,"smooth_accel":2.654523,"accel_momentum":2.06509,"rvol_3bar":[0.128707,0.962593,2.7792],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":15668.0,"sell_vol":14501.0,"unclassified_vol":0.0,"imbalance":0.038682,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.417908},"context":{"vwap":5.177562,"price_vs_vwap_pct":-0.00507,"ema9":5.177267,"ema20":5.178624,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.315094,"dist_to_hod_atr":8.272608,"atr":0.014832,"spread_atr":0.674214,"own_change_pct":0.156464,"rel_strength_pct":{"SPY":0.151285,"IWM":0.135456}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.107505},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"495cf6721574","ts":"2026-09-21T17:09:12.387616+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.951,"target":8.215,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":120.6,"room_to_5d_high_atr":-0.65},"price":8.105,"vwap":8.0802,"ext_from_open_pct":-1.04,"max_ext_allowed_pct":4.0,"volume_pace":0.556,"trend":"flat","recent_slope_pct":-0.0731,"volatility":"high"},"price":8.105,"volume":{"bars":219,"last_bar_volume":1244.0,"baseline_avg":6182.7,"bar_rvol":0.201207,"raw_accel":-0.780367,"smooth_accel":0.766773,"accel_momentum":1.322905,"rvol_3bar":[0.693111,0.94138,0.201207],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2726.0,"sell_vol":604.0,"unclassified_vol":0.0,"imbalance":0.637237,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":2.601613},"context":{"vwap":8.080111,"price_vs_vwap_pct":0.30803,"ema9":8.121829,"ema20":8.104301,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.267771,"dist_to_hod_atr":7.184504,"atr":0.03811,"spread_atr":0.2624,"own_change_pct":-0.014769,"rel_strength_pct":{"SPY":-0.019949,"IWM":-0.035778}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.128216},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8c155c04138f","ts":"2026-09-21T17:09:12.387616+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1282,"target":5.2,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.18,"vwap":5.1776,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.815,"trend":"flat","recent_slope_pct":0.0506,"volatility":"unknown"},"price":5.18,"volume":{"bars":219,"last_bar_volume":48412.0,"baseline_avg":17419.4,"bar_rvol":2.7792,"raw_accel":2.015385,"smooth_accel":2.654523,"accel_momentum":2.06509,"rvol_3bar":[0.128707,0.962593,2.7792],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":15586.0,"sell_vol":9132.0,"unclassified_vol":0.0,"imbalance":0.261105,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.516913},"context":{"vwap":5.177562,"price_vs_vwap_pct":0.047078,"ema9":5.177267,"ema20":5.178624,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.264151,"dist_to_hod_atr":8.09057,"atr":0.014832,"spread_atr":0.674214,"own_change_pct":0.156464,"rel_strength_pct":{"SPY":0.151285,"IWM":0.135456}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.725664},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c365bb74e76e","ts":"2026-09-21T17:09:17.544497+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.946,"target":8.215,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.1,"vwap":8.0802,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":4.0,"volume_pace":0.556,"trend":"flat","recent_slope_pct":-0.0854,"volatility":"high"},"price":8.1,"volume":{"bars":219,"last_bar_volume":1244.0,"baseline_avg":6182.7,"bar_rvol":0.201207,"raw_accel":-0.780367,"smooth_accel":0.766773,"accel_momentum":1.322905,"rvol_3bar":[0.693111,0.94138,0.201207],"trend_3bar":"MIXED","projected_rvol":1.777227},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2753.0,"sell_vol":604.0,"unclassified_vol":0.0,"imbalance":0.640155,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":0.036062},"context":{"vwap":8.080111,"price_vs_vwap_pct":0.246149,"ema9":8.121829,"ema20":8.104301,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.327445,"dist_to_hod_atr":7.315704,"atr":0.03811,"spread_atr":0.2624,"own_change_pct":-0.014769,"rel_strength_pct":{"SPY":-0.019949,"IWM":-0.035778}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.128803},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bc1586004e30","ts":"2026-09-21T17:09:17.544497+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.18 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1257,"target":5.2,"target_label":"premarket_high","reward_risk":0.43,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1775,"vwap":5.1776,"ext_from_open_pct":-0.43,"max_ext_allowed_pct":3.0,"volume_pace":0.815,"trend":"flat","recent_slope_pct":0.041,"volatility":"unknown"},"price":5.1775,"volume":{"bars":219,"last_bar_volume":48412.0,"baseline_avg":17419.4,"bar_rvol":2.7792,"raw_accel":2.015385,"smooth_accel":2.654523,"accel_momentum":2.06509,"rvol_3bar":[0.128707,0.962593,2.7792],"trend_3bar":"ACCELERATING","projected_rvol":0.412873},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":15179.0,"sell_vol":9142.0,"unclassified_vol":0.0,"imbalance":0.248222,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":4.060271},"context":{"vwap":5.177562,"price_vs_vwap_pct":-0.001207,"ema9":5.177267,"ema20":5.178624,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.311321,"dist_to_hod_atr":8.259123,"atr":0.014832,"spread_atr":0.674214,"own_change_pct":0.156464,"rel_strength_pct":{"SPY":0.151285,"IWM":0.135456}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.689858},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aed6a7926e38","ts":"2026-09-21T17:09:22.710152+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1331,"target":5.2,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.185,"vwap":5.1776,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.814,"trend":"flat","recent_slope_pct":0.0699,"volatility":"unknown"},"price":5.185,"volume":{"bars":219,"last_bar_volume":48412.0,"baseline_avg":17419.4,"bar_rvol":2.7792,"raw_accel":2.015385,"smooth_accel":2.654523,"accel_momentum":2.06509,"rvol_3bar":[0.128707,0.962593,2.7792],"trend_3bar":"ACCELERATING","projected_rvol":0.405867},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":14704.0,"sell_vol":9600.0,"unclassified_vol":0.0,"imbalance":0.210007,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.122596},"context":{"vwap":5.177562,"price_vs_vwap_pct":0.143649,"ema9":5.177267,"ema20":5.178624,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.169811,"dist_to_hod_atr":7.753463,"atr":0.014832,"spread_atr":0.674214,"own_change_pct":0.156464,"rel_strength_pct":{"SPY":0.151285,"IWM":0.135456}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.58365},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"33f5c66991e4","ts":"2026-09-21T17:09:27.843504+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.18 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1257,"target":5.2,"target_label":"premarket_high","reward_risk":0.43,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1775,"vwap":5.1776,"ext_from_open_pct":-0.43,"max_ext_allowed_pct":3.0,"volume_pace":0.814,"trend":"flat","recent_slope_pct":0.041,"volatility":"unknown"},"price":5.1775,"volume":{"bars":219,"last_bar_volume":48412.0,"baseline_avg":17419.4,"bar_rvol":2.7792,"raw_accel":2.015385,"smooth_accel":2.654523,"accel_momentum":2.06509,"rvol_3bar":[0.128707,0.962593,2.7792],"trend_3bar":"ACCELERATING","projected_rvol":0.333885},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":41.0,"sell_vol":9333.0,"unclassified_vol":0.0,"imbalance":-0.991252,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":1.707686},"context":{"vwap":5.177562,"price_vs_vwap_pct":-0.001207,"ema9":5.177267,"ema20":5.178624,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.311321,"dist_to_hod_atr":8.259123,"atr":0.014832,"spread_atr":0.674214,"own_change_pct":0.156464,"rel_strength_pct":{"SPY":0.151285,"IWM":0.135456}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.754889},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e2869d30f3aa","ts":"2026-09-21T17:09:32.990079+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.08 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.9255,"target":8.215,"target_label":"ceiling","reward_risk":0.88,"pos_in_5d_range_pct":119.3,"room_to_5d_high_atr":-0.61},"price":8.0795,"vwap":8.0802,"ext_from_open_pct":-1.35,"max_ext_allowed_pct":3.0,"volume_pace":0.556,"trend":"flat","recent_slope_pct":-0.136,"volatility":"high"},"price":8.0795,"volume":{"bars":219,"last_bar_volume":1244.0,"baseline_avg":6182.7,"bar_rvol":0.201207,"raw_accel":-0.780367,"smooth_accel":0.766773,"accel_momentum":1.322905,"rvol_3bar":[0.693111,0.94138,0.201207],"trend_3bar":"MIXED","projected_rvol":2.138573},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":5364.0,"sell_vol":1895.0,"unclassified_vol":0.0,"imbalance":0.47789,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":1.296943},"context":{"vwap":8.080111,"price_vs_vwap_pct":-0.00756,"ema9":8.121829,"ema20":8.104301,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.572111,"dist_to_hod_atr":7.853624,"atr":0.03811,"spread_atr":0.2624,"own_change_pct":-0.014769,"rel_strength_pct":{"SPY":-0.019949,"IWM":-0.035778}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.096155},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2fea36b92b5b","ts":"2026-09-21T17:09:38.132943+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1331,"target":5.2,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.185,"vwap":5.1776,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.813,"trend":"flat","recent_slope_pct":0.0699,"volatility":"unknown"},"price":5.185,"volume":{"bars":219,"last_bar_volume":48412.0,"baseline_avg":17419.4,"bar_rvol":2.7792,"raw_accel":2.015385,"smooth_accel":2.654523,"accel_momentum":2.06509,"rvol_3bar":[0.128707,0.962593,2.7792],"trend_3bar":"ACCELERATING","projected_rvol":0.270891},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":13.0,"sell_vol":934.0,"unclassified_vol":0.0,"imbalance":-0.972545,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.34111},"context":{"vwap":5.177562,"price_vs_vwap_pct":0.143649,"ema9":5.177267,"ema20":5.178624,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.169811,"dist_to_hod_atr":7.753463,"atr":0.014832,"spread_atr":0.674214,"own_change_pct":0.156464,"rel_strength_pct":{"SPY":0.151285,"IWM":0.135456}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.702897},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a7373c6abf46","ts":"2026-09-21T17:09:48.349548+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.936,"target":8.215,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":119.8,"room_to_5d_high_atr":-0.62},"price":8.09,"vwap":8.0802,"ext_from_open_pct":-1.22,"max_ext_allowed_pct":4.0,"volume_pace":0.558,"trend":"flat","recent_slope_pct":-0.1101,"volatility":"high"},"price":8.09,"volume":{"bars":219,"last_bar_volume":1244.0,"baseline_avg":6182.7,"bar_rvol":0.201207,"raw_accel":-0.780367,"smooth_accel":0.766773,"accel_momentum":1.322905,"rvol_3bar":[0.693111,0.94138,0.201207],"trend_3bar":"MIXED","projected_rvol":3.228708},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":11365.0,"sell_vol":1508.0,"unclassified_vol":0.0,"imbalance":0.765711,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":0.823636},"context":{"vwap":8.080111,"price_vs_vwap_pct":0.122389,"ema9":8.121829,"ema20":8.104301,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.446794,"dist_to_hod_atr":7.578104,"atr":0.03811,"spread_atr":0.2624,"own_change_pct":-0.014769,"rel_strength_pct":{"SPY":-0.019949,"IWM":-0.035778}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.154066},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e36d3403638e","ts":"2026-09-21T17:09:48.349548+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4181,"target":7.775,"target_label":"range_20d_high","reward_risk":19.93,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4829,"vwap":6.367,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":1.318,"trend":"flat","recent_slope_pct":0.0785,"volatility":"unknown"},"price":6.4829,"volume":{"bars":219,"last_bar_volume":52944.0,"baseline_avg":40806.9,"bar_rvol":1.297428,"raw_accel":-0.323365,"smooth_accel":1.291039,"accel_momentum":0.917837,"rvol_3bar":[0.06416,2.082503,1.297428],"trend_3bar":"MIXED","projected_rvol":2.480807},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":45488.0,"sell_vol":34631.0,"unclassified_vol":0.0,"imbalance":0.135511,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.823625},"context":{"vwap":6.366499,"price_vs_vwap_pct":1.828338,"ema9":6.469083,"ema20":6.466364,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.109399,"dist_to_hod_atr":0.418177,"atr":0.016978,"spread_atr":0.588982,"own_change_pct":0.304939,"rel_strength_pct":{"SPY":0.29976,"IWM":0.283931}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.175816},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0d0d80dfd357","ts":"2026-09-21T17:10:03.743969+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +7.3% above open $8.69 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.2081,"target":9.3863,"target_label":"clear air (typical 60-min move)","reward_risk":0.52,"pos_in_5d_range_pct":321.7,"room_to_5d_high_atr":-4.81},"price":9.325,"vwap":9.1825,"ext_from_open_pct":7.31,"max_ext_allowed_pct":5.0,"volume_pace":6.58,"trend":"flat","recent_slope_pct":0.1802,"volatility":"medium"},"price":9.325,"volume":{"bars":220,"last_bar_volume":76204.0,"baseline_avg":55403.35,"bar_rvol":1.37544,"raw_accel":2.474716,"smooth_accel":-0.072775,"accel_momentum":0.290993,"rvol_3bar":[1.36699,0.396356,1.37544],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":13646.0,"sell_vol":3078.0,"unclassified_vol":0.0,"imbalance":0.631906,"bid":9.32,"ask":9.33,"spread_pct":0.107239,"quote_size_imbalance":null,"quote_age_s":3.558915},"context":{"vwap":9.182549,"price_vs_vwap_pct":1.551325,"ema9":9.294585,"ema20":9.277275,"ema_stack":true,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-3.267635,"dist_to_hod_atr":6.957417,"atr":0.045275,"spread_atr":0.22087,"own_change_pct":0.268817,"rel_strength_pct":{"SPY":0.253926,"IWM":0.230299}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.869149},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"18bfb0663f66","ts":"2026-09-21T17:10:03.743969+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.776,"target":11.05,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":103.7,"room_to_5d_high_atr":-0.09},"price":10.905,"vwap":10.8583,"ext_from_open_pct":-0.68,"max_ext_allowed_pct":3.0,"volume_pace":0.582,"trend":"flat","recent_slope_pct":-0.0237,"volatility":"medium"},"price":10.905,"volume":{"bars":220,"last_bar_volume":40610.0,"baseline_avg":71646.5,"bar_rvol":0.566811,"raw_accel":0.29761,"smooth_accel":-0.089892,"accel_momentum":-0.078031,"rvol_3bar":[1.27137,0.425374,0.566811],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":2355.0,"sell_vol":12727.0,"unclassified_vol":0.0,"imbalance":-0.687707,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.109387},"context":{"vwap":10.858249,"price_vs_vwap_pct":0.430557,"ema9":10.91062,"ema20":10.913236,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.929044,"dist_to_hod_atr":6.457286,"atr":0.033218,"spread_atr":0.301039,"own_change_pct":-0.098946,"rel_strength_pct":{"SPY":-0.113838,"IWM":-0.137465}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.3898},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b242e3871494","ts":"2026-09-21T17:10:14.089049+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.485,"vwap":6.3672,"ext_from_open_pct":3.1,"max_ext_allowed_pct":4.0,"volume_pace":1.318,"trend":"flat","recent_slope_pct":0.0634,"volatility":"unknown"},"price":6.485,"volume":{"bars":220,"last_bar_volume":105644.0,"baseline_avg":38550.55,"bar_rvol":2.740402,"raw_accel":0.995391,"smooth_accel":9.896434,"accel_momentum":8.605395,"rvol_3bar":[2.082503,1.297428,2.740402],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":30515.0,"sell_vol":34786.0,"unclassified_vol":0.0,"imbalance":-0.065405,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":5.18932},"context":{"vwap":6.367176,"price_vs_vwap_pct":1.850491,"ema9":6.471086,"ema20":6.467577,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.077042,"dist_to_hod_atr":0.286862,"atr":0.01743,"spread_atr":0.573723,"own_change_pct":0.224298,"rel_strength_pct":{"SPY":0.209407,"IWM":0.18578}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.179235},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0c80152f6e9c","ts":"2026-09-21T17:10:24.343239+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.9505,"target":8.215,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":120.5,"room_to_5d_high_atr":-0.65},"price":8.1045,"vwap":8.0803,"ext_from_open_pct":-1.04,"max_ext_allowed_pct":4.0,"volume_pace":0.557,"trend":"flat","recent_slope_pct":-0.1035,"volatility":"high"},"price":8.1045,"volume":{"bars":220,"last_bar_volume":16499.0,"baseline_avg":5896.65,"bar_rvol":2.798029,"raw_accel":10.192118,"smooth_accel":1.622927,"accel_momentum":0.856154,"rvol_3bar":[0.94138,0.201207,2.798029],"trend_3bar":"MIXED","projected_rvol":0.39124},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":739.0,"sell_vol":310.0,"unclassified_vol":0.0,"imbalance":0.408961,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":1.218072},"context":{"vwap":8.080252,"price_vs_vwap_pct":0.300085,"ema9":8.116443,"ema20":8.103405,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.273738,"dist_to_hod_atr":7.056242,"atr":0.038873,"spread_atr":0.257245,"own_change_pct":-0.323844,"rel_strength_pct":{"SPY":-0.338735,"IWM":-0.362362}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.144285},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e911e16eab27","ts":"2026-09-21T17:10:24.343239+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4199,"target":7.775,"target_label":"range_20d_high","reward_risk":19.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4847,"vwap":6.3672,"ext_from_open_pct":3.1,"max_ext_allowed_pct":3.0,"volume_pace":1.317,"trend":"flat","recent_slope_pct":0.0625,"volatility":"unknown"},"price":6.4847,"volume":{"bars":220,"last_bar_volume":105644.0,"baseline_avg":38550.55,"bar_rvol":2.740402,"raw_accel":0.995391,"smooth_accel":9.896434,"accel_momentum":8.605395,"rvol_3bar":[2.082503,1.297428,2.740402],"trend_3bar":"MIXED","projected_rvol":0.170452},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1255.0,"sell_vol":11991.0,"unclassified_vol":0.0,"imbalance":-0.810509,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.354649},"context":{"vwap":6.367176,"price_vs_vwap_pct":1.84578,"ema9":6.471086,"ema20":6.467577,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.081664,"dist_to_hod_atr":0.304073,"atr":0.01743,"spread_atr":0.573723,"own_change_pct":0.224298,"rel_strength_pct":{"SPY":0.209407,"IWM":0.18578}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.22112},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"80f62b5e2f8e","ts":"2026-09-21T17:10:29.570143+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.946,"target":8.215,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.1,"vwap":8.0803,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":4.0,"volume_pace":0.556,"trend":"flat","recent_slope_pct":-0.1146,"volatility":"high"},"price":8.1,"volume":{"bars":220,"last_bar_volume":16499.0,"baseline_avg":5896.65,"bar_rvol":2.798029,"raw_accel":10.192118,"smooth_accel":1.622927,"accel_momentum":0.856154,"rvol_3bar":[0.94138,0.201207,2.798029],"trend_3bar":"MIXED","projected_rvol":0.322427},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":726.0,"sell_vol":211.0,"unclassified_vol":0.0,"imbalance":0.549626,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":6.444976},"context":{"vwap":8.080252,"price_vs_vwap_pct":0.244393,"ema9":8.116443,"ema20":8.103405,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.327445,"dist_to_hod_atr":7.172003,"atr":0.038873,"spread_atr":0.257245,"own_change_pct":-0.323844,"rel_strength_pct":{"SPY":-0.338735,"IWM":-0.362362}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.537871},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"518a70e0a3a2","ts":"2026-09-21T17:10:34.789396+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4749,"vwap":6.3672,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.316,"trend":"flat","recent_slope_pct":0.0323,"volatility":"unknown"},"price":6.4749,"volume":{"bars":220,"last_bar_volume":105644.0,"baseline_avg":38550.55,"bar_rvol":2.740402,"raw_accel":0.995391,"smooth_accel":9.896434,"accel_momentum":8.605395,"rvol_3bar":[2.082503,1.297428,2.740402],"trend_3bar":"MIXED","projected_rvol":0.192372},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":1190.0,"sell_vol":3104.0,"unclassified_vol":0.0,"imbalance":-0.445738,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":2.20253},"context":{"vwap":6.367176,"price_vs_vwap_pct":1.691865,"ema9":6.471086,"ema20":6.467577,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.232666,"dist_to_hod_atr":0.866322,"atr":0.01743,"spread_atr":0.573723,"own_change_pct":0.224298,"rel_strength_pct":{"SPY":0.209407,"IWM":0.18578}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.221502},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fac88976ebfc","ts":"2026-09-21T17:10:39.920013+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3672,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.315,"trend":"flat","recent_slope_pct":0.048,"volatility":"unknown"},"price":6.48,"volume":{"bars":220,"last_bar_volume":105644.0,"baseline_avg":38550.55,"bar_rvol":2.740402,"raw_accel":0.995391,"smooth_accel":9.896434,"accel_momentum":8.605395,"rvol_3bar":[2.082503,1.297428,2.740402],"trend_3bar":"MIXED","projected_rvol":0.179617},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1072.0,"sell_vol":2736.0,"unclassified_vol":0.0,"imbalance":-0.436975,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.675063},"context":{"vwap":6.367176,"price_vs_vwap_pct":1.771964,"ema9":6.471086,"ema20":6.467577,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.573723,"atr":0.01743,"spread_atr":0.573723,"own_change_pct":0.224298,"rel_strength_pct":{"SPY":0.209407,"IWM":0.18578}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.197487},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9ed05f0d7f78","ts":"2026-09-21T17:10:45.060149+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.9532,"target":8.215,"target_label":"ceiling","reward_risk":0.7,"pos_in_5d_range_pct":120.7,"room_to_5d_high_atr":-0.65},"price":8.1072,"vwap":8.0803,"ext_from_open_pct":-1.01,"max_ext_allowed_pct":3.0,"volume_pace":0.556,"trend":"flat","recent_slope_pct":-0.0968,"volatility":"high"},"price":8.1072,"volume":{"bars":220,"last_bar_volume":16499.0,"baseline_avg":5896.65,"bar_rvol":2.798029,"raw_accel":10.192118,"smooth_accel":1.622927,"accel_momentum":0.856154,"rvol_3bar":[0.94138,0.201207,2.798029],"trend_3bar":"MIXED","projected_rvol":0.258333},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":515.0,"sell_vol":202.0,"unclassified_vol":0.0,"imbalance":0.436541,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":2.045057},"context":{"vwap":8.080252,"price_vs_vwap_pct":0.3335,"ema9":8.116443,"ema20":8.103405,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.241514,"dist_to_hod_atr":6.986786,"atr":0.038873,"spread_atr":0.257245,"own_change_pct":-0.323844,"rel_strength_pct":{"SPY":-0.338735,"IWM":-0.362362}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.221455},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f1d33c8395ee","ts":"2026-09-21T17:10:45.060149+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.485,"vwap":6.3673,"ext_from_open_pct":3.1,"max_ext_allowed_pct":4.0,"volume_pace":1.316,"trend":"flat","recent_slope_pct":0.0634,"volatility":"unknown"},"price":6.485,"volume":{"bars":220,"last_bar_volume":105644.0,"baseline_avg":38550.55,"bar_rvol":2.740402,"raw_accel":0.995391,"smooth_accel":9.896434,"accel_momentum":8.605395,"rvol_3bar":[2.082503,1.297428,2.740402],"trend_3bar":"MIXED","projected_rvol":0.598448},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":13209.0,"sell_vol":2617.0,"unclassified_vol":0.0,"imbalance":0.669278,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.461783},"context":{"vwap":6.367176,"price_vs_vwap_pct":1.850491,"ema9":6.471086,"ema20":6.467577,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.077042,"dist_to_hod_atr":0.286862,"atr":0.01743,"spread_atr":0.573723,"own_change_pct":0.224298,"rel_strength_pct":{"SPY":0.209407,"IWM":0.18578}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.834092},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c5a0f272abc8","ts":"2026-09-21T17:11:00.554352+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.9362,"target":8.215,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":119.8,"room_to_5d_high_atr":-0.63},"price":8.0902,"vwap":8.0803,"ext_from_open_pct":-1.22,"max_ext_allowed_pct":4.0,"volume_pace":0.556,"trend":"flat","recent_slope_pct":-0.1388,"volatility":"high"},"price":8.0902,"volume":{"bars":220,"last_bar_volume":16499.0,"baseline_avg":5896.65,"bar_rvol":2.798029,"raw_accel":10.192118,"smooth_accel":1.622927,"accel_momentum":0.856154,"rvol_3bar":[0.94138,0.201207,2.798029],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":16.0,"sell_vol":1608.0,"unclassified_vol":0.0,"imbalance":-0.980296,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":3.420035},"context":{"vwap":8.080252,"price_vs_vwap_pct":0.12311,"ema9":8.116443,"ema20":8.103405,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.444407,"dist_to_hod_atr":7.424103,"atr":0.038873,"spread_atr":0.257245,"own_change_pct":-0.323844,"rel_strength_pct":{"SPY":-0.31996,"IWM":-0.362357}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.742896},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"abc4ac4c5411","ts":"2026-09-21T17:11:05.715746+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.6982,"target":13.53,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-1.62},"price":13.09,"vwap":12.9162,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":0.62,"trend":"flat","recent_slope_pct":-0.0301,"volatility":"high"},"price":13.09,"volume":{"bars":221,"last_bar_volume":8228.0,"baseline_avg":14063.7,"bar_rvol":0.585052,"raw_accel":1.340209,"smooth_accel":-0.028404,"accel_momentum":-0.031565,"rvol_3bar":[0.696157,0.09326,0.585052],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":923.0,"sell_vol":1398.0,"unclassified_vol":0.0,"imbalance":-0.204653,"bid":13.04,"ask":13.13,"spread_pct":0.68781,"quote_size_imbalance":null,"quote_age_s":2.027514},"context":{"vwap":12.916169,"price_vs_vwap_pct":1.345839,"ema9":13.154266,"ema20":13.218067,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.144928,"dist_to_hod_atr":7.001564,"atr":0.101406,"spread_atr":0.887522,"own_change_pct":-0.569909,"rel_strength_pct":{"SPY":-0.566025,"IWM":-0.608422}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.119733},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e0787946a531","ts":"2026-09-21T17:11:10.868729+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4237,"target":7.775,"target_label":"range_20d_high","reward_risk":19.83,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4886,"vwap":6.3673,"ext_from_open_pct":3.16,"max_ext_allowed_pct":3.0,"volume_pace":1.313,"trend":"flat","recent_slope_pct":0.0342,"volatility":"unknown"},"price":6.4886,"volume":{"bars":221,"last_bar_volume":18327.0,"baseline_avg":37055.05,"bar_rvol":0.494588,"raw_accel":-0.826521,"smooth_accel":0.96723,"accel_momentum":-8.929204,"rvol_3bar":[1.297428,2.740402,0.494588],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":12410.0,"sell_vol":1411.0,"unclassified_vol":0.0,"imbalance":0.795818,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.394613},"context":{"vwap":6.367296,"price_vs_vwap_pct":1.905113,"ema9":6.473869,"ema20":6.469237,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.021572,"dist_to_hod_atr":0.07942,"atr":0.017628,"spread_atr":0.567284,"own_change_pct":0.301601,"rel_strength_pct":{"SPY":0.305484,"IWM":0.263087}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.393602},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f61ad2dba771","ts":"2026-09-21T17:11:21.221967+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3674,"ext_from_open_pct":3.02,"max_ext_allowed_pct":4.0,"volume_pace":1.314,"trend":"flat","recent_slope_pct":0.0077,"volatility":"unknown"},"price":6.48,"volume":{"bars":221,"last_bar_volume":18327.0,"baseline_avg":37055.05,"bar_rvol":0.494588,"raw_accel":-0.826521,"smooth_accel":0.96723,"accel_momentum":-8.929204,"rvol_3bar":[1.297428,2.740402,0.494588],"trend_3bar":"MIXED","projected_rvol":1.606473},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":19180.0,"sell_vol":2619.0,"unclassified_vol":0.0,"imbalance":0.759714,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.3755},"context":{"vwap":6.367296,"price_vs_vwap_pct":1.770048,"ema9":6.473869,"ema20":6.469237,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.567284,"atr":0.017628,"spread_atr":0.567284,"own_change_pct":0.301601,"rel_strength_pct":{"SPY":0.305484,"IWM":0.263087}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.375746},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"824926207b4d","ts":"2026-09-21T17:11:41.895728+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3675,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.312,"trend":"flat","recent_slope_pct":0.0077,"volatility":"unknown"},"price":6.48,"volume":{"bars":221,"last_bar_volume":18327.0,"baseline_avg":37055.05,"bar_rvol":0.494588,"raw_accel":-0.826521,"smooth_accel":0.96723,"accel_momentum":-8.929204,"rvol_3bar":[1.297428,2.740402,0.494588],"trend_3bar":"MIXED","projected_rvol":1.074084},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":23303.0,"sell_vol":4387.0,"unclassified_vol":0.0,"imbalance":0.683135,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":3.717773},"context":{"vwap":6.367296,"price_vs_vwap_pct":1.770048,"ema9":6.473869,"ema20":6.469237,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.154083,"dist_to_hod_atr":0.567284,"atr":0.017628,"spread_atr":0.567284,"own_change_pct":0.301601,"rel_strength_pct":{"SPY":0.305484,"IWM":0.263087}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.337871},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5de8e6ecd085","ts":"2026-09-21T17:12:02.412418+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7132,"target":13.53,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":154.4,"room_to_5d_high_atr":-1.63},"price":13.105,"vwap":12.9166,"ext_from_open_pct":0.73,"max_ext_allowed_pct":4.0,"volume_pace":0.619,"trend":"flat","recent_slope_pct":-0.1158,"volatility":"high"},"price":13.105,"volume":{"bars":222,"last_bar_volume":12294.0,"baseline_avg":13737.6,"bar_rvol":0.894916,"raw_accel":0.494166,"smooth_accel":-0.045828,"accel_momentum":-0.017424,"rvol_3bar":[0.09326,0.585052,0.894916],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1907.0,"sell_vol":3931.0,"unclassified_vol":0.0,"imbalance":-0.346694,"bid":13.08,"ask":13.13,"spread_pct":0.381534,"quote_size_imbalance":null,"quote_age_s":3.764089},"context":{"vwap":12.91657,"price_vs_vwap_pct":1.458825,"ema9":13.141413,"ema20":13.20587,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.036232,"dist_to_hod_atr":6.912097,"atr":0.100548,"spread_atr":0.497273,"own_change_pct":-0.75815,"rel_strength_pct":{"SPY":-0.764623,"IWM":-0.800161}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.310262},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cde5d9ff19a6","ts":"2026-09-21T17:12:02.412418+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"held 61.9s, plan says PASS; stop 7.97, target 8.21 (ceiling), R:R 0.52; R:R 0.52 < 2.0 at 8.13; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.9726,"target":8.2072,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":121.7,"room_to_5d_high_atr":-0.68},"price":8.1266,"vwap":8.0803,"ext_from_open_pct":-0.77,"max_ext_allowed_pct":3.0,"volume_pace":0.553,"trend":"flat","recent_slope_pct":0.0167,"volatility":"high"},"price":8.1266,"volume":{"bars":222,"last_bar_volume":462.0,"baseline_avg":6447.1,"bar_rvol":0.07166,"raw_accel":-0.826381,"smooth_accel":0.76568,"accel_momentum":0.131006,"rvol_3bar":[2.798029,0.41343,0.07166],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":144.0,"sell_vol":209.0,"unclassified_vol":0.0,"imbalance":-0.184136,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":13.445224},"context":{"vwap":8.080281,"price_vs_vwap_pct":0.573237,"ema9":8.109515,"ema20":8.10221,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.009978,"dist_to_hod_atr":6.449621,"atr":0.039103,"spread_atr":0.255734,"own_change_pct":-0.322303,"rel_strength_pct":{"SPY":-0.328776,"IWM":-0.364314}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.013195},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"3f56a36a4bcb","ts":"2026-09-21T17:12:02.412418+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4094,"target":7.775,"target_label":"range_20d_high","reward_risk":20.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4741,"vwap":6.3675,"ext_from_open_pct":2.93,"max_ext_allowed_pct":3.0,"volume_pace":1.311,"trend":"flat","recent_slope_pct":-0.0167,"volatility":"unknown"},"price":6.4741,"volume":{"bars":222,"last_bar_volume":35187.0,"baseline_avg":37698.4,"bar_rvol":0.933382,"raw_accel":0.919954,"smooth_accel":0.186179,"accel_momentum":-0.781051,"rvol_3bar":[2.740402,0.494588,0.933382],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":1390.0,"sell_vol":7872.0,"unclassified_vol":0.0,"imbalance":-0.699849,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.839023},"context":{"vwap":6.367523,"price_vs_vwap_pct":1.673762,"ema9":6.475115,"ema20":6.470271,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.244992,"dist_to_hod_atr":0.897718,"atr":0.017712,"spread_atr":0.564602,"own_change_pct":0.249072,"rel_strength_pct":{"SPY":0.242599,"IWM":0.207061}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.653226},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5df4b65a68a6","ts":"2026-09-21T17:12:17.739789+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7032,"target":13.53,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":154.2,"room_to_5d_high_atr":-1.62},"price":13.095,"vwap":12.9166,"ext_from_open_pct":0.65,"max_ext_allowed_pct":3.0,"volume_pace":0.618,"trend":"flat","recent_slope_pct":-0.131,"volatility":"high"},"price":13.095,"volume":{"bars":222,"last_bar_volume":12294.0,"baseline_avg":13737.6,"bar_rvol":0.894916,"raw_accel":0.494166,"smooth_accel":-0.045828,"accel_momentum":-0.017424,"rvol_3bar":[0.09326,0.585052,0.894916],"trend_3bar":"ACCELERATING","projected_rvol":0.371027},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":2106.0,"sell_vol":332.0,"unclassified_vol":0.0,"imbalance":0.727646,"bid":13.08,"ask":13.13,"spread_pct":0.381534,"quote_size_imbalance":null,"quote_age_s":10.971913},"context":{"vwap":12.91657,"price_vs_vwap_pct":1.381405,"ema9":13.141413,"ema20":13.20587,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.108696,"dist_to_hod_atr":7.011552,"atr":0.100548,"spread_atr":0.497273,"own_change_pct":-0.75815,"rel_strength_pct":{"SPY":-0.764623,"IWM":-0.800161}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.651182},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8fe40bd9b4f4","ts":"2026-09-21T17:12:28.172170+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3678,"ext_from_open_pct":3.18,"max_ext_allowed_pct":3.0,"volume_pace":1.311,"trend":"flat","recent_slope_pct":0.0324,"volatility":"unknown"},"price":6.49,"volume":{"bars":222,"last_bar_volume":35187.0,"baseline_avg":37698.4,"bar_rvol":0.933382,"raw_accel":0.919954,"smooth_accel":0.186179,"accel_momentum":-0.781051,"rvol_3bar":[2.740402,0.494588,0.933382],"trend_3bar":"MIXED","projected_rvol":2.226119},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":18764.0,"sell_vol":22750.0,"unclassified_vol":0.0,"imbalance":-0.096016,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.040974},"context":{"vwap":6.367523,"price_vs_vwap_pct":1.923466,"ema9":6.475115,"ema20":6.470271,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.017712,"spread_atr":0.564602,"own_change_pct":0.249072,"rel_strength_pct":{"SPY":0.242599,"IWM":0.207061}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.089619},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f595b9180d38","ts":"2026-09-21T17:12:33.397903+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4218,"target":7.775,"target_label":"range_20d_high","reward_risk":19.86,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4867,"vwap":6.3678,"ext_from_open_pct":3.13,"max_ext_allowed_pct":4.0,"volume_pace":1.311,"trend":"flat","recent_slope_pct":0.0222,"volatility":"unknown"},"price":6.4867,"volume":{"bars":222,"last_bar_volume":35187.0,"baseline_avg":37698.4,"bar_rvol":0.933382,"raw_accel":0.919954,"smooth_accel":0.186179,"accel_momentum":-0.781051,"rvol_3bar":[2.740402,0.494588,0.933382],"trend_3bar":"MIXED","projected_rvol":1.977066},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":4101.0,"sell_vol":2143.0,"unclassified_vol":0.0,"imbalance":0.313581,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.956336},"context":{"vwap":6.367523,"price_vs_vwap_pct":1.871641,"ema9":6.475115,"ema20":6.470271,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.050847,"dist_to_hod_atr":0.186319,"atr":0.017712,"spread_atr":0.564602,"own_change_pct":0.249072,"rel_strength_pct":{"SPY":0.242599,"IWM":0.207061}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.292691},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9f604780b4d2","ts":"2026-09-21T17:12:59.264308+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.6982,"target":13.53,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":154.1,"room_to_5d_high_atr":-1.62},"price":13.09,"vwap":12.9167,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":0.616,"trend":"flat","recent_slope_pct":-0.1387,"volatility":"high"},"price":13.09,"volume":{"bars":222,"last_bar_volume":12294.0,"baseline_avg":13737.6,"bar_rvol":0.894916,"raw_accel":0.494166,"smooth_accel":-0.045828,"accel_momentum":-0.017424,"rvol_3bar":[0.09326,0.585052,0.894916],"trend_3bar":"ACCELERATING","projected_rvol":0.325444},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":410.0,"sell_vol":1693.0,"unclassified_vol":0.0,"imbalance":-0.610081,"bid":13.07,"ask":13.13,"spread_pct":0.458015,"quote_size_imbalance":null,"quote_age_s":9.539884},"context":{"vwap":12.91657,"price_vs_vwap_pct":1.342695,"ema9":13.141413,"ema20":13.20587,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.144928,"dist_to_hod_atr":7.061279,"atr":0.100548,"spread_atr":0.596728,"own_change_pct":-0.75815,"rel_strength_pct":{"SPY":-0.764623,"IWM":-0.800161}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.545971},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4bca92a4751a","ts":"2026-09-21T17:12:59.264308+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3679,"ext_from_open_pct":3.18,"max_ext_allowed_pct":3.0,"volume_pace":1.31,"trend":"flat","recent_slope_pct":0.0324,"volatility":"unknown"},"price":6.49,"volume":{"bars":222,"last_bar_volume":35187.0,"baseline_avg":37698.4,"bar_rvol":0.933382,"raw_accel":0.919954,"smooth_accel":0.186179,"accel_momentum":-0.781051,"rvol_3bar":[2.740402,0.494588,0.933382],"trend_3bar":"MIXED","projected_rvol":1.630915},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":9370.0,"sell_vol":11955.0,"unclassified_vol":0.0,"imbalance":-0.121219,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.983849},"context":{"vwap":6.367523,"price_vs_vwap_pct":1.923466,"ema9":6.475115,"ema20":6.470271,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.017712,"spread_atr":0.564602,"own_change_pct":0.249072,"rel_strength_pct":{"SPY":0.242599,"IWM":0.207061}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.113144},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"47f74751d9b1","ts":"2026-09-21T17:14:02.009939+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6886,"target":11.275,"target_label":"range_20d_high","reward_risk":0.43,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.1,"vwap":11.0313,"ext_from_open_pct":3.74,"max_ext_allowed_pct":4.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":-0.045,"volatility":"unknown"},"price":11.1,"volume":{"bars":224,"last_bar_volume":205176.0,"baseline_avg":94684.05,"bar_rvol":2.166954,"raw_accel":1.717995,"smooth_accel":0.482662,"accel_momentum":0.112108,"rvol_3bar":[1.50246,0.819658,2.166954],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":472,"trade_rate":15.733333,"buy_vol":126586.0,"sell_vol":32646.0,"unclassified_vol":0.0,"imbalance":0.589957,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":0.061389},"context":{"vwap":11.031328,"price_vs_vwap_pct":0.622522,"ema9":11.176605,"ema20":11.224711,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.394256,"dist_to_hod_atr":3.800867,"atr":0.102608,"spread_atr":0.097458,"own_change_pct":-1.069996,"rel_strength_pct":{"SPY":-1.123082,"IWM":-1.129507}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.278409},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"65bbce43ddd1","ts":"2026-09-21T17:14:07.247799+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.485,"vwap":6.3682,"ext_from_open_pct":3.1,"max_ext_allowed_pct":4.0,"volume_pace":1.307,"trend":"flat","recent_slope_pct":0.0117,"volatility":"unknown"},"price":6.485,"volume":{"bars":224,"last_bar_volume":43599.0,"baseline_avg":40901.85,"bar_rvol":1.065942,"raw_accel":-0.282593,"smooth_accel":-0.211152,"accel_momentum":0.306286,"rvol_3bar":[0.933382,1.583944,1.065942],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":5252.0,"sell_vol":8275.0,"unclassified_vol":0.0,"imbalance":-0.223479,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.010547},"context":{"vwap":6.368219,"price_vs_vwap_pct":1.83381,"ema9":6.479214,"ema20":6.4732,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.230769,"dist_to_hod_atr":0.833769,"atr":0.017991,"spread_atr":0.555846,"own_change_pct":0.118827,"rel_strength_pct":{"SPY":0.065741,"IWM":0.059316}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.238216},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"967b9d21d4ae","ts":"2026-09-21T17:14:12.447955+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.485,"vwap":6.3683,"ext_from_open_pct":3.1,"max_ext_allowed_pct":3.0,"volume_pace":1.306,"trend":"flat","recent_slope_pct":0.0117,"volatility":"unknown"},"price":6.485,"volume":{"bars":224,"last_bar_volume":43599.0,"baseline_avg":40901.85,"bar_rvol":1.065942,"raw_accel":-0.282593,"smooth_accel":-0.211152,"accel_momentum":0.306286,"rvol_3bar":[0.933382,1.583944,1.065942],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":5247.0,"sell_vol":9014.0,"unclassified_vol":0.0,"imbalance":-0.264147,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.874198},"context":{"vwap":6.368219,"price_vs_vwap_pct":1.83381,"ema9":6.479214,"ema20":6.4732,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.230769,"dist_to_hod_atr":0.833769,"atr":0.017991,"spread_atr":0.555846,"own_change_pct":0.118827,"rel_strength_pct":{"SPY":0.065741,"IWM":0.059316}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.281565},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4d3a63d130d7","ts":"2026-09-21T17:14:17.625816+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":11.0948,"target":11.275,"target_label":"range_20d_high","reward_risk":0.61,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.2069,"vwap":11.0314,"ext_from_open_pct":4.74,"max_ext_allowed_pct":4.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":0.1471,"volatility":"unknown"},"price":11.2069,"volume":{"bars":224,"last_bar_volume":205176.0,"baseline_avg":94684.05,"bar_rvol":2.166954,"raw_accel":1.717995,"smooth_accel":0.482662,"accel_momentum":0.112108,"rvol_3bar":[1.50246,0.819658,2.166954],"trend_3bar":"MIXED","projected_rvol":0.20428},"flow":{"window_s":30,"trades":235,"trade_rate":7.833333,"buy_vol":47452.0,"sell_vol":8756.0,"unclassified_vol":0.0,"imbalance":0.688443,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":2.597664},"context":{"vwap":11.031328,"price_vs_vwap_pct":1.59158,"ema9":11.176605,"ema20":11.224711,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-2.463882,"dist_to_hod_atr":2.75904,"atr":0.102608,"spread_atr":0.097458,"own_change_pct":-1.069996,"rel_strength_pct":{"SPY":-1.123082,"IWM":-1.129507}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.491824},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5f3ae2c6d7b4","ts":"2026-09-21T17:14:22.792510+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6886,"target":11.275,"target_label":"range_20d_high","reward_risk":0.43,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.1,"vwap":11.0314,"ext_from_open_pct":3.74,"max_ext_allowed_pct":4.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":-0.045,"volatility":"unknown"},"price":11.1,"volume":{"bars":224,"last_bar_volume":205176.0,"baseline_avg":94684.05,"bar_rvol":2.166954,"raw_accel":1.717995,"smooth_accel":0.482662,"accel_momentum":0.112108,"rvol_3bar":[1.50246,0.819658,2.166954],"trend_3bar":"MIXED","projected_rvol":0.25695},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":14469.0,"sell_vol":2378.0,"unclassified_vol":0.0,"imbalance":0.717695,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":2.860903},"context":{"vwap":11.031328,"price_vs_vwap_pct":0.622522,"ema9":11.176605,"ema20":11.224711,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.394256,"dist_to_hod_atr":3.800867,"atr":0.102608,"spread_atr":0.097458,"own_change_pct":-1.069996,"rel_strength_pct":{"SPY":-1.123082,"IWM":-1.129507}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.555211},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"67c390d999ed","ts":"2026-09-21T17:14:22.792510+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3683,"ext_from_open_pct":3.18,"max_ext_allowed_pct":4.0,"volume_pace":1.306,"trend":"flat","recent_slope_pct":0.0271,"volatility":"unknown"},"price":6.49,"volume":{"bars":224,"last_bar_volume":43599.0,"baseline_avg":40901.85,"bar_rvol":1.065942,"raw_accel":-0.282593,"smooth_accel":-0.211152,"accel_momentum":0.306286,"rvol_3bar":[0.933382,1.583944,1.065942],"trend_3bar":"MIXED","projected_rvol":0.620817},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":4764.0,"sell_vol":6849.0,"unclassified_vol":0.0,"imbalance":-0.17954,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.736761},"context":{"vwap":6.368219,"price_vs_vwap_pct":1.912325,"ema9":6.479214,"ema20":6.4732,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.153846,"dist_to_hod_atr":0.555846,"atr":0.017991,"spread_atr":0.555846,"own_change_pct":0.118827,"rel_strength_pct":{"SPY":0.065741,"IWM":0.059316}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.191379},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a10b6918f9f5","ts":"2026-09-21T17:14:27.932398+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $10.70 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":11.0918,"target":11.275,"target_label":"range_20d_high","reward_risk":0.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.2038,"vwap":11.0314,"ext_from_open_pct":4.71,"max_ext_allowed_pct":4.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":0.1415,"volatility":"unknown"},"price":11.2038,"volume":{"bars":224,"last_bar_volume":205176.0,"baseline_avg":94684.05,"bar_rvol":2.166954,"raw_accel":1.717995,"smooth_accel":0.482662,"accel_momentum":0.112108,"rvol_3bar":[1.50246,0.819658,2.166954],"trend_3bar":"MIXED","projected_rvol":0.367316},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":21101.0,"sell_vol":2382.0,"unclassified_vol":0.0,"imbalance":0.79713,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":0.09597},"context":{"vwap":11.031328,"price_vs_vwap_pct":1.563479,"ema9":11.176605,"ema20":11.224711,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-2.490862,"dist_to_hod_atr":2.789252,"atr":0.102608,"spread_atr":0.097458,"own_change_pct":-1.069996,"rel_strength_pct":{"SPY":-1.123082,"IWM":-1.129507}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.727344},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"67fb1ed47a0f","ts":"2026-09-21T17:14:33.085465+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6886,"target":11.275,"target_label":"range_20d_high","reward_risk":0.44,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.095,"vwap":11.0314,"ext_from_open_pct":3.69,"max_ext_allowed_pct":4.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":-0.054,"volatility":"unknown"},"price":11.095,"volume":{"bars":224,"last_bar_volume":205176.0,"baseline_avg":94684.05,"bar_rvol":2.166954,"raw_accel":1.717995,"smooth_accel":0.482662,"accel_momentum":0.112108,"rvol_3bar":[1.50246,0.819658,2.166954],"trend_3bar":"MIXED","projected_rvol":0.36588},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":12608.0,"sell_vol":2383.0,"unclassified_vol":0.0,"imbalance":0.682076,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":1.076722},"context":{"vwap":11.031328,"price_vs_vwap_pct":0.577197,"ema9":11.176605,"ema20":11.224711,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.437772,"dist_to_hod_atr":3.849597,"atr":0.102608,"spread_atr":0.097458,"own_change_pct":-1.069996,"rel_strength_pct":{"SPY":-1.123082,"IWM":-1.129507}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.478027},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6ae152aae304","ts":"2026-09-21T17:14:38.233451+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.6886,"target":11.275,"target_label":"range_20d_high","reward_risk":0.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.1105,"vwap":11.0316,"ext_from_open_pct":3.84,"max_ext_allowed_pct":4.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":-0.0261,"volatility":"unknown"},"price":11.1105,"volume":{"bars":224,"last_bar_volume":205176.0,"baseline_avg":94684.05,"bar_rvol":2.166954,"raw_accel":1.717995,"smooth_accel":0.482662,"accel_momentum":0.112108,"rvol_3bar":[1.50246,0.819658,2.166954],"trend_3bar":"MIXED","projected_rvol":1.269297},"flow":{"window_s":30,"trades":239,"trade_rate":7.966667,"buy_vol":53361.0,"sell_vol":18878.0,"unclassified_vol":0.0,"imbalance":0.477346,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":0.673033},"context":{"vwap":11.031328,"price_vs_vwap_pct":0.717705,"ema9":11.176605,"ema20":11.224711,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.302872,"dist_to_hod_atr":3.698536,"atr":0.102608,"spread_atr":0.097458,"own_change_pct":-1.069996,"rel_strength_pct":{"SPY":-1.123082,"IWM":-1.129507}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.034387},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9da0f0d966e2","ts":"2026-09-21T17:14:58.795293+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3683,"ext_from_open_pct":3.18,"max_ext_allowed_pct":3.0,"volume_pace":1.303,"trend":"flat","recent_slope_pct":0.0271,"volatility":"unknown"},"price":6.49,"volume":{"bars":224,"last_bar_volume":43599.0,"baseline_avg":40901.85,"bar_rvol":1.065942,"raw_accel":-0.282593,"smooth_accel":-0.211152,"accel_momentum":0.306286,"rvol_3bar":[0.933382,1.583944,1.065942],"trend_3bar":"MIXED","projected_rvol":0.43153},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":2616.0,"sell_vol":3429.0,"unclassified_vol":0.0,"imbalance":-0.134491,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":2.687523},"context":{"vwap":6.368219,"price_vs_vwap_pct":1.912325,"ema9":6.479214,"ema20":6.4732,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.153846,"dist_to_hod_atr":0.555846,"atr":0.017991,"spread_atr":0.555846,"own_change_pct":0.118827,"rel_strength_pct":{"SPY":0.065741,"IWM":0.059316}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.14336},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"40e7fc1294db","ts":"2026-09-21T17:15:03.918988+00:00","symbol":"PSKY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6886,"target":11.275,"target_label":"range_20d_high","reward_risk":0.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.0931,"vwap":11.0317,"ext_from_open_pct":3.67,"max_ext_allowed_pct":4.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":-0.0905,"volatility":"unknown"},"price":11.0931,"volume":{"bars":225,"last_bar_volume":107694.0,"baseline_avg":102349.25,"bar_rvol":1.052221,"raw_accel":-0.475114,"smooth_accel":0.120062,"accel_momentum":-0.3626,"rvol_3bar":[0.819658,2.166954,1.052221],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":269,"trade_rate":8.966667,"buy_vol":61111.0,"sell_vol":27845.0,"unclassified_vol":0.0,"imbalance":0.37396,"bid":11.09,"ask":11.1,"spread_pct":0.090131,"quote_size_imbalance":null,"quote_age_s":0.900264},"context":{"vwap":11.031697,"price_vs_vwap_pct":0.556604,"ema9":11.160284,"ema20":11.212358,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.454308,"dist_to_hod_atr":3.771518,"atr":0.105236,"spread_atr":0.095024,"own_change_pct":-0.981705,"rel_strength_pct":{"SPY":-1.038671,"IWM":-1.025458}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.393489},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"59263539b1b5","ts":"2026-09-21T17:15:19.548152+00:00","symbol":"PSKY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $10.70 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6886,"target":11.275,"target_label":"range_20d_high","reward_risk":0.41,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.105,"vwap":11.0317,"ext_from_open_pct":3.79,"max_ext_allowed_pct":3.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":-0.069,"volatility":"unknown"},"price":11.105,"volume":{"bars":225,"last_bar_volume":107694.0,"baseline_avg":102349.25,"bar_rvol":1.052221,"raw_accel":-0.475114,"smooth_accel":0.120062,"accel_momentum":-0.3626,"rvol_3bar":[0.819658,2.166954,1.052221],"trend_3bar":"MIXED","projected_rvol":0.335786},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":13863.0,"sell_vol":12560.0,"unclassified_vol":0.0,"imbalance":0.049313,"bid":11.1,"ask":11.11,"spread_pct":0.09005,"quote_size_imbalance":null,"quote_age_s":1.087508},"context":{"vwap":11.031697,"price_vs_vwap_pct":0.664475,"ema9":11.160284,"ema20":11.212358,"ema_stack":false,"ema_warm":true,"hod":11.49,"dist_to_hod_pct":-3.35074,"dist_to_hod_atr":3.658439,"atr":0.105236,"spread_atr":0.095024,"own_change_pct":-0.981705,"rel_strength_pct":{"SPY":-1.038671,"IWM":-1.025458}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.051888},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"95815ee3f8d7","ts":"2026-09-21T17:15:24.755952+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.707,"target":13.53,"target_label":"ceiling","reward_risk":1.1,"pos_in_5d_range_pct":154.3,"room_to_5d_high_atr":-1.62},"price":13.0988,"vwap":12.9172,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":0.611,"trend":"flat","recent_slope_pct":0.0211,"volatility":"high"},"price":13.0988,"volume":{"bars":225,"last_bar_volume":5813.0,"baseline_avg":12987.05,"bar_rvol":0.4476,"raw_accel":-0.32821,"smooth_accel":-0.135479,"accel_momentum":-0.445484,"rvol_3bar":[0.326336,0.664659,0.4476],"trend_3bar":"MIXED","projected_rvol":0.235143},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1028.0,"sell_vol":333.0,"unclassified_vol":0.0,"imbalance":0.510654,"bid":13.04,"ask":13.1,"spread_pct":0.459067,"quote_size_imbalance":null,"quote_age_s":4.581749},"context":{"vwap":12.917201,"price_vs_vwap_pct":1.40587,"ema9":13.115427,"ema20":13.17521,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.081159,"dist_to_hod_atr":7.476702,"atr":0.093785,"spread_atr":0.639763,"own_change_pct":-0.076278,"rel_strength_pct":{"SPY":-0.133244,"IWM":-0.120031}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.228569},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"96ac67fdbe8f","ts":"2026-09-21T17:15:29.977271+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4203,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4852,"vwap":6.3685,"ext_from_open_pct":3.1,"max_ext_allowed_pct":4.0,"volume_pace":1.301,"trend":"flat","recent_slope_pct":0.008,"volatility":"unknown"},"price":6.4852,"volume":{"bars":225,"last_bar_volume":17297.0,"baseline_avg":38890.35,"bar_rvol":0.444763,"raw_accel":-0.603271,"smooth_accel":-0.235546,"accel_momentum":-0.024394,"rvol_3bar":[1.583944,1.065942,0.444763],"trend_3bar":"DECELERATING","projected_rvol":1.137339},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":19827.0,"sell_vol":2272.0,"unclassified_vol":0.0,"imbalance":0.79438,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.238674},"context":{"vwap":6.368332,"price_vs_vwap_pct":1.835149,"ema9":6.479371,"ema20":6.473848,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.227692,"dist_to_hod_atr":0.848215,"atr":0.017448,"spread_atr":0.573118,"own_change_pct":0.013891,"rel_strength_pct":{"SPY":-0.043076,"IWM":-0.029863}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.353311},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"3edb8b5f00f4","ts":"2026-09-21T17:15:45.616463+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7582,"target":13.53,"target_label":"ceiling","reward_risk":0.97,"pos_in_5d_range_pct":155.4,"room_to_5d_high_atr":-1.66},"price":13.15,"vwap":12.9174,"ext_from_open_pct":1.08,"max_ext_allowed_pct":4.0,"volume_pace":0.611,"trend":"flat","recent_slope_pct":0.0992,"volatility":"high"},"price":13.15,"volume":{"bars":225,"last_bar_volume":5813.0,"baseline_avg":12987.05,"bar_rvol":0.4476,"raw_accel":-0.32821,"smooth_accel":-0.135479,"accel_momentum":-0.445484,"rvol_3bar":[0.326336,0.664659,0.4476],"trend_3bar":"MIXED","projected_rvol":0.470339},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2962.0,"sell_vol":933.0,"unclassified_vol":0.0,"imbalance":0.520924,"bid":13.12,"ask":13.18,"spread_pct":0.456274,"quote_size_imbalance":null,"quote_age_s":1.764697},"context":{"vwap":12.917201,"price_vs_vwap_pct":1.802241,"ema9":13.115427,"ema20":13.17521,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.710145,"dist_to_hod_atr":6.93077,"atr":0.093785,"spread_atr":0.639763,"own_change_pct":-0.076278,"rel_strength_pct":{"SPY":-0.133244,"IWM":-0.120031}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.233166},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"08586dabd185","ts":"2026-09-21T17:16:06.474448+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.485,"vwap":6.3687,"ext_from_open_pct":3.1,"max_ext_allowed_pct":3.0,"volume_pace":1.301,"trend":"flat","recent_slope_pct":-0.0032,"volatility":"unknown"},"price":6.485,"volume":{"bars":226,"last_bar_volume":39859.0,"baseline_avg":33587.75,"bar_rvol":1.186712,"raw_accel":1.304388,"smooth_accel":-0.118404,"accel_momentum":0.117142,"rvol_3bar":[1.065942,0.444763,1.186712],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":13689.0,"sell_vol":23595.0,"unclassified_vol":0.0,"imbalance":-0.26569,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.177055},"context":{"vwap":6.368595,"price_vs_vwap_pct":1.8278,"ema9":6.480617,"ema20":6.474967,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.230769,"dist_to_hod_atr":0.886714,"atr":0.016916,"spread_atr":0.591143,"own_change_pct":0.009252,"rel_strength_pct":{"SPY":-0.02376,"IWM":-0.006497}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.315298},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8df6ccd7c30a","ts":"2026-09-21T17:16:11.660911+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4301,"target":7.775,"target_label":"range_20d_high","reward_risk":19.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.495,"vwap":6.3695,"ext_from_open_pct":3.26,"max_ext_allowed_pct":4.0,"volume_pace":1.308,"trend":"flat","recent_slope_pct":0.0276,"volatility":"unknown"},"price":6.495,"volume":{"bars":226,"last_bar_volume":39859.0,"baseline_avg":33587.75,"bar_rvol":1.186712,"raw_accel":1.304388,"smooth_accel":-0.118404,"accel_momentum":0.117142,"rvol_3bar":[1.065942,0.444763,1.186712],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":384,"trade_rate":12.8,"buy_vol":115300.0,"sell_vol":25360.0,"unclassified_vol":0.0,"imbalance":0.639414,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.092683},"context":{"vwap":6.368595,"price_vs_vwap_pct":1.98482,"ema9":6.480617,"ema20":6.474967,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.076923,"dist_to_hod_atr":0.295571,"atr":0.016916,"spread_atr":0.591143,"own_change_pct":0.009252,"rel_strength_pct":{"SPY":-0.02376,"IWM":-0.006497}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.758801},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f44ce6d29b9e","ts":"2026-09-21T17:16:32.150323+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4261,"target":7.775,"target_label":"range_20d_high","reward_risk":19.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.491,"vwap":6.3697,"ext_from_open_pct":3.2,"max_ext_allowed_pct":3.0,"volume_pace":1.309,"trend":"flat","recent_slope_pct":0.0153,"volatility":"unknown"},"price":6.491,"volume":{"bars":226,"last_bar_volume":39859.0,"baseline_avg":33587.75,"bar_rvol":1.186712,"raw_accel":1.304388,"smooth_accel":-0.118404,"accel_momentum":0.117142,"rvol_3bar":[1.065942,0.444763,1.186712],"trend_3bar":"MIXED","projected_rvol":9.281507},"flow":{"window_s":30,"trades":381,"trade_rate":12.7,"buy_vol":133087.0,"sell_vol":23480.0,"unclassified_vol":0.0,"imbalance":0.700065,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":2.067073},"context":{"vwap":6.368595,"price_vs_vwap_pct":1.922012,"ema9":6.480617,"ema20":6.474967,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.138462,"dist_to_hod_atr":0.532029,"atr":0.016916,"spread_atr":0.591143,"own_change_pct":0.009252,"rel_strength_pct":{"SPY":-0.02376,"IWM":-0.006497}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.830775},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"984b58178e16","ts":"2026-09-21T17:16:57.703432+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.435,"target":7.775,"target_label":"range_20d_high","reward_risk":19.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.5,"vwap":6.3699,"ext_from_open_pct":3.34,"max_ext_allowed_pct":4.0,"volume_pace":1.308,"trend":"flat","recent_slope_pct":0.043,"volatility":"unknown"},"price":6.5,"volume":{"bars":226,"last_bar_volume":39859.0,"baseline_avg":33587.75,"bar_rvol":1.186712,"raw_accel":1.304388,"smooth_accel":-0.118404,"accel_momentum":0.117142,"rvol_3bar":[1.065942,0.444763,1.186712],"trend_3bar":"MIXED","projected_rvol":5.615077},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":13612.0,"sell_vol":2111.0,"unclassified_vol":0.0,"imbalance":0.731476,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.45043},"context":{"vwap":6.368595,"price_vs_vwap_pct":2.063331,"ema9":6.480617,"ema20":6.474967,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.016916,"spread_atr":0.591143,"own_change_pct":0.009252,"rel_strength_pct":{"SPY":-0.02376,"IWM":-0.006497}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.868052},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2aa3a5a091be","ts":"2026-09-21T17:17:28.489410+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4273,"target":7.775,"target_label":"range_20d_high","reward_risk":19.76,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4922,"vwap":6.3699,"ext_from_open_pct":3.21,"max_ext_allowed_pct":3.0,"volume_pace":1.305,"trend":"flat","recent_slope_pct":0.037,"volatility":"unknown"},"price":6.4922,"volume":{"bars":227,"last_bar_volume":181499.0,"baseline_avg":33892.7,"bar_rvol":5.355106,"raw_accel":3.553526,"smooth_accel":0.710065,"accel_momentum":0.828469,"rvol_3bar":[0.444763,1.186712,5.355106],"trend_3bar":"ACCELERATING","projected_rvol":0.178897},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1771.0,"sell_vol":1148.0,"unclassified_vol":0.0,"imbalance":0.213429,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.156036},"context":{"vwap":6.369844,"price_vs_vwap_pct":1.920858,"ema9":6.483493,"ema20":6.476875,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.12,"dist_to_hod_atr":0.455165,"atr":0.017137,"spread_atr":0.583545,"own_change_pct":0.229935,"rel_strength_pct":{"SPY":0.20534,"IWM":0.229935}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":1.142936},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"675d71608e33","ts":"2026-09-21T17:17:38.745339+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4322,"target":7.775,"target_label":"range_20d_high","reward_risk":19.67,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4972,"vwap":6.3699,"ext_from_open_pct":3.29,"max_ext_allowed_pct":4.0,"volume_pace":1.304,"trend":"flat","recent_slope_pct":0.0524,"volatility":"unknown"},"price":6.4972,"volume":{"bars":227,"last_bar_volume":181499.0,"baseline_avg":33892.7,"bar_rvol":5.355106,"raw_accel":3.553526,"smooth_accel":0.710065,"accel_momentum":0.828469,"rvol_3bar":[0.444763,1.186712,5.355106],"trend_3bar":"ACCELERATING","projected_rvol":0.350355},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":6207.0,"sell_vol":1110.0,"unclassified_vol":0.0,"imbalance":0.696597,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":2.036831},"context":{"vwap":6.369844,"price_vs_vwap_pct":1.999353,"ema9":6.483493,"ema20":6.476875,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.043077,"dist_to_hod_atr":0.163393,"atr":0.017137,"spread_atr":0.583545,"own_change_pct":0.229935,"rel_strength_pct":{"SPY":0.20534,"IWM":0.229935}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.730351},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"920a95be9f32","ts":"2026-09-21T17:18:04.501348+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.776,"target":11.05,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":103.7,"room_to_5d_high_atr":-0.09},"price":10.905,"vwap":10.8586,"ext_from_open_pct":-0.68,"max_ext_allowed_pct":3.0,"volume_pace":0.566,"trend":"flat","recent_slope_pct":-0.0278,"volatility":"medium"},"price":10.905,"volume":{"bars":228,"last_bar_volume":21967.0,"baseline_avg":53308.7,"bar_rvol":0.412072,"raw_accel":-0.673809,"smooth_accel":1.151145,"accel_momentum":1.678202,"rvol_3bar":[0.280815,1.315927,0.412072],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":172.0,"sell_vol":14955.0,"unclassified_vol":0.0,"imbalance":-0.977259,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.243206},"context":{"vwap":10.858631,"price_vs_vwap_pct":0.427026,"ema9":10.908924,"ema20":10.911006,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.929044,"dist_to_hod_atr":8.957632,"atr":0.023946,"spread_atr":0.417605,"own_change_pct":-0.08708,"rel_strength_pct":{"SPY":-0.082551,"IWM":-0.0416}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.402701},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e606ba04b877","ts":"2026-09-21T17:18:14.788976+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4349,"target":7.775,"target_label":"range_20d_high","reward_risk":19.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4999,"vwap":6.37,"ext_from_open_pct":3.34,"max_ext_allowed_pct":3.0,"volume_pace":1.302,"trend":"flat","recent_slope_pct":0.0683,"volatility":"unknown"},"price":6.4999,"volume":{"bars":228,"last_bar_volume":23400.0,"baseline_avg":41762.0,"bar_rvol":0.560318,"raw_accel":-0.871074,"smooth_accel":1.011671,"accel_momentum":0.301606,"rvol_3bar":[1.186712,5.355106,0.560318],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":13474.0,"sell_vol":6193.0,"unclassified_vol":0.0,"imbalance":0.370214,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":1.543995},"context":{"vwap":6.370004,"price_vs_vwap_pct":2.039183,"ema9":6.484815,"ema20":6.478135,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.001538,"dist_to_hod_atr":0.005908,"atr":0.016927,"spread_atr":0.590776,"own_change_pct":0.078643,"rel_strength_pct":{"SPY":0.083173,"IWM":0.124123}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.207438},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ab574306058c","ts":"2026-09-21T17:18:45.655535+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.1977,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0803,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":3.0,"volume_pace":0.539,"trend":"flat","recent_slope_pct":-0.0845,"volatility":"high"},"price":8.075,"volume":{"bars":228,"last_bar_volume":1453.0,"baseline_avg":5853.15,"bar_rvol":0.248242,"raw_accel":-0.047837,"smooth_accel":0.587775,"accel_momentum":0.4034,"rvol_3bar":[0.248795,0.255101,0.248242],"trend_3bar":"MIXED","projected_rvol":0.307826},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1214.0,"sell_vol":132.0,"unclassified_vol":0.0,"imbalance":0.803863,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":2.540164},"context":{"vwap":8.08035,"price_vs_vwap_pct":-0.066215,"ema9":8.100564,"ema20":8.100572,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":9.917769,"atr":0.030632,"spread_atr":0.326457,"own_change_pct":-0.28736,"rel_strength_pct":{"SPY":-0.28283,"IWM":-0.24188}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.199553},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0f3cc86efda6","ts":"2026-09-21T17:19:01.068821+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.776,"target":11.05,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":103.7,"room_to_5d_high_atr":-0.09},"price":10.905,"vwap":10.8587,"ext_from_open_pct":-0.68,"max_ext_allowed_pct":3.0,"volume_pace":0.564,"trend":"flat","recent_slope_pct":-0.014,"volatility":"medium"},"price":10.905,"volume":{"bars":229,"last_bar_volume":36432.0,"baseline_avg":51699.1,"bar_rvol":0.704693,"raw_accel":0.658488,"smooth_accel":1.374301,"accel_momentum":0.223156,"rvol_3bar":[1.315927,0.412072,0.704693],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":150,"trade_rate":5.0,"buy_vol":8218.0,"sell_vol":25956.0,"unclassified_vol":0.0,"imbalance":-0.51905,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.22608},"context":{"vwap":10.858663,"price_vs_vwap_pct":0.426733,"ema9":10.908139,"ema20":10.910434,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.929044,"dist_to_hod_atr":9.323226,"atr":0.023007,"spread_atr":0.434649,"own_change_pct":-0.1026,"rel_strength_pct":{"SPY":-0.118129,"IWM":-0.058868}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.365771},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d9bb3ad1c45f","ts":"2026-09-21T17:19:01.068821+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4301,"target":7.775,"target_label":"range_20d_high","reward_risk":19.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.495,"vwap":6.3701,"ext_from_open_pct":3.26,"max_ext_allowed_pct":4.0,"volume_pace":1.299,"trend":"flat","recent_slope_pct":0.0345,"volatility":"unknown"},"price":6.495,"volume":{"bars":229,"last_bar_volume":14779.0,"baseline_avg":42184.1,"bar_rvol":0.350345,"raw_accel":-0.368419,"smooth_accel":1.180319,"accel_momentum":0.168648,"rvol_3bar":[5.355106,0.560318,0.350345],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":6012.0,"sell_vol":2637.0,"unclassified_vol":0.0,"imbalance":0.390219,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.421745},"context":{"vwap":6.370108,"price_vs_vwap_pct":1.9606,"ema9":6.487572,"ema20":6.480084,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.076923,"dist_to_hod_atr":0.302311,"atr":0.016539,"spread_atr":0.604622,"own_change_pct":0.16801,"rel_strength_pct":{"SPY":0.152481,"IWM":0.211743}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.136711},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"9a1ef41c9532","ts":"2026-09-21T17:19:06.216552+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.6782,"target":13.53,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":153.7,"room_to_5d_high_atr":-1.6},"price":13.07,"vwap":12.9179,"ext_from_open_pct":0.46,"max_ext_allowed_pct":3.0,"volume_pace":0.604,"trend":"flat","recent_slope_pct":-0.1608,"volatility":"high"},"price":13.07,"volume":{"bars":229,"last_bar_volume":6688.0,"baseline_avg":8663.35,"bar_rvol":0.771988,"raw_accel":0.838373,"smooth_accel":-0.319824,"accel_momentum":0.039619,"rvol_3bar":[0.274004,0.406233,0.771988],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":405.0,"sell_vol":1314.0,"unclassified_vol":0.0,"imbalance":-0.528796,"bid":13.05,"ask":13.11,"spread_pct":0.458716,"quote_size_imbalance":null,"quote_age_s":0.636889},"context":{"vwap":12.917901,"price_vs_vwap_pct":1.17743,"ema9":13.119698,"ema20":13.158771,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.289855,"dist_to_hod_atr":8.185544,"atr":0.089182,"spread_atr":0.672784,"own_change_pct":0.291465,"rel_strength_pct":{"SPY":0.275936,"IWM":0.335197}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.408224},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"70bb4bfceb4c","ts":"2026-09-21T17:19:06.216552+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6031,"target":8.76,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.87},"price":8.705,"vwap":8.6334,"ext_from_open_pct":0.99,"max_ext_allowed_pct":3.0,"volume_pace":0.791,"trend":"flat","recent_slope_pct":-0.0746,"volatility":"medium"},"price":8.705,"volume":{"bars":229,"last_bar_volume":299.0,"baseline_avg":1201.1,"bar_rvol":0.248938,"raw_accel":-0.870675,"smooth_accel":-0.070549,"accel_momentum":-2.266689,"rvol_3bar":[0.435524,2.070293,0.248938],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":64.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.882353,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":3.625743},"context":{"vwap":8.633413,"price_vs_vwap_pct":0.829181,"ema9":8.709122,"ema20":8.702181,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.718952,"dist_to_hod_atr":15.386803,"atr":0.015812,"spread_atr":0.632421,"own_change_pct":-0.229358,"rel_strength_pct":{"SPY":-0.244887,"IWM":-0.185626}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.219652},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"972e5f6f8aa8","ts":"2026-09-21T17:19:06.216552+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4301,"target":7.775,"target_label":"range_20d_high","reward_risk":19.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.495,"vwap":6.3701,"ext_from_open_pct":3.26,"max_ext_allowed_pct":3.0,"volume_pace":1.298,"trend":"flat","recent_slope_pct":0.0345,"volatility":"unknown"},"price":6.495,"volume":{"bars":229,"last_bar_volume":14779.0,"baseline_avg":42184.1,"bar_rvol":0.350345,"raw_accel":-0.368419,"smooth_accel":1.180319,"accel_momentum":0.168648,"rvol_3bar":[5.355106,0.560318,0.350345],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":7408.0,"sell_vol":2422.0,"unclassified_vol":0.0,"imbalance":0.507223,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.152654},"context":{"vwap":6.370108,"price_vs_vwap_pct":1.9606,"ema9":6.487572,"ema20":6.480084,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.076923,"dist_to_hod_atr":0.302311,"atr":0.016539,"spread_atr":0.604622,"own_change_pct":0.16801,"rel_strength_pct":{"SPY":0.152481,"IWM":0.211743}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.177703},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"8872ecd3da43","ts":"2026-09-21T17:19:11.383210+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4308,"target":7.775,"target_label":"range_20d_high","reward_risk":19.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4958,"vwap":6.3701,"ext_from_open_pct":3.27,"max_ext_allowed_pct":4.0,"volume_pace":1.298,"trend":"flat","recent_slope_pct":0.037,"volatility":"unknown"},"price":6.4958,"volume":{"bars":229,"last_bar_volume":14779.0,"baseline_avg":42184.1,"bar_rvol":0.350345,"raw_accel":-0.368419,"smooth_accel":1.180319,"accel_momentum":0.168648,"rvol_3bar":[5.355106,0.560318,0.350345],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":7520.0,"sell_vol":2292.0,"unclassified_vol":0.0,"imbalance":0.532817,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":1.375954},"context":{"vwap":6.370108,"price_vs_vwap_pct":1.973159,"ema9":6.487572,"ema20":6.480084,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.064615,"dist_to_hod_atr":0.253941,"atr":0.016539,"spread_atr":0.604622,"own_change_pct":0.16801,"rel_strength_pct":{"SPY":0.152481,"IWM":0.211743}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.18667},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"d14fdbe0f1c1","ts":"2026-09-21T17:19:16.498694+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.0647,"target":12.29,"target_label":"prev_day_high","reward_risk":0.29,"pos_in_5d_range_pct":67.9,"room_to_5d_high_atr":0.51},"price":12.24,"vwap":12.1768,"ext_from_open_pct":-0.49,"max_ext_allowed_pct":3.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":-0.0292,"volatility":"medium"},"price":12.24,"volume":{"bars":229,"last_bar_volume":1539.0,"baseline_avg":16053.9,"bar_rvol":0.095865,"raw_accel":-0.85051,"smooth_accel":-0.725923,"accel_momentum":-0.157831,"rvol_3bar":[0.197767,0.656483,0.095865],"trend_3bar":"MIXED","projected_rvol":0.047118},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":268.0,"sell_vol":771.0,"unclassified_vol":0.0,"imbalance":-0.484119,"bid":12.24,"ask":12.25,"spread_pct":0.081666,"quote_size_imbalance":null,"quote_age_s":2.113726},"context":{"vwap":12.176837,"price_vs_vwap_pct":0.518718,"ema9":12.249047,"ema20":12.241256,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.001601,"dist_to_hod_atr":12.059273,"atr":0.020731,"spread_atr":0.482371,"own_change_pct":-0.040816,"rel_strength_pct":{"SPY":-0.056345,"IWM":0.002916}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.04641},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7199067f74b6","ts":"2026-09-21T17:19:26.823255+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.0742,"target":12.29,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":68.7,"room_to_5d_high_atr":0.5},"price":12.2495,"vwap":12.1769,"ext_from_open_pct":-0.41,"max_ext_allowed_pct":3.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":-0.0137,"volatility":"medium"},"price":12.2495,"volume":{"bars":229,"last_bar_volume":1539.0,"baseline_avg":16053.9,"bar_rvol":0.095865,"raw_accel":-0.85051,"smooth_accel":-0.725923,"accel_momentum":-0.157831,"rvol_3bar":[0.197767,0.656483,0.095865],"trend_3bar":"MIXED","projected_rvol":0.142261},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":658.0,"sell_vol":488.0,"unclassified_vol":0.0,"imbalance":0.148342,"bid":12.24,"ask":12.25,"spread_pct":0.081666,"quote_size_imbalance":null,"quote_age_s":5.085934},"context":{"vwap":12.176837,"price_vs_vwap_pct":0.596735,"ema9":12.249047,"ema20":12.241256,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.92554,"dist_to_hod_atr":11.601021,"atr":0.020731,"spread_atr":0.482371,"own_change_pct":-0.040816,"rel_strength_pct":{"SPY":-0.056345,"IWM":0.002916}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.014221},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fce73af5cd8e","ts":"2026-09-21T17:19:37.214570+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4301,"target":7.775,"target_label":"range_20d_high","reward_risk":19.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.495,"vwap":6.3702,"ext_from_open_pct":3.26,"max_ext_allowed_pct":3.0,"volume_pace":1.296,"trend":"flat","recent_slope_pct":0.0345,"volatility":"unknown"},"price":6.495,"volume":{"bars":229,"last_bar_volume":14779.0,"baseline_avg":42184.1,"bar_rvol":0.350345,"raw_accel":-0.368419,"smooth_accel":1.180319,"accel_momentum":0.168648,"rvol_3bar":[5.355106,0.560318,0.350345],"trend_3bar":"DECELERATING","projected_rvol":0.383919},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":3825.0,"sell_vol":2467.0,"unclassified_vol":0.0,"imbalance":0.21583,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.339065},"context":{"vwap":6.370108,"price_vs_vwap_pct":1.9606,"ema9":6.487572,"ema20":6.480084,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.076923,"dist_to_hod_atr":0.302311,"atr":0.016539,"spread_atr":0.604622,"own_change_pct":0.16801,"rel_strength_pct":{"SPY":0.152481,"IWM":0.211743}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.075615},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"a81709495f8b","ts":"2026-09-21T17:19:47.508800+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.14,"target":12.0486,"target_label":"premarket_high","reward_risk":2.56,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.395,"vwap":11.3172,"ext_from_open_pct":-1.77,"max_ext_allowed_pct":3.0,"volume_pace":0.534,"trend":"flat","recent_slope_pct":0.3723,"volatility":"unknown"},"price":11.395,"volume":{"bars":213,"last_bar_volume":109.0,"baseline_avg":229.75,"bar_rvol":0.474429,"raw_accel":-0.879291,"smooth_accel":15.174603,"accel_momentum":14.847927,"rvol_3bar":[0.031306,4.22555,0.474429],"trend_3bar":"MIXED","projected_rvol":0.588173},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":4.0,"sell_vol":101.0,"unclassified_vol":0.0,"imbalance":-0.92381,"bid":11.36,"ask":11.43,"spread_pct":0.614305,"quote_size_imbalance":null,"quote_age_s":1.482805},"context":{"vwap":11.31713,"price_vs_vwap_pct":0.688072,"ema9":11.306325,"ema20":11.265052,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.644351,"dist_to_hod_atr":8.432643,"atr":0.065816,"spread_atr":1.063577,"own_change_pct":1.679536,"rel_strength_pct":{"SPY":1.664007,"IWM":1.723268}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.438282},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c55e023418f5","ts":"2026-09-21T17:19:52.620158+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6031,"target":8.76,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.87},"price":8.705,"vwap":8.6335,"ext_from_open_pct":0.99,"max_ext_allowed_pct":4.0,"volume_pace":0.789,"trend":"flat","recent_slope_pct":-0.0746,"volatility":"medium"},"price":8.705,"volume":{"bars":229,"last_bar_volume":299.0,"baseline_avg":1201.1,"bar_rvol":0.248938,"raw_accel":-0.870675,"smooth_accel":-0.070549,"accel_momentum":-2.266689,"rvol_3bar":[0.435524,2.070293,0.248938],"trend_3bar":"MIXED","projected_rvol":1.119267},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":428.0,"sell_vol":680.0,"unclassified_vol":0.0,"imbalance":-0.227437,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":1.010106},"context":{"vwap":8.633413,"price_vs_vwap_pct":0.829181,"ema9":8.709122,"ema20":8.702181,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.718952,"dist_to_hod_atr":15.386803,"atr":0.015812,"spread_atr":0.632421,"own_change_pct":-0.229358,"rel_strength_pct":{"SPY":-0.244887,"IWM":-0.185626}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.056618},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"78cfe623bd0d","ts":"2026-09-21T17:19:52.620158+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.0647,"target":12.29,"target_label":"prev_day_high","reward_risk":0.29,"pos_in_5d_range_pct":67.9,"room_to_5d_high_atr":0.51},"price":12.24,"vwap":12.177,"ext_from_open_pct":-0.49,"max_ext_allowed_pct":4.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":-0.0292,"volatility":"medium"},"price":12.24,"volume":{"bars":229,"last_bar_volume":1539.0,"baseline_avg":16053.9,"bar_rvol":0.095865,"raw_accel":-0.85051,"smooth_accel":-0.725923,"accel_momentum":-0.157831,"rvol_3bar":[0.197767,0.656483,0.095865],"trend_3bar":"MIXED","projected_rvol":0.613879},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":5943.0,"sell_vol":2042.0,"unclassified_vol":0.0,"imbalance":0.488541,"bid":12.24,"ask":12.25,"spread_pct":0.081666,"quote_size_imbalance":null,"quote_age_s":1.943677},"context":{"vwap":12.176837,"price_vs_vwap_pct":0.518718,"ema9":12.249047,"ema20":12.241256,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.001601,"dist_to_hod_atr":12.059273,"atr":0.020731,"spread_atr":0.482371,"own_change_pct":-0.040816,"rel_strength_pct":{"SPY":-0.056345,"IWM":0.002916}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.046834},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d576b1f4becb","ts":"2026-09-21T17:19:57.765104+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.6555,"target":12.0,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":121.7,"room_to_5d_high_atr":-0.97},"price":11.86,"vwap":11.5896,"ext_from_open_pct":1.63,"max_ext_allowed_pct":4.0,"volume_pace":0.215,"trend":"flat","recent_slope_pct":0.1565,"volatility":"high"},"price":11.86,"volume":{"bars":229,"last_bar_volume":4257.0,"baseline_avg":3603.15,"bar_rvol":1.181466,"raw_accel":0.469451,"smooth_accel":0.444463,"accel_momentum":0.569704,"rvol_3bar":[0.431175,0.823725,1.181466],"trend_3bar":"ACCELERATING","projected_rvol":0.626128},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1078.0,"sell_vol":424.0,"unclassified_vol":0.0,"imbalance":0.435419,"bid":11.85,"ask":11.87,"spread_pct":0.168634,"quote_size_imbalance":null,"quote_age_s":0.383529},"context":{"vwap":11.589432,"price_vs_vwap_pct":2.33461,"ema9":11.802014,"ema20":11.788679,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.001669,"dist_to_hod_atr":3.485819,"atr":0.034425,"spread_atr":0.58097,"own_change_pct":0.424268,"rel_strength_pct":{"SPY":0.408739,"IWM":0.468}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.514433},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b505d572c946","ts":"2026-09-21T17:19:57.765104+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.0724,"target":12.29,"target_label":"prev_day_high","reward_risk":0.24,"pos_in_5d_range_pct":68.5,"room_to_5d_high_atr":0.5},"price":12.2477,"vwap":12.177,"ext_from_open_pct":-0.43,"max_ext_allowed_pct":4.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":-0.0167,"volatility":"medium"},"price":12.2477,"volume":{"bars":229,"last_bar_volume":1539.0,"baseline_avg":16053.9,"bar_rvol":0.095865,"raw_accel":-0.85051,"smooth_accel":-0.725923,"accel_momentum":-0.157831,"rvol_3bar":[0.197767,0.656483,0.095865],"trend_3bar":"MIXED","projected_rvol":0.559721},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":5783.0,"sell_vol":1847.0,"unclassified_vol":0.0,"imbalance":0.515858,"bid":12.24,"ask":12.25,"spread_pct":0.081666,"quote_size_imbalance":null,"quote_age_s":0.228789},"context":{"vwap":12.176837,"price_vs_vwap_pct":0.581953,"ema9":12.249047,"ema20":12.241256,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.939952,"dist_to_hod_atr":11.687847,"atr":0.020731,"spread_atr":0.482371,"own_change_pct":-0.040816,"rel_strength_pct":{"SPY":-0.056345,"IWM":0.002916}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.049453},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"79773c765939","ts":"2026-09-21T17:20:02.861593+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.6455,"target":11.91,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":121.4,"room_to_5d_high_atr":-0.95},"price":11.85,"vwap":11.5897,"ext_from_open_pct":1.54,"max_ext_allowed_pct":3.0,"volume_pace":0.215,"trend":"flat","recent_slope_pct":0.1268,"volatility":"high"},"price":11.85,"volume":{"bars":230,"last_bar_volume":2172.0,"baseline_avg":3362.6,"bar_rvol":0.645929,"raw_accel":-0.489782,"smooth_accel":0.572947,"accel_momentum":0.128484,"rvol_3bar":[0.823725,1.181466,0.645929],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1478.0,"sell_vol":962.0,"unclassified_vol":0.0,"imbalance":0.211475,"bid":11.83,"ask":11.87,"spread_pct":0.337553,"quote_size_imbalance":null,"quote_age_s":0.220584},"context":{"vwap":11.589641,"price_vs_vwap_pct":2.246484,"ema9":11.813611,"ema20":11.795472,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.085142,"dist_to_hod_atr":3.616654,"atr":0.035945,"spread_atr":1.112817,"own_change_pct":0.679117,"rel_strength_pct":{"SPY":0.676529,"IWM":0.719353}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.136598},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6581f94416a1","ts":"2026-09-21T17:20:23.433510+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.0679,"target":12.29,"target_label":"prev_day_high","reward_risk":0.27,"pos_in_5d_range_pct":68.1,"room_to_5d_high_atr":0.51},"price":12.2432,"vwap":12.177,"ext_from_open_pct":-0.46,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":-0.0198,"volatility":"medium"},"price":12.2432,"volume":{"bars":230,"last_bar_volume":8651.0,"baseline_avg":15657.45,"bar_rvol":0.552517,"raw_accel":1.210066,"smooth_accel":0.15415,"accel_momentum":0.880073,"rvol_3bar":[0.656483,0.095865,0.552517],"trend_3bar":"MIXED","projected_rvol":0.190674},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":154.0,"sell_vol":1020.0,"unclassified_vol":0.0,"imbalance":-0.737649,"bid":12.24,"ask":12.25,"spread_pct":0.081666,"quote_size_imbalance":null,"quote_age_s":0.335728},"context":{"vwap":12.176971,"price_vs_vwap_pct":0.543888,"ema9":12.248778,"ema20":12.241869,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.975981,"dist_to_hod_atr":11.997133,"atr":0.020572,"spread_atr":0.486107,"own_change_pct":-0.044886,"rel_strength_pct":{"SPY":-0.047474,"IWM":-0.00465}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.407563},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4e2c8695ddb9","ts":"2026-09-21T17:20:23.433510+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7665,"target":8.94,"target_label":"ceiling","reward_risk":0.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7827,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.486,"trend":"flat","recent_slope_pct":-0.0648,"volatility":"unknown"},"price":8.855,"volume":{"bars":230,"last_bar_volume":43881.0,"baseline_avg":39951.1,"bar_rvol":1.098368,"raw_accel":1.618667,"smooth_accel":-0.2998,"accel_momentum":0.46903,"rvol_3bar":[0.368701,0.418171,1.098368],"trend_3bar":"ACCELERATING","projected_rvol":4.525342},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":41257.0,"sell_vol":39241.0,"unclassified_vol":0.0,"imbalance":0.025044,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.426038},"context":{"vwap":8.782394,"price_vs_vwap_pct":0.826721,"ema9":8.874423,"ema20":8.876855,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":3.503098,"atr":0.024264,"spread_atr":0.412129,"own_change_pct":-0.135237,"rel_strength_pct":{"SPY":-0.137825,"IWM":-0.095001}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.027508},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ae45ae34e843","ts":"2026-09-21T17:20:28.561967+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7732,"target":13.53,"target_label":"ceiling","reward_risk":0.93,"pos_in_5d_range_pct":155.7,"room_to_5d_high_atr":-1.67},"price":13.165,"vwap":12.9183,"ext_from_open_pct":1.19,"max_ext_allowed_pct":4.0,"volume_pace":0.601,"trend":"flat","recent_slope_pct":0.0253,"volatility":"high"},"price":13.165,"volume":{"bars":230,"last_bar_volume":9253.0,"baseline_avg":8359.7,"bar_rvol":1.106858,"raw_accel":0.383523,"smooth_accel":0.372039,"accel_momentum":0.691863,"rvol_3bar":[0.406233,0.771988,1.106858],"trend_3bar":"ACCELERATING","projected_rvol":0.716423},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":2675.0,"sell_vol":176.0,"unclassified_vol":0.0,"imbalance":0.876535,"bid":13.14,"ask":13.19,"spread_pct":0.379795,"quote_size_imbalance":null,"quote_age_s":0.351934},"context":{"vwap":12.918187,"price_vs_vwap_pct":1.910584,"ema9":13.112759,"ema20":13.151745,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-4.601449,"dist_to_hod_atr":7.182324,"atr":0.088412,"spread_atr":0.565537,"own_change_pct":-0.114504,"rel_strength_pct":{"SPY":-0.117092,"IWM":-0.074268}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.970199},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"27935c89d6c8","ts":"2026-09-21T17:20:28.561967+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.931,"target":8.1926,"target_label":"ceiling","reward_risk":0.7,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.62},"price":8.085,"vwap":8.0804,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":4.0,"volume_pace":0.536,"trend":"flat","recent_slope_pct":-0.0549,"volatility":"high"},"price":8.085,"volume":{"bars":230,"last_bar_volume":1037.0,"baseline_avg":5929.0,"bar_rvol":0.174903,"raw_accel":-0.366137,"smooth_accel":0.209616,"accel_momentum":-0.200836,"rvol_3bar":[0.248242,0.276981,0.174903],"trend_3bar":"MIXED","projected_rvol":0.535006},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":970.0,"sell_vol":540.0,"unclassified_vol":0.0,"imbalance":0.284768,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":0.886025},"context":{"vwap":8.08035,"price_vs_vwap_pct":0.057544,"ema9":8.092289,"ema20":8.096433,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.506469,"dist_to_hod_atr":9.980399,"atr":0.029438,"spread_atr":0.3397,"own_change_pct":-0.32956,"rel_strength_pct":{"SPY":-0.332148,"IWM":-0.289325}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.049807},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1a7a1898a6f4","ts":"2026-09-21T17:20:28.561967+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.0715,"target":12.29,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":68.5,"room_to_5d_high_atr":0.5},"price":12.2468,"vwap":12.177,"ext_from_open_pct":-0.43,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":-0.014,"volatility":"medium"},"price":12.2468,"volume":{"bars":230,"last_bar_volume":8651.0,"baseline_avg":15657.45,"bar_rvol":0.552517,"raw_accel":1.210066,"smooth_accel":0.15415,"accel_momentum":0.880073,"rvol_3bar":[0.656483,0.095865,0.552517],"trend_3bar":"MIXED","projected_rvol":0.169988},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":254.0,"sell_vol":1013.0,"unclassified_vol":0.0,"imbalance":-0.599053,"bid":12.24,"ask":12.25,"spread_pct":0.081666,"quote_size_imbalance":null,"quote_age_s":0.031343},"context":{"vwap":12.176971,"price_vs_vwap_pct":0.573452,"ema9":12.248778,"ema20":12.241869,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.947158,"dist_to_hod_atr":11.822134,"atr":0.020572,"spread_atr":0.486107,"own_change_pct":-0.044886,"rel_strength_pct":{"SPY":-0.047474,"IWM":-0.00465}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.330987},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8d1971ffbf81","ts":"2026-09-21T17:20:33.705782+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.6599,"target":12.0,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":121.8,"room_to_5d_high_atr":-0.97},"price":11.8644,"vwap":11.5898,"ext_from_open_pct":1.67,"max_ext_allowed_pct":3.0,"volume_pace":0.214,"trend":"flat","recent_slope_pct":0.1511,"volatility":"high"},"price":11.8644,"volume":{"bars":230,"last_bar_volume":2172.0,"baseline_avg":3362.6,"bar_rvol":0.645929,"raw_accel":-0.489782,"smooth_accel":0.572947,"accel_momentum":0.128484,"rvol_3bar":[0.823725,1.181466,0.645929],"trend_3bar":"MIXED","projected_rvol":0.683436},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":9.0,"sell_vol":344.0,"unclassified_vol":0.0,"imbalance":-0.949008,"bid":11.83,"ask":11.87,"spread_pct":0.337553,"quote_size_imbalance":null,"quote_age_s":2.901862},"context":{"vwap":11.589641,"price_vs_vwap_pct":2.370733,"ema9":11.813611,"ema20":11.795472,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-0.964942,"dist_to_hod_atr":3.21604,"atr":0.035945,"spread_atr":1.112817,"own_change_pct":0.679117,"rel_strength_pct":{"SPY":0.676529,"IWM":0.719353}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.612992},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e435a9c3765a","ts":"2026-09-21T17:20:33.705782+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7813,"target":8.94,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.87,"vwap":8.7828,"ext_from_open_pct":4.11,"max_ext_allowed_pct":4.0,"volume_pace":0.486,"trend":"flat","recent_slope_pct":-0.031,"volatility":"unknown"},"price":8.87,"volume":{"bars":230,"last_bar_volume":43881.0,"baseline_avg":39951.1,"bar_rvol":1.098368,"raw_accel":1.618667,"smooth_accel":-0.2998,"accel_momentum":0.46903,"rvol_3bar":[0.368701,0.418171,1.098368],"trend_3bar":"ACCELERATING","projected_rvol":3.709478},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":49387.0,"sell_vol":24648.0,"unclassified_vol":0.0,"imbalance":0.334153,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.864329},"context":{"vwap":8.782394,"price_vs_vwap_pct":0.997517,"ema9":8.874423,"ema20":8.876855,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.782998,"dist_to_hod_atr":2.884904,"atr":0.024264,"spread_atr":0.412129,"own_change_pct":-0.135237,"rel_strength_pct":{"SPY":-0.137825,"IWM":-0.095001}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.367023},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"342aaff4504f","ts":"2026-09-21T17:20:38.839506+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.08 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.9226,"target":8.1926,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":119.1,"room_to_5d_high_atr":-0.6},"price":8.0766,"vwap":8.0803,"ext_from_open_pct":-1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.536,"trend":"flat","recent_slope_pct":-0.0757,"volatility":"high"},"price":8.0766,"volume":{"bars":230,"last_bar_volume":1037.0,"baseline_avg":5929.0,"bar_rvol":0.174903,"raw_accel":-0.366137,"smooth_accel":0.209616,"accel_momentum":-0.200836,"rvol_3bar":[0.248242,0.276981,0.174903],"trend_3bar":"MIXED","projected_rvol":0.41949},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":970.0,"sell_vol":549.0,"unclassified_vol":0.0,"imbalance":0.277156,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":4.538135},"context":{"vwap":8.08035,"price_vs_vwap_pct":-0.046412,"ema9":8.092289,"ema20":8.096433,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.606722,"dist_to_hod_atr":10.265748,"atr":0.029438,"spread_atr":0.3397,"own_change_pct":-0.32956,"rel_strength_pct":{"SPY":-0.332148,"IWM":-0.289325}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.048475},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cbf5f5eb3b77","ts":"2026-09-21T17:20:49.164881+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.6455,"target":11.91,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":121.4,"room_to_5d_high_atr":-0.95},"price":11.85,"vwap":11.5899,"ext_from_open_pct":1.54,"max_ext_allowed_pct":3.0,"volume_pace":0.214,"trend":"flat","recent_slope_pct":0.1268,"volatility":"high"},"price":11.85,"volume":{"bars":230,"last_bar_volume":2172.0,"baseline_avg":3362.6,"bar_rvol":0.645929,"raw_accel":-0.489782,"smooth_accel":0.572947,"accel_momentum":0.128484,"rvol_3bar":[0.823725,1.181466,0.645929],"trend_3bar":"MIXED","projected_rvol":1.194398},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":9.0,"sell_vol":2224.0,"unclassified_vol":0.0,"imbalance":-0.991939,"bid":11.83,"ask":11.87,"spread_pct":0.337553,"quote_size_imbalance":null,"quote_age_s":1.313561},"context":{"vwap":11.589641,"price_vs_vwap_pct":2.246484,"ema9":11.813611,"ema20":11.795472,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.085142,"dist_to_hod_atr":3.616654,"atr":0.035945,"spread_atr":1.112817,"own_change_pct":0.679117,"rel_strength_pct":{"SPY":0.676529,"IWM":0.719353}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.640722},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"acc501dc6094","ts":"2026-09-21T17:20:49.164881+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.14% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":11.1,"target":12.0486,"target_label":"premarket_high","reward_risk":2.65,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.36,"vwap":11.3174,"ext_from_open_pct":-2.07,"max_ext_allowed_pct":3.0,"volume_pace":0.534,"trend":"flat","recent_slope_pct":0.1762,"volatility":"unknown"},"price":11.36,"volume":{"bars":214,"last_bar_volume":107.0,"baseline_avg":232.6,"bar_rvol":0.460017,"raw_accel":-0.018349,"smooth_accel":15.217391,"accel_momentum":0.042788,"rvol_3bar":[4.22555,0.474429,0.460017],"trend_3bar":"DECELERATING","projected_rvol":4.422971},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":181.0,"sell_vol":656.0,"unclassified_vol":0.0,"imbalance":-0.567503,"bid":11.29,"ask":11.42,"spread_pct":1.14487,"quote_size_imbalance":null,"quote_age_s":0.585649},"context":{"vwap":11.317182,"price_vs_vwap_pct":0.378344,"ema9":11.32406,"ema20":11.277428,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.937238,"dist_to_hod_atr":8.828525,"atr":0.066829,"spread_atr":1.945268,"own_change_pct":1.109139,"rel_strength_pct":{"SPY":1.106551,"IWM":1.149375}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.261061},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"65a1770806bf","ts":"2026-09-21T17:20:59.397906+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9349,"target":8.1926,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":119.7,"room_to_5d_high_atr":-0.62},"price":8.0889,"vwap":8.0804,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":3.0,"volume_pace":0.535,"trend":"flat","recent_slope_pct":-0.0453,"volatility":"high"},"price":8.0889,"volume":{"bars":230,"last_bar_volume":1037.0,"baseline_avg":5929.0,"bar_rvol":0.174903,"raw_accel":-0.366137,"smooth_accel":0.209616,"accel_momentum":-0.200836,"rvol_3bar":[0.248242,0.276981,0.174903],"trend_3bar":"MIXED","projected_rvol":0.301048},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":153.0,"sell_vol":104.0,"unclassified_vol":0.0,"imbalance":0.190661,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":0.782416},"context":{"vwap":8.08035,"price_vs_vwap_pct":0.105809,"ema9":8.092289,"ema20":8.096433,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.459923,"dist_to_hod_atr":9.847916,"atr":0.029438,"spread_atr":0.3397,"own_change_pct":-0.32956,"rel_strength_pct":{"SPY":-0.332148,"IWM":-0.289325}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.033347},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d24f861b61ee","ts":"2026-09-21T17:21:04.484295+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 71.9s, plan says WATCH; stop 8.61, target 8.76 (premarket_high), R:R 0.45; no reclaim yet (needs a close > 8.72); R:R 0.45 < 2.0 at 8.71; pullback: buy 8.70-8.72 holding + reclaim/fading selling/","plan":{"state":"WATCH","setup":"","stop":8.6121,"target":8.76,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":128.4,"room_to_5d_high_atr":-0.89},"price":8.714,"vwap":8.6336,"ext_from_open_pct":1.09,"max_ext_allowed_pct":4.0,"volume_pace":0.785,"trend":"flat","recent_slope_pct":0.0376,"volatility":"medium"},"price":8.714,"volume":{"bars":231,"last_bar_volume":305.0,"baseline_avg":1168.15,"bar_rvol":0.261097,"raw_accel":-0.782764,"smooth_accel":-0.608806,"accel_momentum":-0.871384,"rvol_3bar":[0.248938,1.229314,0.261097],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":83.0,"sell_vol":96.0,"unclassified_vol":0.0,"imbalance":-0.072626,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":10.33236},"context":{"vwap":8.633553,"price_vs_vwap_pct":0.931798,"ema9":8.709578,"ema20":8.703616,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.618374,"dist_to_hod_atr":15.141695,"atr":0.015474,"spread_atr":0.646252,"own_change_pct":-0.118052,"rel_strength_pct":{"SPY":-0.141993,"IWM":-0.093556}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.018962},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b6960805756f","ts":"2026-09-21T17:21:14.689363+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3704,"ext_from_open_pct":3.18,"max_ext_allowed_pct":4.0,"volume_pace":1.29,"trend":"flat","recent_slope_pct":-0.0288,"volatility":"unknown"},"price":6.49,"volume":{"bars":231,"last_bar_volume":16862.0,"baseline_avg":42515.45,"bar_rvol":0.396609,"raw_accel":-0.435374,"smooth_accel":-0.748711,"accel_momentum":-0.033821,"rvol_3bar":[0.350345,0.705898,0.396609],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1311.0,"sell_vol":2131.0,"unclassified_vol":0.0,"imbalance":-0.238234,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.080619},"context":{"vwap":6.370413,"price_vs_vwap_pct":1.877231,"ema9":6.48589,"ema20":6.480629,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.153846,"dist_to_hod_atr":0.602348,"atr":0.016602,"spread_atr":0.602348,"own_change_pct":-0.084803,"rel_strength_pct":{"SPY":-0.108745,"IWM":-0.060308}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.094486},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"914bfccce763","ts":"2026-09-21T17:21:24.929752+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.6555,"target":12.0,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":121.7,"room_to_5d_high_atr":-0.97},"price":11.86,"vwap":11.5901,"ext_from_open_pct":1.63,"max_ext_allowed_pct":4.0,"volume_pace":0.214,"trend":"flat","recent_slope_pct":0.0633,"volatility":"high"},"price":11.86,"volume":{"bars":231,"last_bar_volume":3291.0,"baseline_avg":3418.45,"bar_rvol":0.962717,"raw_accel":0.515193,"smooth_accel":0.34069,"accel_momentum":-0.232257,"rvol_3bar":[1.181466,0.645929,0.962717],"trend_3bar":"MIXED","projected_rvol":0.972998},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":440.0,"sell_vol":942.0,"unclassified_vol":0.0,"imbalance":-0.363242,"bid":11.85,"ask":11.86,"spread_pct":0.084353,"quote_size_imbalance":null,"quote_age_s":1.164696},"context":{"vwap":11.58995,"price_vs_vwap_pct":2.330038,"ema9":11.820889,"ema20":11.800665,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.001669,"dist_to_hod_atr":3.249625,"atr":0.036927,"spread_atr":0.270802,"own_change_pct":0.508906,"rel_strength_pct":{"SPY":0.484964,"IWM":0.533401}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.349699},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b7bec5556bda","ts":"2026-09-21T17:21:30.097679+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.6455,"target":11.91,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":121.4,"room_to_5d_high_atr":-0.95},"price":11.85,"vwap":11.5911,"ext_from_open_pct":1.54,"max_ext_allowed_pct":3.0,"volume_pace":0.215,"trend":"flat","recent_slope_pct":0.0464,"volatility":"high"},"price":11.85,"volume":{"bars":231,"last_bar_volume":3291.0,"baseline_avg":3418.45,"bar_rvol":0.962717,"raw_accel":0.515193,"smooth_accel":0.34069,"accel_momentum":-0.232257,"rvol_3bar":[1.181466,0.645929,0.962717],"trend_3bar":"MIXED","projected_rvol":6.686532},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":3046.0,"sell_vol":8420.0,"unclassified_vol":0.0,"imbalance":-0.46869,"bid":11.85,"ask":11.86,"spread_pct":0.084353,"quote_size_imbalance":null,"quote_age_s":0.092739},"context":{"vwap":11.58995,"price_vs_vwap_pct":2.243756,"ema9":11.820889,"ema20":11.800665,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":-1.085142,"dist_to_hod_atr":3.520427,"atr":0.036927,"spread_atr":0.270802,"own_change_pct":0.508906,"rel_strength_pct":{"SPY":0.484964,"IWM":0.533401}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.451216},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8d4f9bc51732","ts":"2026-09-21T17:21:35.243882+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.485,"vwap":6.3704,"ext_from_open_pct":3.1,"max_ext_allowed_pct":3.0,"volume_pace":1.288,"trend":"flat","recent_slope_pct":-0.0442,"volatility":"unknown"},"price":6.485,"volume":{"bars":231,"last_bar_volume":16862.0,"baseline_avg":42515.45,"bar_rvol":0.396609,"raw_accel":-0.435374,"smooth_accel":-0.748711,"accel_momentum":-0.033821,"rvol_3bar":[0.350345,0.705898,0.396609],"trend_3bar":"MIXED","projected_rvol":0.116884},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2387.0,"sell_vol":429.0,"unclassified_vol":0.0,"imbalance":0.695312,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.037503},"context":{"vwap":6.370413,"price_vs_vwap_pct":1.798743,"ema9":6.48589,"ema20":6.480629,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.230769,"dist_to_hod_atr":0.903522,"atr":0.016602,"spread_atr":0.602348,"own_change_pct":-0.084803,"rel_strength_pct":{"SPY":-0.108745,"IWM":-0.060308}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.275767},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a4aee6868f14","ts":"2026-09-21T17:21:45.459234+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7693,"target":8.94,"target_label":"ceiling","reward_risk":0.93,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8579,"vwap":8.7828,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.484,"trend":"flat","recent_slope_pct":-0.0312,"volatility":"unknown"},"price":8.8579,"volume":{"bars":231,"last_bar_volume":94799.0,"baseline_avg":40425.2,"bar_rvol":2.345047,"raw_accel":1.160366,"smooth_accel":0.393192,"accel_momentum":0.692991,"rvol_3bar":[0.418171,1.098368,2.345047],"trend_3bar":"ACCELERATING","projected_rvol":0.16599},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":3572.0,"sell_vol":1052.0,"unclassified_vol":0.0,"imbalance":0.544983,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":9.75101},"context":{"vwap":8.782801,"price_vs_vwap_pct":0.855068,"ema9":8.872538,"ema20":8.875726,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.918345,"dist_to_hod_atr":3.422513,"atr":0.023988,"spread_atr":0.416871,"own_change_pct":-0.05637,"rel_strength_pct":{"SPY":-0.080312,"IWM":-0.031875}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.27801},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"27254dac0b87","ts":"2026-09-21T17:21:50.560844+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.08 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.926,"target":8.1842,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":119.3,"room_to_5d_high_atr":-0.61},"price":8.08,"vwap":8.0804,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":-0.017,"volatility":"high"},"price":8.08,"volume":{"bars":231,"last_bar_volume":1771.0,"baseline_avg":5949.5,"bar_rvol":0.297672,"raw_accel":0.190688,"smooth_accel":-0.005372,"accel_momentum":-0.214987,"rvol_3bar":[0.276981,0.174903,0.297672],"trend_3bar":"MIXED","projected_rvol":0.196269},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":113.0,"sell_vol":11.0,"unclassified_vol":0.0,"imbalance":0.822581,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":3.980383},"context":{"vwap":8.08035,"price_vs_vwap_pct":-0.004335,"ema9":8.089251,"ema20":8.094592,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.566143,"dist_to_hod_atr":10.547919,"atr":0.028328,"spread_atr":0.353009,"own_change_pct":-0.282716,"rel_strength_pct":{"SPY":-0.306658,"IWM":-0.258221}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.244859},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9b4fbc1e98d7","ts":"2026-09-21T17:21:50.560844+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7813,"target":8.94,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.87,"vwap":8.7828,"ext_from_open_pct":4.11,"max_ext_allowed_pct":4.0,"volume_pace":0.484,"trend":"flat","recent_slope_pct":-0.0039,"volatility":"unknown"},"price":8.87,"volume":{"bars":231,"last_bar_volume":94799.0,"baseline_avg":40425.2,"bar_rvol":2.345047,"raw_accel":1.160366,"smooth_accel":0.393192,"accel_momentum":0.692991,"rvol_3bar":[0.418171,1.098368,2.345047],"trend_3bar":"ACCELERATING","projected_rvol":0.149565},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":2330.0,"sell_vol":51.0,"unclassified_vol":0.0,"imbalance":0.957161,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.826526},"context":{"vwap":8.782801,"price_vs_vwap_pct":0.992837,"ema9":8.872538,"ema20":8.875726,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.782998,"dist_to_hod_atr":2.918099,"atr":0.023988,"spread_atr":0.416871,"own_change_pct":-0.05637,"rel_strength_pct":{"SPY":-0.080312,"IWM":-0.031875}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.244587},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"75219007c222","ts":"2026-09-21T17:21:55.705214+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.931,"target":8.1842,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.62},"price":8.085,"vwap":8.0804,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":-0.0046,"volatility":"high"},"price":8.085,"volume":{"bars":231,"last_bar_volume":1771.0,"baseline_avg":5949.5,"bar_rvol":0.297672,"raw_accel":0.190688,"smooth_accel":-0.005372,"accel_momentum":-0.214987,"rvol_3bar":[0.276981,0.174903,0.297672],"trend_3bar":"MIXED","projected_rvol":0.202765},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":199.0,"sell_vol":42.0,"unclassified_vol":0.0,"imbalance":0.651452,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":1.848866},"context":{"vwap":8.08035,"price_vs_vwap_pct":0.057544,"ema9":8.089251,"ema20":8.094592,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.506469,"dist_to_hod_atr":10.371414,"atr":0.028328,"spread_atr":0.353009,"own_change_pct":-0.282716,"rel_strength_pct":{"SPY":-0.306658,"IWM":-0.258221}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.193919},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d8ac937d2902","ts":"2026-09-21T17:22:05.998729+00:00","symbol":"CRML","event":"REJECT","bot":{"state":"REJECT","reason":"extended +6.3% above open $8.69 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.1198,"target":9.26,"target_label":"premarket_high","reward_risk":0.2,"pos_in_5d_range_pct":313.0,"room_to_5d_high_atr":-4.62},"price":9.2367,"vwap":9.1838,"ext_from_open_pct":6.29,"max_ext_allowed_pct":4.0,"volume_pace":6.322,"trend":"flat","recent_slope_pct":0.0567,"volatility":"medium"},"price":9.2367,"volume":{"bars":232,"last_bar_volume":45126.0,"baseline_avg":47010.9,"bar_rvol":0.959905,"raw_accel":-0.478179,"smooth_accel":0.852843,"accel_momentum":0.402961,"rvol_3bar":[1.011687,1.962668,0.959905],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":11459.0,"sell_vol":13731.0,"unclassified_vol":0.0,"imbalance":-0.090195,"bid":9.23,"ask":9.24,"spread_pct":0.108284,"quote_size_imbalance":null,"quote_age_s":3.654051},"context":{"vwap":9.183811,"price_vs_vwap_pct":0.575895,"ema9":9.26374,"ema20":9.272846,"ema_stack":false,"ema_warm":true,"hod":9.64,"dist_to_hod_pct":-4.18361,"dist_to_hod_atr":7.995573,"atr":0.05044,"spread_atr":0.198254,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.029765,"IWM":0.017497}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.086578},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8714ab0ecd14","ts":"2026-09-21T17:22:05.998729+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 97.4s, plan says PASS; stop 12.07, target 12.29 (prev_day_high), R:R 0.23; R:R 0.23 < 2.0 at 12.25; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.0747,"target":12.29,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":68.8,"room_to_5d_high_atr":0.5},"price":12.25,"vwap":12.1771,"ext_from_open_pct":-0.41,"max_ext_allowed_pct":3.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":0.0057,"volatility":"medium"},"price":12.25,"volume":{"bars":232,"last_bar_volume":1345.0,"baseline_avg":15489.75,"bar_rvol":0.086832,"raw_accel":-0.737407,"smooth_accel":0.008404,"accel_momentum":0.32523,"rvol_3bar":[0.552517,0.329734,0.086832],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":109.0,"sell_vol":147.0,"unclassified_vol":0.0,"imbalance":-0.148438,"bid":12.24,"ask":12.25,"spread_pct":0.081666,"quote_size_imbalance":null,"quote_age_s":5.995125},"context":{"vwap":12.17707,"price_vs_vwap_pct":0.598914,"ema9":12.247358,"ema20":12.242409,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.921537,"dist_to_hod_atr":12.124345,"atr":0.019795,"spread_atr":0.505181,"own_change_pct":-0.077524,"rel_strength_pct":{"SPY":-0.10729,"IWM":-0.060027}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.012889},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"4933fb208138","ts":"2026-09-21T17:22:21.560187+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.08 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.926,"target":8.1815,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":119.3,"room_to_5d_high_atr":-0.61},"price":8.08,"vwap":8.0804,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":4.0,"volume_pace":0.532,"trend":"flat","recent_slope_pct":0.0104,"volatility":"high"},"price":8.08,"volume":{"bars":232,"last_bar_volume":1120.0,"baseline_avg":5238.7,"bar_rvol":0.213793,"raw_accel":-0.367589,"smooth_accel":-0.148862,"accel_momentum":-0.143491,"rvol_3bar":[0.174903,0.297672,0.213793],"trend_3bar":"MIXED","projected_rvol":0.060028},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":206.0,"sell_vol":43.0,"unclassified_vol":0.0,"imbalance":0.654618,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":0.35245},"context":{"vwap":8.080353,"price_vs_vwap_pct":-0.004363,"ema9":8.088401,"ema20":8.093678,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.566143,"dist_to_hod_atr":10.974854,"atr":0.027226,"spread_atr":0.367298,"own_change_pct":-0.212288,"rel_strength_pct":{"SPY":-0.242053,"IWM":-0.194791}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.139953},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ec0ec7dad875","ts":"2026-09-21T17:22:21.560187+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7714,"target":8.94,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.86,"vwap":8.7829,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.483,"trend":"flat","recent_slope_pct":-0.0371,"volatility":"unknown"},"price":8.86,"volume":{"bars":232,"last_bar_volume":8528.0,"baseline_avg":43083.2,"bar_rvol":0.197943,"raw_accel":-0.910041,"smooth_accel":2.618238,"accel_momentum":2.225046,"rvol_3bar":[1.098368,2.345047,0.197943],"trend_3bar":"MIXED","projected_rvol":0.79909},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":15508.0,"sell_vol":223.0,"unclassified_vol":0.0,"imbalance":0.971648,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":1.790944},"context":{"vwap":8.782839,"price_vs_vwap_pct":0.878545,"ema9":8.871271,"ema20":8.874819,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.894855,"dist_to_hod_atr":3.445657,"atr":0.023218,"spread_atr":0.430707,"own_change_pct":-0.177888,"rel_strength_pct":{"SPY":-0.207653,"IWM":-0.160391}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.192331},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"be066fbddaf5","ts":"2026-09-21T17:22:26.801315+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7764,"target":8.94,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.7829,"ext_from_open_pct":4.05,"max_ext_allowed_pct":3.0,"volume_pace":0.483,"trend":"flat","recent_slope_pct":-0.0258,"volatility":"unknown"},"price":8.865,"volume":{"bars":232,"last_bar_volume":8528.0,"baseline_avg":43083.2,"bar_rvol":0.197943,"raw_accel":-0.910041,"smooth_accel":2.618238,"accel_momentum":2.225046,"rvol_3bar":[1.098368,2.345047,0.197943],"trend_3bar":"MIXED","projected_rvol":1.150754},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":12400.0,"sell_vol":9746.0,"unclassified_vol":0.0,"imbalance":0.119841,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.819277},"context":{"vwap":8.782839,"price_vs_vwap_pct":0.935475,"ema9":8.871271,"ema20":8.874819,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.838926,"dist_to_hod_atr":3.230303,"atr":0.023218,"spread_atr":0.430707,"own_change_pct":-0.177888,"rel_strength_pct":{"SPY":-0.207653,"IWM":-0.160391}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.023722},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f32ceb944179","ts":"2026-09-21T17:22:32.040847+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9306,"target":8.1815,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.62},"price":8.0846,"vwap":8.0804,"ext_from_open_pct":-1.29,"max_ext_allowed_pct":3.0,"volume_pace":0.532,"trend":"flat","recent_slope_pct":0.0218,"volatility":"high"},"price":8.0846,"volume":{"bars":232,"last_bar_volume":1120.0,"baseline_avg":5238.7,"bar_rvol":0.213793,"raw_accel":-0.367589,"smooth_accel":-0.148862,"accel_momentum":-0.143491,"rvol_3bar":[0.174903,0.297672,0.213793],"trend_3bar":"MIXED","projected_rvol":0.221623},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":302.0,"sell_vol":318.0,"unclassified_vol":0.0,"imbalance":-0.025806,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":7.062658},"context":{"vwap":8.080353,"price_vs_vwap_pct":0.052565,"ema9":8.088401,"ema20":8.093678,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.511243,"dist_to_hod_atr":10.805898,"atr":0.027226,"spread_atr":0.367298,"own_change_pct":-0.212288,"rel_strength_pct":{"SPY":-0.242053,"IWM":-0.194791}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.005517},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5aca3d6b7dbb","ts":"2026-09-21T17:22:52.804226+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.1815,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0804,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.531,"trend":"flat","recent_slope_pct":-0.002,"volatility":"high"},"price":8.075,"volume":{"bars":232,"last_bar_volume":1120.0,"baseline_avg":5238.7,"bar_rvol":0.213793,"raw_accel":-0.367589,"smooth_accel":-0.148862,"accel_momentum":-0.143491,"rvol_3bar":[0.174903,0.297672,0.213793],"trend_3bar":"MIXED","projected_rvol":0.202367},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":405.0,"sell_vol":108.0,"unclassified_vol":0.0,"imbalance":0.578947,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":2.870567},"context":{"vwap":8.080353,"price_vs_vwap_pct":-0.066242,"ema9":8.088401,"ema20":8.093678,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":11.158503,"atr":0.027226,"spread_atr":0.367298,"own_change_pct":-0.212288,"rel_strength_pct":{"SPY":-0.242053,"IWM":-0.194791}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.123775},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5554b110a165","ts":"2026-09-21T17:22:57.943657+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9329,"target":8.1815,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":119.6,"room_to_5d_high_atr":-0.62},"price":8.0869,"vwap":8.0804,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":4.0,"volume_pace":0.531,"trend":"flat","recent_slope_pct":0.0275,"volatility":"high"},"price":8.0869,"volume":{"bars":232,"last_bar_volume":1120.0,"baseline_avg":5238.7,"bar_rvol":0.213793,"raw_accel":-0.367589,"smooth_accel":-0.148862,"accel_momentum":-0.143491,"rvol_3bar":[0.174903,0.297672,0.213793],"trend_3bar":"MIXED","projected_rvol":0.186395},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":315.0,"sell_vol":108.0,"unclassified_vol":0.0,"imbalance":0.489362,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":8.009998},"context":{"vwap":8.080353,"price_vs_vwap_pct":0.081029,"ema9":8.088401,"ema20":8.093678,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.483792,"dist_to_hod_atr":10.721419,"atr":0.027226,"spread_atr":0.367298,"own_change_pct":-0.212288,"rel_strength_pct":{"SPY":-0.242053,"IWM":-0.194791}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.104622},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"29a738625a88","ts":"2026-09-21T17:23:13.472144+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.9188,"target":8.1754,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":118.9,"room_to_5d_high_atr":-0.6},"price":8.0728,"vwap":8.0804,"ext_from_open_pct":-1.43,"max_ext_allowed_pct":4.0,"volume_pace":0.53,"trend":"flat","recent_slope_pct":0.0067,"volatility":"high"},"price":8.0728,"volume":{"bars":233,"last_bar_volume":943.0,"baseline_avg":3715.75,"bar_rvol":0.253785,"raw_accel":-0.158036,"smooth_accel":-0.070771,"accel_momentum":0.078092,"rvol_3bar":[0.297672,0.213793,0.253785],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":415.0,"sell_vol":264.0,"unclassified_vol":0.0,"imbalance":0.222386,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":9.408359},"context":{"vwap":8.080353,"price_vs_vwap_pct":-0.093476,"ema9":8.088101,"ema20":8.093033,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.652074,"dist_to_hod_atr":11.511909,"atr":0.026581,"spread_atr":0.376206,"own_change_pct":0.0235,"rel_strength_pct":{"SPY":0.019618,"IWM":0.049751}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.056438},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"64822b7af01a","ts":"2026-09-21T17:23:18.611007+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9325,"target":8.1754,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":119.6,"room_to_5d_high_atr":-0.62},"price":8.0865,"vwap":8.0804,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":4.0,"volume_pace":0.53,"trend":"flat","recent_slope_pct":0.0406,"volatility":"high"},"price":8.0865,"volume":{"bars":233,"last_bar_volume":943.0,"baseline_avg":3715.75,"bar_rvol":0.253785,"raw_accel":-0.158036,"smooth_accel":-0.070771,"accel_momentum":0.078092,"rvol_3bar":[0.297672,0.213793,0.253785],"trend_3bar":"MIXED","projected_rvol":0.420801},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":439.0,"sell_vol":157.0,"unclassified_vol":0.0,"imbalance":0.473154,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":14.547222},"context":{"vwap":8.080353,"price_vs_vwap_pct":0.076071,"ema9":8.088101,"ema20":8.093033,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.488566,"dist_to_hod_atr":10.996507,"atr":0.026581,"spread_atr":0.376206,"own_change_pct":0.0235,"rel_strength_pct":{"SPY":0.019618,"IWM":0.049751}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.120079},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"93b99df5ab63","ts":"2026-09-21T17:23:28.784461+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.1754,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0804,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.53,"trend":"flat","recent_slope_pct":0.0121,"volatility":"high"},"price":8.075,"volume":{"bars":233,"last_bar_volume":943.0,"baseline_avg":3715.75,"bar_rvol":0.253785,"raw_accel":-0.158036,"smooth_accel":-0.070771,"accel_momentum":0.078092,"rvol_3bar":[0.297672,0.213793,0.253785],"trend_3bar":"MIXED","projected_rvol":0.277685},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":335.0,"sell_vol":160.0,"unclassified_vol":0.0,"imbalance":0.353535,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":1.344598},"context":{"vwap":8.080353,"price_vs_vwap_pct":-0.066249,"ema9":8.088101,"ema20":8.093033,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":11.429144,"atr":0.026581,"spread_atr":0.376206,"own_change_pct":0.0235,"rel_strength_pct":{"SPY":0.019618,"IWM":0.049751}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.089722},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"000bcb34a00e","ts":"2026-09-21T17:23:33.905289+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":10.7755,"target":11.05,"target_label":"ceiling","reward_risk":1.13,"pos_in_5d_range_pct":103.7,"room_to_5d_high_atr":-0.09},"price":10.9045,"vwap":10.8587,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.556,"trend":"flat","recent_slope_pct":-0.0044,"volatility":"medium"},"price":10.9045,"volume":{"bars":233,"last_bar_volume":60505.0,"baseline_avg":52714.8,"bar_rvol":1.14778,"raw_accel":-0.293529,"smooth_accel":1.455049,"accel_momentum":0.646606,"rvol_3bar":[2.026988,1.690349,1.14778],"trend_3bar":"DECELERATING","projected_rvol":1.07518},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":14135.0,"sell_vol":17884.0,"unclassified_vol":0.0,"imbalance":-0.117087,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.638258},"context":{"vwap":10.858894,"price_vs_vwap_pct":0.419992,"ema9":10.905204,"ema20":10.90808,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.93354,"dist_to_hod_atr":10.259777,"atr":0.020956,"spread_atr":0.477199,"own_change_pct":0.045872,"rel_strength_pct":{"SPY":0.041989,"IWM":0.072122}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.13439},"shadow":{"decision":"FAIL","failed":["imbalance","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b858145699fe","ts":"2026-09-21T17:24:25.542361+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3707,"ext_from_open_pct":3.18,"max_ext_allowed_pct":4.0,"volume_pace":1.275,"trend":"flat","recent_slope_pct":0.0153,"volatility":"unknown"},"price":6.49,"volume":{"bars":234,"last_bar_volume":4217.0,"baseline_avg":40542.1,"bar_rvol":0.104015,"raw_accel":-0.793142,"smooth_accel":-0.427266,"accel_momentum":-0.130806,"rvol_3bar":[0.257856,0.505807,0.104015],"trend_3bar":"MIXED","projected_rvol":0.521177},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":6659.0,"sell_vol":3566.0,"unclassified_vol":0.0,"imbalance":0.302494,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.1049},"context":{"vwap":6.370638,"price_vs_vwap_pct":1.873622,"ema9":6.484763,"ema20":6.481497,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.153846,"dist_to_hod_atr":0.633863,"atr":0.015776,"spread_atr":0.633863,"own_change_pct":-0.286215,"rel_strength_pct":{"SPY":-0.256456,"IWM":-0.266965}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.031464},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d524bf71d9d0","ts":"2026-09-21T17:24:40.967768+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6793,"target":10.02,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":130.9,"room_to_5d_high_atr":-0.72},"price":9.845,"vwap":9.8271,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":3.0,"volume_pace":0.91,"trend":"flat","recent_slope_pct":0.0955,"volatility":"high"},"price":9.845,"volume":{"bars":234,"last_bar_volume":22274.0,"baseline_avg":34485.4,"bar_rvol":0.645897,"raw_accel":0.598651,"smooth_accel":0.090106,"accel_momentum":-3.760669,"rvol_3bar":[0.36238,0.383203,0.645897],"trend_3bar":"ACCELERATING","projected_rvol":0.585735},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1701.0,"sell_vol":9117.0,"unclassified_vol":0.0,"imbalance":-0.685524,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":3.781323},"context":{"vwap":9.827122,"price_vs_vwap_pct":0.18192,"ema9":9.818178,"ema20":9.811318,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.717391,"dist_to_hod_atr":9.553883,"atr":0.028784,"spread_atr":0.347414,"own_change_pct":0.459418,"rel_strength_pct":{"SPY":0.489178,"IWM":0.478669}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.442778},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6d40213b2af5","ts":"2026-09-21T17:24:56.282165+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.22x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.76,"target":12.0,"target_label":"premarket_high","reward_risk":0.09,"pos_in_5d_range_pct":125.0,"room_to_5d_high_atr":-1.11},"price":11.98,"vwap":11.5966,"ext_from_open_pct":2.66,"max_ext_allowed_pct":3.0,"volume_pace":0.215,"trend":"flat","recent_slope_pct":0.2069,"volatility":"high"},"price":11.98,"volume":{"bars":234,"last_bar_volume":2792.0,"baseline_avg":3790.5,"bar_rvol":0.736578,"raw_accel":-0.43992,"smooth_accel":1.286934,"accel_momentum":-0.150124,"rvol_3bar":[4.806918,1.404225,0.736578],"trend_3bar":"DECELERATING","projected_rvol":10.548354},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":22796.0,"sell_vol":14608.0,"unclassified_vol":0.0,"imbalance":0.218907,"bid":11.97,"ask":11.99,"spread_pct":0.166945,"quote_size_imbalance":null,"quote_age_s":3.536269},"context":{"vwap":11.592028,"price_vs_vwap_pct":3.34689,"ema9":11.829015,"ema20":11.810366,"ema_stack":true,"ema_warm":true,"hod":11.98,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.03407,"spread_atr":0.587021,"own_change_pct":0.00507,"rel_strength_pct":{"SPY":0.034829,"IWM":0.02432}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.161242},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"acdaaa55bd95","ts":"2026-09-21T17:25:01.398421+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.22x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.6997,"target":12.0,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":122.9,"room_to_5d_high_atr":-1.02},"price":11.9042,"vwap":11.5969,"ext_from_open_pct":2.01,"max_ext_allowed_pct":3.0,"volume_pace":0.215,"trend":"flat","recent_slope_pct":0.2175,"volatility":"high"},"price":11.9042,"volume":{"bars":235,"last_bar_volume":39108.0,"baseline_avg":3621.05,"bar_rvol":10.800182,"raw_accel":13.007163,"smooth_accel":1.354256,"accel_momentum":0.067321,"rvol_3bar":[1.404225,0.736578,10.800182],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":23188.0,"sell_vol":16837.0,"unclassified_vol":0.0,"imbalance":0.158676,"bid":11.97,"ask":11.99,"spread_pct":0.166945,"quote_size_imbalance":null,"quote_age_s":1.393227},"context":{"vwap":11.59682,"price_vs_vwap_pct":2.650557,"ema9":11.859212,"ema20":11.826522,"ema_stack":true,"ema_warm":true,"hod":11.99,"dist_to_hod_pct":-0.715596,"dist_to_hod_atr":1.959818,"atr":0.04378,"spread_atr":0.456834,"own_change_pct":1.011804,"rel_strength_pct":{"SPY":1.044153,"IWM":1.032805}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":1.713728},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d834a07f7d6a","ts":"2026-09-21T17:25:06.595376+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.6782,"target":13.53,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":153.7,"room_to_5d_high_atr":-1.6},"price":13.07,"vwap":12.919,"ext_from_open_pct":0.46,"max_ext_allowed_pct":3.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.1258,"volatility":"high"},"price":13.07,"volume":{"bars":235,"last_bar_volume":4583.0,"baseline_avg":6154.75,"bar_rvol":0.744628,"raw_accel":0.132724,"smooth_accel":-0.421728,"accel_momentum":0.012941,"rvol_3bar":[0.244662,0.611955,0.744628],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":520.0,"sell_vol":5592.0,"unclassified_vol":0.0,"imbalance":-0.829843,"bid":13.04,"ask":13.1,"spread_pct":0.459067,"quote_size_imbalance":null,"quote_age_s":4.238334},"context":{"vwap":12.918915,"price_vs_vwap_pct":1.169489,"ema9":13.112423,"ema20":13.138088,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.289855,"dist_to_hod_atr":8.445392,"atr":0.086438,"spread_atr":0.694142,"own_change_pct":-0.114635,"rel_strength_pct":{"SPY":-0.082287,"IWM":-0.093634}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.617924},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4ed6664447d1","ts":"2026-09-21T17:25:11.810319+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.82 below VWAP $9.83","plan":{"state":"PASS","setup":"","stop":9.6563,"target":10.02,"target_label":"premarket_high","reward_risk":1.19,"pos_in_5d_range_pct":129.4,"room_to_5d_high_atr":-0.69},"price":9.822,"vwap":9.8271,"ext_from_open_pct":-1.68,"max_ext_allowed_pct":4.0,"volume_pace":0.908,"trend":"flat","recent_slope_pct":0.029,"volatility":"high"},"price":9.822,"volume":{"bars":235,"last_bar_volume":14824.0,"baseline_avg":31838.6,"bar_rvol":0.465598,"raw_accel":-0.334471,"smooth_accel":-0.054228,"accel_momentum":-0.144334,"rvol_3bar":[0.383203,0.645897,0.465598],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1467.0,"sell_vol":325.0,"unclassified_vol":0.0,"imbalance":0.637277,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":0.149594},"context":{"vwap":9.827138,"price_vs_vwap_pct":-0.052286,"ema9":9.823543,"ema20":9.814526,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.944664,"dist_to_hod_atr":10.185711,"atr":0.029257,"spread_atr":0.341802,"own_change_pct":0.271941,"rel_strength_pct":{"SPY":0.304289,"IWM":0.292942}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.296715},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3159f93d47d6","ts":"2026-09-21T17:25:11.810319+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4399,"target":7.775,"target_label":"range_20d_high","reward_risk":19.52,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.505,"vwap":6.3713,"ext_from_open_pct":3.42,"max_ext_allowed_pct":3.0,"volume_pace":1.277,"trend":"flat","recent_slope_pct":0.0653,"volatility":"unknown"},"price":6.505,"volume":{"bars":235,"last_bar_volume":87734.0,"baseline_avg":38762.05,"bar_rvol":2.263399,"raw_accel":8.053598,"smooth_accel":0.958831,"accel_momentum":1.386097,"rvol_3bar":[0.505807,0.104015,2.263399],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":11939.0,"sell_vol":3882.0,"unclassified_vol":0.0,"imbalance":0.50926,"bid":6.5,"ask":6.51,"spread_pct":0.153728,"quote_size_imbalance":null,"quote_age_s":0.81225},"context":{"vwap":6.371242,"price_vs_vwap_pct":2.099403,"ema9":6.48685,"ema20":6.482802,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.076805,"dist_to_hod_atr":0.297756,"atr":0.016792,"spread_atr":0.595512,"own_change_pct":0.135668,"rel_strength_pct":{"SPY":0.168017,"IWM":0.15667}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.152658},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1973a217c344","ts":"2026-09-21T17:25:17.012484+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9291,"target":8.16,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":119.4,"room_to_5d_high_atr":-0.61},"price":8.0831,"vwap":8.0804,"ext_from_open_pct":-1.31,"max_ext_allowed_pct":3.0,"volume_pace":0.527,"trend":"flat","recent_slope_pct":-0.0084,"volatility":"high"},"price":8.0831,"volume":{"bars":235,"last_bar_volume":643.0,"baseline_avg":2552.65,"bar_rvol":0.251895,"raw_accel":-0.644751,"smooth_accel":-0.135438,"accel_momentum":-0.00695,"rvol_3bar":[0.253785,0.712402,0.251895],"trend_3bar":"MIXED","projected_rvol":2.698326},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1303.0,"sell_vol":851.0,"unclassified_vol":0.0,"imbalance":0.209842,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":1.005073},"context":{"vwap":8.080353,"price_vs_vwap_pct":0.034,"ema9":8.085965,"ema20":8.09104,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.529145,"dist_to_hod_atr":11.959019,"atr":0.024726,"spread_atr":0.404431,"own_change_pct":0.110217,"rel_strength_pct":{"SPY":0.142565,"IWM":0.131218}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.052858},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ee0bbdbdeb37","ts":"2026-09-21T17:25:17.012484+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6843,"target":10.02,"target_label":"premarket_high","reward_risk":1.03,"pos_in_5d_range_pct":131.2,"room_to_5d_high_atr":-0.73},"price":9.85,"vwap":9.8271,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.908,"trend":"flat","recent_slope_pct":0.0859,"volatility":"high"},"price":9.85,"volume":{"bars":235,"last_bar_volume":14824.0,"baseline_avg":31838.6,"bar_rvol":0.465598,"raw_accel":-0.334471,"smooth_accel":-0.054228,"accel_momentum":-0.144334,"rvol_3bar":[0.383203,0.645897,0.465598],"trend_3bar":"MIXED","projected_rvol":0.184435},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2372.0,"sell_vol":325.0,"unclassified_vol":0.0,"imbalance":0.758991,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":0.358711},"context":{"vwap":9.827138,"price_vs_vwap_pct":0.232639,"ema9":9.823543,"ema20":9.814526,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.667984,"dist_to_hod_atr":9.228664,"atr":0.029257,"spread_atr":0.341802,"own_change_pct":0.271941,"rel_strength_pct":{"SPY":0.304289,"IWM":0.292942}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.353385},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9c1869bd731b","ts":"2026-09-21T17:25:17.012484+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4449,"target":7.775,"target_label":"range_20d_high","reward_risk":19.43,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.51,"vwap":6.3713,"ext_from_open_pct":3.5,"max_ext_allowed_pct":4.0,"volume_pace":1.277,"trend":"flat","recent_slope_pct":0.0807,"volatility":"unknown"},"price":6.51,"volume":{"bars":235,"last_bar_volume":87734.0,"baseline_avg":38762.05,"bar_rvol":2.263399,"raw_accel":8.053598,"smooth_accel":0.958831,"accel_momentum":1.386097,"rvol_3bar":[0.505807,0.104015,2.263399],"trend_3bar":"MIXED","projected_rvol":0.632356},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":7531.0,"sell_vol":3442.0,"unclassified_vol":0.0,"imbalance":0.372642,"bid":6.5,"ask":6.51,"spread_pct":0.153728,"quote_size_imbalance":null,"quote_age_s":1.040527},"context":{"vwap":6.371242,"price_vs_vwap_pct":2.177881,"ema9":6.48685,"ema20":6.482802,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.016792,"spread_atr":0.595512,"own_change_pct":0.135668,"rel_strength_pct":{"SPY":0.168017,"IWM":0.15667}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.843438},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d23a764be5dd","ts":"2026-09-21T17:25:37.896419+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.16,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0804,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.526,"trend":"flat","recent_slope_pct":-0.0285,"volatility":"high"},"price":8.075,"volume":{"bars":235,"last_bar_volume":643.0,"baseline_avg":2552.65,"bar_rvol":0.251895,"raw_accel":-0.644751,"smooth_accel":-0.135438,"accel_momentum":-0.00695,"rvol_3bar":[0.253785,0.712402,0.251895],"trend_3bar":"MIXED","projected_rvol":1.273979},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":190.0,"sell_vol":286.0,"unclassified_vol":0.0,"imbalance":-0.201681,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":2.297547},"context":{"vwap":8.080353,"price_vs_vwap_pct":-0.066243,"ema9":8.085965,"ema20":8.09104,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":12.286607,"atr":0.024726,"spread_atr":0.404431,"own_change_pct":0.110217,"rel_strength_pct":{"SPY":0.142565,"IWM":0.131218}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.050802},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"33e9bff000cd","ts":"2026-09-21T17:25:43.107418+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4449,"target":7.775,"target_label":"range_20d_high","reward_risk":19.43,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.51,"vwap":6.3713,"ext_from_open_pct":3.5,"max_ext_allowed_pct":3.0,"volume_pace":1.275,"trend":"flat","recent_slope_pct":0.0807,"volatility":"unknown"},"price":6.51,"volume":{"bars":235,"last_bar_volume":87734.0,"baseline_avg":38762.05,"bar_rvol":2.263399,"raw_accel":8.053598,"smooth_accel":0.958831,"accel_momentum":1.386097,"rvol_3bar":[0.505807,0.104015,2.263399],"trend_3bar":"MIXED","projected_rvol":0.48282},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2935.0,"sell_vol":4681.0,"unclassified_vol":0.0,"imbalance":-0.229254,"bid":6.5,"ask":6.51,"spread_pct":0.153728,"quote_size_imbalance":null,"quote_age_s":0.09629},"context":{"vwap":6.371242,"price_vs_vwap_pct":2.177881,"ema9":6.48685,"ema20":6.482802,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.016792,"spread_atr":0.595512,"own_change_pct":0.135668,"rel_strength_pct":{"SPY":0.168017,"IWM":0.15667}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.518894},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a03922d18866","ts":"2026-09-21T17:26:03.774300+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.02,"target":11.05,"target_label":"ceiling","reward_risk":0.2,"pos_in_5d_range_pct":101.8,"room_to_5d_high_atr":-0.04},"price":10.8812,"vwap":10.8586,"ext_from_open_pct":-0.9,"max_ext_allowed_pct":3.0,"volume_pace":0.552,"trend":"flat","recent_slope_pct":-0.0432,"volatility":"medium"},"price":10.8812,"volume":{"bars":236,"last_bar_volume":49045.0,"baseline_avg":60831.6,"bar_rvol":0.806242,"raw_accel":-0.458072,"smooth_accel":-0.069415,"accel_momentum":-0.126812,"rvol_3bar":[1.648744,1.582443,0.806242],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":5683.0,"sell_vol":14096.0,"unclassified_vol":0.0,"imbalance":-0.42535,"bid":10.88,"ask":10.89,"spread_pct":0.09187,"quote_size_imbalance":null,"quote_age_s":0.706165},"context":{"vwap":10.858564,"price_vs_vwap_pct":0.208467,"ema9":10.897945,"ema20":10.903452,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-2.143082,"dist_to_hod_atr":3.218497,"atr":0.074041,"spread_atr":0.135061,"own_change_pct":-0.029361,"rel_strength_pct":{"SPY":0.010748,"IWM":-0.01536}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.342935},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"1b24352dda80","ts":"2026-09-21T17:26:08.945357+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.22x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.7755,"target":12.1101,"target_label":"clear air (typical 60-min move)","reward_risk":0.64,"pos_in_5d_range_pct":125.0,"room_to_5d_high_atr":-1.11},"price":11.98,"vwap":11.5985,"ext_from_open_pct":2.66,"max_ext_allowed_pct":3.0,"volume_pace":0.215,"trend":"flat","recent_slope_pct":0.3686,"volatility":"high"},"price":11.98,"volume":{"bars":236,"last_bar_volume":12551.0,"baseline_avg":5318.45,"bar_rvol":2.359898,"raw_accel":-0.679068,"smooth_accel":1.395767,"accel_momentum":0.041512,"rvol_3bar":[0.736578,10.800182,2.359898],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":27.0,"sell_vol":800.0,"unclassified_vol":0.0,"imbalance":-0.934704,"bid":11.96,"ask":11.99,"spread_pct":0.250522,"quote_size_imbalance":null,"quote_age_s":8.940104},"context":{"vwap":11.598448,"price_vs_vwap_pct":3.289677,"ema9":11.88237,"ema20":11.840662,"ema_stack":true,"ema_warm":true,"hod":11.99,"dist_to_hod_pct":-0.083403,"dist_to_hod_atr":0.213762,"atr":0.046781,"spread_atr":0.641285,"own_change_pct":1.054852,"rel_strength_pct":{"SPY":1.094962,"IWM":1.068853}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-2.205806},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c41a49256bf4","ts":"2026-09-21T17:26:08.945357+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4435,"target":7.775,"target_label":"range_20d_high","reward_risk":19.46,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.5086,"vwap":6.3714,"ext_from_open_pct":3.48,"max_ext_allowed_pct":4.0,"volume_pace":1.273,"trend":"flat","recent_slope_pct":0.1173,"volatility":"unknown"},"price":6.5086,"volume":{"bars":236,"last_bar_volume":22853.0,"baseline_avg":42646.25,"bar_rvol":0.535874,"raw_accel":-0.739519,"smooth_accel":1.398195,"accel_momentum":0.439364,"rvol_3bar":[0.104015,2.263399,0.535874],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":3007.0,"sell_vol":8201.0,"unclassified_vol":0.0,"imbalance":-0.463419,"bid":6.5,"ask":6.51,"spread_pct":0.153728,"quote_size_imbalance":null,"quote_age_s":7.615876},"context":{"vwap":6.371408,"price_vs_vwap_pct":2.153251,"ema9":6.49048,"ema20":6.484916,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.021505,"dist_to_hod_atr":0.083121,"atr":0.016843,"spread_atr":0.593725,"own_change_pct":0.384253,"rel_strength_pct":{"SPY":0.424363,"IWM":0.398254}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.248334},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7c583a983d93","ts":"2026-09-21T17:26:24.568490+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.81 below VWAP $9.83","plan":{"state":"PASS","setup":"","stop":9.6493,"target":10.02,"target_label":"premarket_high","reward_risk":1.24,"pos_in_5d_range_pct":128.9,"room_to_5d_high_atr":-0.68},"price":9.815,"vwap":9.8271,"ext_from_open_pct":-1.75,"max_ext_allowed_pct":3.0,"volume_pace":0.921,"trend":"flat","recent_slope_pct":0.0193,"volatility":"high"},"price":9.815,"volume":{"bars":236,"last_bar_volume":50474.0,"baseline_avg":29641.4,"bar_rvol":1.702821,"raw_accel":2.404884,"smooth_accel":0.33896,"accel_momentum":0.393188,"rvol_3bar":[0.645897,0.465598,1.702821],"trend_3bar":"MIXED","projected_rvol":9.555583},"flow":{"window_s":30,"trades":563,"trade_rate":18.766667,"buy_vol":75079.0,"sell_vol":69061.0,"unclassified_vol":0.0,"imbalance":0.041751,"bid":9.81,"ask":9.82,"spread_pct":0.101885,"quote_size_imbalance":null,"quote_age_s":0.295553},"context":{"vwap":9.827219,"price_vs_vwap_pct":-0.124339,"ema9":9.828834,"ema20":9.817905,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-3.013834,"dist_to_hod_atr":10.263517,"atr":0.029717,"spread_atr":0.336509,"own_change_pct":0.452802,"rel_strength_pct":{"SPY":0.492912,"IWM":0.466803}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.071095},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"14bda1d1d9a0","ts":"2026-09-21T17:26:24.568490+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.7024,"target":5.83,"target_label":"ceiling","reward_risk":1.22,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7588,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":1.104,"trend":"flat","recent_slope_pct":-0.0347,"volatility":"unknown"},"price":5.76,"volume":{"bars":236,"last_bar_volume":35554.0,"baseline_avg":68622.05,"bar_rvol":0.518113,"raw_accel":1.072453,"smooth_accel":-0.447492,"accel_momentum":0.328357,"rvol_3bar":[0.362419,0.112599,0.518113],"trend_3bar":"MIXED","projected_rvol":0.851418},"flow":{"window_s":30,"trades":219,"trade_rate":7.3,"buy_vol":16624.0,"sell_vol":8116.0,"unclassified_vol":0.0,"imbalance":0.343897,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.028575},"context":{"vwap":5.758768,"price_vs_vwap_pct":0.021398,"ema9":5.761735,"ema20":5.755669,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":5.746257,"atr":0.019143,"spread_atr":0.522387,"own_change_pct":-0.08673,"rel_strength_pct":{"SPY":-0.046621,"IWM":-0.07273}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.178177},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"37b5643d0d1a","ts":"2026-09-21T17:26:29.766135+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7059,"target":5.83,"target_label":"ceiling","reward_risk":1.15,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7635,"vwap":5.7588,"ext_from_open_pct":4.03,"max_ext_allowed_pct":4.0,"volume_pace":1.104,"trend":"flat","recent_slope_pct":-0.0225,"volatility":"unknown"},"price":5.7635,"volume":{"bars":236,"last_bar_volume":35554.0,"baseline_avg":68622.05,"bar_rvol":0.518113,"raw_accel":1.072453,"smooth_accel":-0.447492,"accel_momentum":0.328357,"rvol_3bar":[0.362419,0.112599,0.518113],"trend_3bar":"MIXED","projected_rvol":0.715642},"flow":{"window_s":30,"trades":212,"trade_rate":7.066667,"buy_vol":16753.0,"sell_vol":7610.0,"unclassified_vol":0.0,"imbalance":0.375282,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":2.076775},"context":{"vwap":5.758768,"price_vs_vwap_pct":0.082175,"ema9":5.761735,"ema20":5.755669,"ema_stack":true,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.81431,"dist_to_hod_atr":5.563421,"atr":0.019143,"spread_atr":0.522387,"own_change_pct":-0.08673,"rel_strength_pct":{"SPY":-0.046621,"IWM":-0.07273}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.194439},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"99f74bece880","ts":"2026-09-21T17:26:29.766135+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4301,"target":7.775,"target_label":"range_20d_high","reward_risk":19.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4951,"vwap":6.3715,"ext_from_open_pct":3.26,"max_ext_allowed_pct":3.0,"volume_pace":1.272,"trend":"flat","recent_slope_pct":0.0758,"volatility":"unknown"},"price":6.4951,"volume":{"bars":236,"last_bar_volume":22853.0,"baseline_avg":42646.25,"bar_rvol":0.535874,"raw_accel":-0.739519,"smooth_accel":1.398195,"accel_momentum":0.439364,"rvol_3bar":[0.104015,2.263399,0.535874],"trend_3bar":"MIXED","projected_rvol":0.502956},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":6174.0,"sell_vol":4467.0,"unclassified_vol":0.0,"imbalance":0.160417,"bid":6.5,"ask":6.51,"spread_pct":0.153728,"quote_size_imbalance":null,"quote_age_s":0.31304},"context":{"vwap":6.371408,"price_vs_vwap_pct":1.941367,"ema9":6.49048,"ema20":6.484916,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.228879,"dist_to_hod_atr":0.88465,"atr":0.016843,"spread_atr":0.593725,"own_change_pct":0.384253,"rel_strength_pct":{"SPY":0.424363,"IWM":0.398254}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.085963},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bc5c2fe51807","ts":"2026-09-21T17:27:21.836333+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4336,"target":7.775,"target_label":"range_20d_high","reward_risk":19.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4986,"vwap":6.3718,"ext_from_open_pct":3.32,"max_ext_allowed_pct":4.0,"volume_pace":1.27,"trend":"flat","recent_slope_pct":0.057,"volatility":"unknown"},"price":6.4986,"volume":{"bars":237,"last_bar_volume":33472.0,"baseline_avg":43354.0,"bar_rvol":0.772063,"raw_accel":0.464665,"smooth_accel":3.089565,"accel_momentum":1.691369,"rvol_3bar":[2.263399,0.535874,0.772063],"trend_3bar":"MIXED","projected_rvol":1.170412},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":16141.0,"sell_vol":17244.0,"unclassified_vol":0.0,"imbalance":-0.033039,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.786557},"context":{"vwap":6.371642,"price_vs_vwap_pct":1.992551,"ema9":6.491384,"ema20":6.485876,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.175115,"dist_to_hod_atr":0.667904,"atr":0.017068,"spread_atr":0.58588,"own_change_pct":0.078584,"rel_strength_pct":{"SPY":0.134215,"IWM":0.113584}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.025508},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4d0f8003d7ac","ts":"2026-09-21T17:27:37.484975+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3719,"ext_from_open_pct":3.18,"max_ext_allowed_pct":3.0,"volume_pace":1.27,"trend":"flat","recent_slope_pct":0.0305,"volatility":"unknown"},"price":6.49,"volume":{"bars":237,"last_bar_volume":33472.0,"baseline_avg":43354.0,"bar_rvol":0.772063,"raw_accel":0.464665,"smooth_accel":3.089565,"accel_momentum":1.691369,"rvol_3bar":[2.263399,0.535874,0.772063],"trend_3bar":"MIXED","projected_rvol":1.516057},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":5262.0,"sell_vol":25404.0,"unclassified_vol":0.0,"imbalance":-0.656819,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.106896},"context":{"vwap":6.371642,"price_vs_vwap_pct":1.857578,"ema9":6.491384,"ema20":6.485876,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.30722,"dist_to_hod_atr":1.171761,"atr":0.017068,"spread_atr":0.58588,"own_change_pct":0.078584,"rel_strength_pct":{"SPY":0.134215,"IWM":0.113584}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.507105},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8c7c7f2fcad7","ts":"2026-09-21T17:28:03.557167+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.6032,"target":13.53,"target_label":"ceiling","reward_risk":1.37,"pos_in_5d_range_pct":152.1,"room_to_5d_high_atr":-1.56},"price":12.995,"vwap":12.9202,"ext_from_open_pct":-0.12,"max_ext_allowed_pct":4.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":-0.1456,"volatility":"high"},"price":12.995,"volume":{"bars":238,"last_bar_volume":55864.0,"baseline_avg":5746.7,"bar_rvol":9.721057,"raw_accel":16.06292,"smooth_accel":5.141672,"accel_momentum":5.012267,"rvol_3bar":[0.773308,0.568201,9.721057],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":12888.0,"sell_vol":3290.0,"unclassified_vol":0.0,"imbalance":0.593275,"bid":12.97,"ask":13.04,"spread_pct":0.538255,"quote_size_imbalance":null,"quote_age_s":1.349892},"context":{"vwap":12.919954,"price_vs_vwap_pct":0.580852,"ema9":13.084521,"ema20":13.11705,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.833333,"dist_to_hod_atr":9.078491,"atr":0.088671,"spread_atr":0.789434,"own_change_pct":-0.799391,"rel_strength_pct":{"SPY":-0.785802,"IWM":-0.783637}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":5.767258},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e96f6d731fab","ts":"2026-09-21T17:28:03.557167+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 490.9s, plan says PASS; stop 8.64, target 9.94 (range_20d_high), R:R 11.77; target 1.20 away > ~0.12 reachable in 147 min","plan":{"state":"PASS","setup":"","stop":8.6381,"target":9.94,"target_label":"range_20d_high","reward_risk":11.77,"pos_in_5d_range_pct":130.4,"room_to_5d_high_atr":-0.96},"price":8.74,"vwap":8.6345,"ext_from_open_pct":1.39,"max_ext_allowed_pct":3.0,"volume_pace":0.771,"trend":"flat","recent_slope_pct":0.0958,"volatility":"medium"},"price":8.74,"volume":{"bars":238,"last_bar_volume":5375.0,"baseline_avg":1011.1,"bar_rvol":5.315992,"raw_accel":6.869693,"smooth_accel":2.044465,"accel_momentum":2.366156,"rvol_3bar":[0.58612,0.650352,5.315992],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":253.0,"sell_vol":130.0,"unclassified_vol":0.0,"imbalance":0.321149,"bid":8.73,"ask":8.74,"spread_pct":0.114482,"quote_size_imbalance":null,"quote_age_s":2.352713},"context":{"vwap":8.634431,"price_vs_vwap_pct":1.222653,"ema9":8.709641,"ema20":8.706478,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.327816,"dist_to_hod_atr":14.871376,"atr":0.014007,"spread_atr":0.71394,"own_change_pct":0.141279,"rel_strength_pct":{"SPY":0.154867,"IWM":0.157033}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.707225},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"67ee29aed541","ts":"2026-09-21T17:28:14.000440+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 501.4s, plan says WATCH; stop 8.63, target 8.76 (premarket_high), R:R 0.25; R:R 0.25 < 2.0 at 8.73; pullback: buy 8.71-8.72 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.6331,"target":8.76,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":130.0,"room_to_5d_high_atr":-0.94},"price":8.735,"vwap":8.6345,"ext_from_open_pct":1.33,"max_ext_allowed_pct":3.0,"volume_pace":0.77,"trend":"flat","recent_slope_pct":0.0843,"volatility":"medium"},"price":8.735,"volume":{"bars":238,"last_bar_volume":5375.0,"baseline_avg":1011.1,"bar_rvol":5.315992,"raw_accel":6.869693,"smooth_accel":2.044465,"accel_momentum":2.366156,"rvol_3bar":[0.58612,0.650352,5.315992],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":221.0,"sell_vol":121.0,"unclassified_vol":0.0,"imbalance":0.292398,"bid":8.73,"ask":8.74,"spread_pct":0.114482,"quote_size_imbalance":null,"quote_age_s":1.550976},"context":{"vwap":8.634431,"price_vs_vwap_pct":1.164746,"ema9":8.709641,"ema20":8.706478,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.383693,"dist_to_hod_atr":15.228346,"atr":0.014007,"spread_atr":0.71394,"own_change_pct":0.141279,"rel_strength_pct":{"SPY":0.154867,"IWM":0.157033}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":1.554384},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"743ceda07006","ts":"2026-09-21T17:28:55.500899+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 542.9s, plan says PASS; stop 8.64, target 9.94 (range_20d_high), R:R 11.80; target 1.20 away > ~0.12 reachable in 146 min","plan":{"state":"PASS","setup":"","stop":8.6358,"target":9.94,"target_label":"range_20d_high","reward_risk":11.8,"pos_in_5d_range_pct":130.2,"room_to_5d_high_atr":-0.95},"price":8.7377,"vwap":8.6346,"ext_from_open_pct":1.37,"max_ext_allowed_pct":3.0,"volume_pace":0.769,"trend":"flat","recent_slope_pct":0.0905,"volatility":"medium"},"price":8.7377,"volume":{"bars":238,"last_bar_volume":5375.0,"baseline_avg":1011.1,"bar_rvol":5.315992,"raw_accel":6.869693,"smooth_accel":2.044465,"accel_momentum":2.366156,"rvol_3bar":[0.58612,0.650352,5.315992],"trend_3bar":"ACCELERATING","projected_rvol":1.599516},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":531.0,"sell_vol":645.0,"unclassified_vol":0.0,"imbalance":-0.096939,"bid":8.73,"ask":8.74,"spread_pct":0.114482,"quote_size_imbalance":null,"quote_age_s":2.680463},"context":{"vwap":8.634431,"price_vs_vwap_pct":1.196016,"ema9":8.709641,"ema20":8.706478,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.35352,"dist_to_hod_atr":15.035582,"atr":0.014007,"spread_atr":0.71394,"own_change_pct":0.141279,"rel_strength_pct":{"SPY":0.154867,"IWM":0.157033}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.515326},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f9ad26a03769","ts":"2026-09-21T17:29:00.684903+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.2674,"target":6.94,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":112.2,"room_to_5d_high_atr":-0.33},"price":6.635,"vwap":6.5883,"ext_from_open_pct":3.83,"max_ext_allowed_pct":4.0,"volume_pace":0.555,"trend":"flat","recent_slope_pct":-0.091,"volatility":"high"},"price":6.635,"volume":{"bars":236,"last_bar_volume":1091.0,"baseline_avg":3741.8,"bar_rvol":0.291571,"raw_accel":-0.850895,"smooth_accel":-0.253632,"accel_momentum":-0.206252,"rvol_3bar":[0.005004,2.160957,0.291571],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":1820.0,"sell_vol":22.0,"unclassified_vol":0.0,"imbalance":0.976113,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":0.704084},"context":{"vwap":6.588259,"price_vs_vwap_pct":0.709462,"ema9":6.672065,"ema20":6.692086,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.394813,"dist_to_hod_atr":12.388474,"atr":0.02462,"spread_atr":1.218538,"own_change_pct":0.246668,"rel_strength_pct":{"SPY":0.241491,"IWM":0.271174}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.284606},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0a636507e072","ts":"2026-09-21T17:29:00.684903+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 548.1s, plan says WATCH; stop 8.63, target 8.76 (premarket_high), R:R 0.25; R:R 0.25 < 2.0 at 8.73; pullback: buy 8.71-8.72 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.6331,"target":8.76,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":130.0,"room_to_5d_high_atr":-0.94},"price":8.735,"vwap":8.6346,"ext_from_open_pct":1.33,"max_ext_allowed_pct":3.0,"volume_pace":0.769,"trend":"flat","recent_slope_pct":0.0843,"volatility":"medium"},"price":8.735,"volume":{"bars":238,"last_bar_volume":5375.0,"baseline_avg":1011.1,"bar_rvol":5.315992,"raw_accel":6.869693,"smooth_accel":2.044465,"accel_momentum":2.366156,"rvol_3bar":[0.58612,0.650352,5.315992],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":531.0,"sell_vol":595.0,"unclassified_vol":0.0,"imbalance":-0.056838,"bid":8.73,"ask":8.74,"spread_pct":0.114482,"quote_size_imbalance":null,"quote_age_s":7.864467},"context":{"vwap":8.634431,"price_vs_vwap_pct":1.164746,"ema9":8.709641,"ema20":8.706478,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.383693,"dist_to_hod_atr":15.228346,"atr":0.014007,"spread_atr":0.71394,"own_change_pct":0.141279,"rel_strength_pct":{"SPY":0.136102,"IWM":0.165784}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.302152},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"09eae754e2a4","ts":"2026-09-21T17:29:05.896570+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.5482,"target":13.53,"target_label":"ceiling","reward_risk":1.51,"pos_in_5d_range_pct":150.9,"room_to_5d_high_atr":-1.52},"price":12.94,"vwap":12.9203,"ext_from_open_pct":-0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.3036,"volatility":"high"},"price":12.94,"volume":{"bars":239,"last_bar_volume":35411.0,"baseline_avg":8065.15,"bar_rvol":4.390619,"raw_accel":-0.366121,"smooth_accel":6.176939,"accel_momentum":1.035267,"rvol_3bar":[0.568201,9.721057,4.390619],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":376.0,"sell_vol":1500.0,"unclassified_vol":0.0,"imbalance":-0.599147,"bid":12.91,"ask":12.97,"spread_pct":0.463679,"quote_size_imbalance":null,"quote_age_s":0.149449},"context":{"vwap":12.920326,"price_vs_vwap_pct":0.152268,"ema9":13.055617,"ema20":13.100188,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.231884,"dist_to_hod_atr":9.387002,"atr":0.091616,"spread_atr":0.654907,"own_change_pct":-1.33435,"rel_strength_pct":{"SPY":-1.339527,"IWM":-1.309844}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.630627},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"716f2d706296","ts":"2026-09-21T17:29:05.896570+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 553.3s, plan says PASS; stop 8.63, target 8.76 (premarket_high), R:R 0.25; R:R 0.25 < 2.0 at 8.73; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.6331,"target":8.76,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":130.0,"room_to_5d_high_atr":-0.94},"price":8.735,"vwap":8.6346,"ext_from_open_pct":1.33,"max_ext_allowed_pct":3.0,"volume_pace":0.769,"trend":"flat","recent_slope_pct":0.1032,"volatility":"medium"},"price":8.735,"volume":{"bars":239,"last_bar_volume":1498.0,"baseline_avg":1235.25,"bar_rvol":1.21271,"raw_accel":-0.721302,"smooth_accel":3.846697,"accel_momentum":1.802232,"rvol_3bar":[0.650352,5.315992,1.21271],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":544.0,"sell_vol":696.0,"unclassified_vol":0.0,"imbalance":-0.122581,"bid":8.73,"ask":8.74,"spread_pct":0.114482,"quote_size_imbalance":null,"quote_age_s":4.869829},"context":{"vwap":8.634594,"price_vs_vwap_pct":1.162837,"ema9":8.714713,"ema20":8.709195,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.383693,"dist_to_hod_atr":14.667854,"atr":0.014542,"spread_atr":0.687663,"own_change_pct":0.287026,"rel_strength_pct":{"SPY":0.281849,"IWM":0.311532}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.148655},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e919f0863b73","ts":"2026-09-21T17:29:16.339860+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":6.2674,"target":6.94,"target_label":"ceiling","reward_risk":0.91,"pos_in_5d_range_pct":111.4,"room_to_5d_high_atr":-0.31},"price":6.62,"vwap":6.5883,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.554,"trend":"flat","recent_slope_pct":-0.2048,"volatility":"high"},"price":6.62,"volume":{"bars":237,"last_bar_volume":2767.0,"baseline_avg":3615.3,"bar_rvol":0.765358,"raw_accel":1.536205,"smooth_accel":0.469621,"accel_momentum":0.723253,"rvol_3bar":[2.160957,0.291571,0.765358],"trend_3bar":"MIXED","projected_rvol":0.917163},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":1806.0,"sell_vol":406.0,"unclassified_vol":0.0,"imbalance":0.632911,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":3.607654},"context":{"vwap":6.588326,"price_vs_vwap_pct":0.480758,"ema9":6.664652,"ema20":6.686649,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.610951,"dist_to_hod_atr":12.288936,"atr":0.02604,"spread_atr":1.152088,"own_change_pct":-0.300526,"rel_strength_pct":{"SPY":-0.305703,"IWM":-0.27602}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.484404},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f6dc93d7191c","ts":"2026-09-21T17:29:37.154340+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.7155,"target":11.99,"target_label":"ceiling","reward_risk":0.34,"pos_in_5d_range_pct":123.4,"room_to_5d_high_atr":-1.04},"price":11.92,"vwap":11.6014,"ext_from_open_pct":2.14,"max_ext_allowed_pct":3.0,"volume_pace":0.214,"trend":"flat","recent_slope_pct":-0.0878,"volatility":"high"},"price":11.92,"volume":{"bars":239,"last_bar_volume":9826.0,"baseline_avg":5892.85,"bar_rvol":1.667444,"raw_accel":5.669778,"smooth_accel":-0.767773,"accel_momentum":-0.095596,"rvol_3bar":[0.312869,0.168523,1.667444],"trend_3bar":"MIXED","projected_rvol":2.90347},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":1811.0,"sell_vol":8777.0,"unclassified_vol":0.0,"imbalance":-0.657915,"bid":11.91,"ask":11.93,"spread_pct":0.167785,"quote_size_imbalance":null,"quote_age_s":3.20414},"context":{"vwap":11.600096,"price_vs_vwap_pct":2.757767,"ema9":11.919653,"ema20":11.871229,"ema_stack":true,"ema_warm":true,"hod":11.99,"dist_to_hod_pct":-0.58382,"dist_to_hod_atr":1.651117,"atr":0.042396,"spread_atr":0.471748,"own_change_pct":1.093312,"rel_strength_pct":{"SPY":1.088135,"IWM":1.117817}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.097036},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4812e7300c6b","ts":"2026-09-21T17:29:37.154340+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0447,"target":12.29,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":66.1,"room_to_5d_high_atr":0.54},"price":12.22,"vwap":12.1789,"ext_from_open_pct":-0.65,"max_ext_allowed_pct":3.0,"volume_pace":0.667,"trend":"flat","recent_slope_pct":-0.0477,"volatility":"medium"},"price":12.22,"volume":{"bars":239,"last_bar_volume":6375.0,"baseline_avg":18633.35,"bar_rvol":0.342128,"raw_accel":0.368514,"smooth_accel":-0.722572,"accel_momentum":-3.497354,"rvol_3bar":[0.798563,0.120006,0.342128],"trend_3bar":"MIXED","projected_rvol":0.604498},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2424.0,"sell_vol":4529.0,"unclassified_vol":0.0,"imbalance":-0.302747,"bid":12.22,"ask":12.23,"spread_pct":0.0818,"quote_size_imbalance":null,"quote_age_s":0.247771},"context":{"vwap":12.178837,"price_vs_vwap_pct":0.337988,"ema9":12.24483,"ema20":12.243757,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.161729,"dist_to_hod_atr":13.426195,"atr":0.02011,"spread_atr":0.497266,"own_change_pct":-0.176232,"rel_strength_pct":{"SPY":-0.181409,"IWM":-0.151726}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.103578},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"892948c1f4b5","ts":"2026-09-21T17:29:37.154340+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1232,"target":5.2,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.1779,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":-0.0573,"volatility":"unknown"},"price":5.175,"volume":{"bars":239,"last_bar_volume":39066.0,"baseline_avg":15939.35,"bar_rvol":2.450916,"raw_accel":0.730039,"smooth_accel":0.177183,"accel_momentum":0.327687,"rvol_3bar":[1.470581,1.44629,2.450916],"trend_3bar":"MIXED","projected_rvol":3.22048},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":5672.0,"sell_vol":24532.0,"unclassified_vol":0.0,"imbalance":-0.624421,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.166936},"context":{"vwap":5.17795,"price_vs_vwap_pct":-0.056963,"ema9":5.185711,"ema20":5.18497,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":10.860151,"atr":0.01151,"spread_atr":0.868812,"own_change_pct":-0.009645,"rel_strength_pct":{"SPY":-0.014823,"IWM":0.01486}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.530402},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2a848225a2e8","ts":"2026-09-21T17:29:42.344245+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1282,"target":5.2,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.18,"vwap":5.178,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.787,"trend":"flat","recent_slope_pct":-0.038,"volatility":"unknown"},"price":5.18,"volume":{"bars":239,"last_bar_volume":39066.0,"baseline_avg":15939.35,"bar_rvol":2.450916,"raw_accel":0.730039,"smooth_accel":0.177183,"accel_momentum":0.327687,"rvol_3bar":[1.470581,1.44629,2.450916],"trend_3bar":"MIXED","projected_rvol":5.835721},"flow":{"window_s":30,"trades":175,"trade_rate":5.833333,"buy_vol":35280.0,"sell_vol":18797.0,"unclassified_vol":0.0,"imbalance":0.304806,"bid":5.18,"ask":5.19,"spread_pct":0.192864,"quote_size_imbalance":null,"quote_age_s":0.109677},"context":{"vwap":5.17795,"price_vs_vwap_pct":0.0396,"ema9":5.185711,"ema20":5.18497,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.264151,"dist_to_hod_atr":10.425745,"atr":0.01151,"spread_atr":0.868812,"own_change_pct":-0.009645,"rel_strength_pct":{"SPY":-0.014823,"IWM":0.01486}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.747054},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cc4b4c14d480","ts":"2026-09-21T17:29:57.802814+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3726,"ext_from_open_pct":3.18,"max_ext_allowed_pct":4.0,"volume_pace":1.265,"trend":"flat","recent_slope_pct":-0.0528,"volatility":"unknown"},"price":6.49,"volume":{"bars":239,"last_bar_volume":53590.0,"baseline_avg":44670.45,"bar_rvol":1.199675,"raw_accel":-0.276691,"smooth_accel":0.403714,"accel_momentum":0.242788,"rvol_3bar":[0.772063,1.650911,1.199675],"trend_3bar":"MIXED","projected_rvol":0.45798},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":10528.0,"sell_vol":7648.0,"unclassified_vol":0.0,"imbalance":0.158451,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.461318},"context":{"vwap":6.372497,"price_vs_vwap_pct":1.843913,"ema9":6.491826,"ema20":6.487122,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.30722,"dist_to_hod_atr":1.208851,"atr":0.016545,"spread_atr":0.604426,"own_change_pct":0.165123,"rel_strength_pct":{"SPY":0.159946,"IWM":0.189629}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.190089},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"576f73e96366","ts":"2026-09-21T17:30:02.921315+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.5382,"target":13.53,"target_label":"ceiling","reward_risk":1.53,"pos_in_5d_range_pct":150.7,"room_to_5d_high_atr":-1.52},"price":12.93,"vwap":12.9203,"ext_from_open_pct":-0.61,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":-0.3159,"volatility":"high"},"price":12.93,"volume":{"bars":240,"last_bar_volume":7496.0,"baseline_avg":9345.0,"bar_rvol":0.80214,"raw_accel":-0.788314,"smooth_accel":6.964119,"accel_momentum":0.787179,"rvol_3bar":[9.721057,4.390619,0.80214],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":423.0,"sell_vol":3559.0,"unclassified_vol":0.0,"imbalance":-0.787544,"bid":12.91,"ask":12.97,"spread_pct":0.463679,"quote_size_imbalance":null,"quote_age_s":0.568088},"context":{"vwap":12.920335,"price_vs_vwap_pct":0.074803,"ema9":13.026493,"ema20":13.082075,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.304348,"dist_to_hod_atr":9.658935,"atr":0.090072,"spread_atr":0.666133,"own_change_pct":-1.224178,"rel_strength_pct":{"SPY":-1.252006,"IWM":-1.192669}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.631721},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"07ad30f16037","ts":"2026-09-21T17:30:02.921315+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.2674,"target":6.94,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":112.5,"room_to_5d_high_atr":-0.34},"price":6.64,"vwap":6.5885,"ext_from_open_pct":3.91,"max_ext_allowed_pct":4.0,"volume_pace":0.554,"trend":"flat","recent_slope_pct":-0.1032,"volatility":"high"},"price":6.64,"volume":{"bars":238,"last_bar_volume":6360.0,"baseline_avg":3625.85,"bar_rvol":1.754071,"raw_accel":1.298518,"smooth_accel":-0.089224,"accel_momentum":-0.558845,"rvol_3bar":[0.291571,0.765358,1.754071],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":35.0,"sell_vol":251.0,"unclassified_vol":0.0,"imbalance":-0.755245,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":2.754922},"context":{"vwap":6.588456,"price_vs_vwap_pct":0.782333,"ema9":6.659002,"ema20":6.681863,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.322767,"dist_to_hod_atr":11.714963,"atr":0.025608,"spread_atr":1.171496,"own_change_pct":-0.354354,"rel_strength_pct":{"SPY":-0.382183,"IWM":-0.322846}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.324753},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ef98c75451d8","ts":"2026-09-21T17:30:02.921315+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.7549,"target":12.0965,"target_label":"clear air (typical 60-min move)","reward_risk":0.67,"pos_in_5d_range_pct":124.4,"room_to_5d_high_atr":-1.09},"price":11.9594,"vwap":11.6016,"ext_from_open_pct":2.48,"max_ext_allowed_pct":4.0,"volume_pace":0.214,"trend":"flat","recent_slope_pct":-0.0177,"volatility":"high"},"price":11.9594,"volume":{"bars":240,"last_bar_volume":11800.0,"baseline_avg":6231.3,"bar_rvol":1.893666,"raw_accel":0.200896,"smooth_accel":-0.577123,"accel_momentum":0.19065,"rvol_3bar":[0.168523,1.667444,1.893666],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1043.0,"sell_vol":2635.0,"unclassified_vol":0.0,"imbalance":-0.432844,"bid":11.92,"ask":11.95,"spread_pct":0.251362,"quote_size_imbalance":null,"quote_age_s":2.915859},"context":{"vwap":11.601531,"price_vs_vwap_pct":3.084669,"ema9":11.921723,"ema20":11.876826,"ema_stack":true,"ema_warm":true,"hod":11.99,"dist_to_hod_pct":-0.255213,"dist_to_hod_atr":0.712644,"atr":0.042939,"spread_atr":0.69867,"own_change_pct":-0.417362,"rel_strength_pct":{"SPY":-0.445191,"IWM":-0.385854}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.819662},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8c5cf92d7ba6","ts":"2026-09-21T17:30:02.921315+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4301,"target":7.775,"target_label":"range_20d_high","reward_risk":19.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.495,"vwap":6.3726,"ext_from_open_pct":3.26,"max_ext_allowed_pct":3.0,"volume_pace":1.265,"trend":"flat","recent_slope_pct":-0.0022,"volatility":"unknown"},"price":6.495,"volume":{"bars":240,"last_bar_volume":19810.0,"baseline_avg":44702.75,"bar_rvol":0.443149,"raw_accel":-0.630341,"smooth_accel":0.023817,"accel_momentum":-0.379898,"rvol_3bar":[1.650911,1.199675,0.443149],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":10729.0,"sell_vol":8149.0,"unclassified_vol":0.0,"imbalance":0.136667,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":1.147141},"context":{"vwap":6.372629,"price_vs_vwap_pct":1.920261,"ema9":6.492181,"ema20":6.487739,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.230415,"dist_to_hod_atr":0.933001,"atr":0.016077,"spread_atr":0.622,"own_change_pct":-0.024634,"rel_strength_pct":{"SPY":-0.052462,"IWM":0.006875}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.060564},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"2e8894a6d574","ts":"2026-09-21T17:30:02.921315+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.94,"target_label":"ceiling","reward_risk":1.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7856,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":0.484,"trend":"flat","recent_slope_pct":-0.0733,"volatility":"unknown"},"price":8.835,"volume":{"bars":240,"last_bar_volume":102423.0,"baseline_avg":50973.2,"bar_rvol":2.00935,"raw_accel":0.554478,"smooth_accel":-0.089013,"accel_momentum":0.109313,"rvol_3bar":[1.833719,1.370244,2.00935],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":139,"trade_rate":4.633333,"buy_vol":38227.0,"sell_vol":19697.0,"unclassified_vol":0.0,"imbalance":0.319902,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":2.356469},"context":{"vwap":8.785582,"price_vs_vwap_pct":0.562494,"ema9":8.857335,"ema20":8.865904,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":4.061198,"atr":0.025854,"spread_atr":0.386781,"own_change_pct":-0.450704,"rel_strength_pct":{"SPY":-0.478533,"IWM":-0.419196}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.642795},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"70df0fcba6c5","ts":"2026-09-21T17:30:08.385167+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4857,"target":6.94,"target_label":"ceiling","reward_risk":1.78,"pos_in_5d_range_pct":113.0,"room_to_5d_high_atr":-0.35},"price":6.649,"vwap":6.5885,"ext_from_open_pct":4.05,"max_ext_allowed_pct":3.0,"volume_pace":0.554,"trend":"flat","recent_slope_pct":-0.0761,"volatility":"high"},"price":6.649,"volume":{"bars":238,"last_bar_volume":6360.0,"baseline_avg":3625.85,"bar_rvol":1.754071,"raw_accel":1.298518,"smooth_accel":-0.089224,"accel_momentum":-0.558845,"rvol_3bar":[0.291571,0.765358,1.754071],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":30.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-0.538462,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":2.054633},"context":{"vwap":6.588456,"price_vs_vwap_pct":0.918936,"ema9":6.659002,"ema20":6.681863,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.193084,"dist_to_hod_atr":11.363514,"atr":0.025608,"spread_atr":1.171496,"own_change_pct":-0.354354,"rel_strength_pct":{"SPY":-0.382183,"IWM":-0.322846}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.9445},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c12977ad11e7","ts":"2026-09-21T17:30:08.385167+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0725,"target":12.29,"target_label":"prev_day_high","reward_risk":0.24,"pos_in_5d_range_pct":68.6,"room_to_5d_high_atr":0.5},"price":12.2478,"vwap":12.1789,"ext_from_open_pct":-0.42,"max_ext_allowed_pct":3.0,"volume_pace":0.665,"trend":"flat","recent_slope_pct":0.0065,"volatility":"medium"},"price":12.2478,"volume":{"bars":240,"last_bar_volume":7996.0,"baseline_avg":16303.65,"bar_rvol":0.490442,"raw_accel":0.254275,"smooth_accel":-0.828437,"accel_momentum":-0.105865,"rvol_3bar":[0.120006,0.342128,0.490442],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":188.0,"sell_vol":878.0,"unclassified_vol":0.0,"imbalance":-0.64728,"bid":12.22,"ask":12.23,"spread_pct":0.0818,"quote_size_imbalance":null,"quote_age_s":2.597426},"context":{"vwap":12.178943,"price_vs_vwap_pct":0.565375,"ema9":12.245504,"ema20":12.24418,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.939151,"dist_to_hod_atr":11.655067,"atr":0.020781,"spread_atr":0.481217,"own_change_pct":0.010615,"rel_strength_pct":{"SPY":-0.017214,"IWM":0.042123}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.317453},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8e5b1c6ceca7","ts":"2026-09-21T17:30:18.735625+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0397,"target":12.29,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":65.6,"room_to_5d_high_atr":0.55},"price":12.215,"vwap":12.179,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.665,"trend":"flat","recent_slope_pct":-0.0471,"volatility":"medium"},"price":12.215,"volume":{"bars":240,"last_bar_volume":7996.0,"baseline_avg":16303.65,"bar_rvol":0.490442,"raw_accel":0.254275,"smooth_accel":-0.828437,"accel_momentum":-0.105865,"rvol_3bar":[0.120006,0.342128,0.490442],"trend_3bar":"ACCELERATING","projected_rvol":0.433511},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1153.0,"sell_vol":1949.0,"unclassified_vol":0.0,"imbalance":-0.256609,"bid":12.21,"ask":12.22,"spread_pct":0.081867,"quote_size_imbalance":null,"quote_age_s":0.990507},"context":{"vwap":12.178943,"price_vs_vwap_pct":0.296058,"ema9":12.245504,"ema20":12.24418,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.201761,"dist_to_hod_atr":13.233458,"atr":0.020781,"spread_atr":0.481217,"own_change_pct":0.010615,"rel_strength_pct":{"SPY":-0.017214,"IWM":0.042123}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.125852},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"421092ef17f4","ts":"2026-09-21T17:30:18.735625+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.94,"target_label":"ceiling","reward_risk":1.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7857,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.484,"trend":"flat","recent_slope_pct":-0.0733,"volatility":"unknown"},"price":8.835,"volume":{"bars":240,"last_bar_volume":102423.0,"baseline_avg":50973.2,"bar_rvol":2.00935,"raw_accel":0.554478,"smooth_accel":-0.089013,"accel_momentum":0.109313,"rvol_3bar":[1.833719,1.370244,2.00935],"trend_3bar":"MIXED","projected_rvol":2.063968},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":36860.0,"sell_vol":25453.0,"unclassified_vol":0.0,"imbalance":0.18306,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.38691},"context":{"vwap":8.785582,"price_vs_vwap_pct":0.562494,"ema9":8.857335,"ema20":8.865904,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":4.061198,"atr":0.025854,"spread_atr":0.386781,"own_change_pct":-0.450704,"rel_strength_pct":{"SPY":-0.478533,"IWM":-0.419196}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.367831},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d22239d3547c","ts":"2026-09-21T17:31:15.866255+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6131,"target":8.76,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":128.4,"room_to_5d_high_atr":-0.9},"price":8.715,"vwap":8.6349,"ext_from_open_pct":1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.764,"trend":"flat","recent_slope_pct":-0.0138,"volatility":"medium"},"price":8.715,"volume":{"bars":241,"last_bar_volume":603.0,"baseline_avg":1285.7,"bar_rvol":0.469005,"raw_accel":-0.648806,"smooth_accel":-0.430999,"accel_momentum":-4.086825,"rvol_3bar":[1.21271,1.369,0.469005],"trend_3bar":"MIXED","projected_rvol":2.832458},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":201.0,"sell_vol":918.0,"unclassified_vol":0.0,"imbalance":-0.640751,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":0.931634},"context":{"vwap":8.634825,"price_vs_vwap_pct":0.928503,"ema9":8.720376,"ema20":8.713055,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.607199,"dist_to_hod_atr":15.93991,"atr":0.014636,"spread_atr":0.683237,"own_change_pct":0.287191,"rel_strength_pct":{"SPY":0.261304,"IWM":0.3327}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.300515},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e9b01992eda2","ts":"2026-09-21T17:31:46.578307+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.92 below VWAP $12.92","plan":{"state":"PASS","setup":"","stop":12.5282,"target":13.53,"target_label":"ceiling","reward_risk":1.56,"pos_in_5d_range_pct":150.5,"room_to_5d_high_atr":-1.51},"price":12.92,"vwap":12.9204,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.588,"trend":"flat","recent_slope_pct":-0.1544,"volatility":"high"},"price":12.92,"volume":{"bars":241,"last_bar_volume":11583.0,"baseline_avg":9653.85,"bar_rvol":1.199832,"raw_accel":0.545224,"smooth_accel":-0.144356,"accel_momentum":-7.108474,"rvol_3bar":[4.390619,0.80214,1.199832],"trend_3bar":"MIXED","projected_rvol":0.468888},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1284.0,"sell_vol":1870.0,"unclassified_vol":0.0,"imbalance":-0.185796,"bid":12.9,"ask":12.96,"spread_pct":0.464037,"quote_size_imbalance":null,"quote_age_s":0.653419},"context":{"vwap":12.92042,"price_vs_vwap_pct":-0.003252,"ema9":13.013195,"ema20":13.070448,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.376812,"dist_to_hod_atr":9.770516,"atr":0.090067,"spread_atr":0.666172,"own_change_pct":-0.841622,"rel_strength_pct":{"SPY":-0.867509,"IWM":-0.796113}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.222924},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2e526118976f","ts":"2026-09-21T17:32:12.206910+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6131,"target":8.76,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":128.4,"room_to_5d_high_atr":-0.9},"price":8.715,"vwap":8.6349,"ext_from_open_pct":1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.762,"trend":"flat","recent_slope_pct":-0.0642,"volatility":"medium"},"price":8.715,"volume":{"bars":242,"last_bar_volume":1196.0,"baseline_avg":1295.3,"bar_rvol":0.923338,"raw_accel":0.983416,"smooth_accel":-0.534674,"accel_momentum":-0.103676,"rvol_3bar":[1.369,0.469005,0.923338],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":24.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":0.24442},"context":{"vwap":8.634933,"price_vs_vwap_pct":0.927246,"ema9":8.719301,"ema20":8.71324,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.607199,"dist_to_hod_atr":15.911661,"atr":0.014662,"spread_atr":0.682026,"own_change_pct":0.114877,"rel_strength_pct":{"SPY":0.100637,"IWM":0.153391}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.923338},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"abffe81fa52d","ts":"2026-09-21T17:32:32.639488+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1186,"target":5.2,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1703,"vwap":5.178,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":-0.0502,"volatility":"unknown"},"price":5.1703,"volume":{"bars":242,"last_bar_volume":64459.0,"baseline_avg":19561.7,"bar_rvol":3.295164,"raw_accel":0.652075,"smooth_accel":1.102383,"accel_momentum":-0.598416,"rvol_3bar":[4.615872,2.182904,3.295164],"trend_3bar":"MIXED","projected_rvol":2.856486},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":8098.0,"sell_vol":22299.0,"unclassified_vol":0.0,"imbalance":-0.467184,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":2.274761},"context":{"vwap":5.178049,"price_vs_vwap_pct":-0.149653,"ema9":5.183724,"ema20":5.184112,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.44717,"dist_to_hod_atr":11.284912,"atr":0.011493,"spread_atr":0.870078,"own_change_pct":-0.154202,"rel_strength_pct":{"SPY":-0.168441,"IWM":-0.115688}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.539449},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"683de407424f","ts":"2026-09-21T17:32:38.089702+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1282,"target":5.2,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.18,"vwap":5.1781,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":-0.0127,"volatility":"unknown"},"price":5.18,"volume":{"bars":242,"last_bar_volume":64459.0,"baseline_avg":19561.7,"bar_rvol":3.295164,"raw_accel":0.652075,"smooth_accel":1.102383,"accel_momentum":-0.598416,"rvol_3bar":[4.615872,2.182904,3.295164],"trend_3bar":"MIXED","projected_rvol":2.6415},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":7267.0,"sell_vol":21311.0,"unclassified_vol":0.0,"imbalance":-0.491427,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":7.724975},"context":{"vwap":5.178049,"price_vs_vwap_pct":0.037676,"ema9":5.183724,"ema20":5.184112,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.264151,"dist_to_hod_atr":10.440936,"atr":0.011493,"spread_atr":0.870078,"own_change_pct":-0.154202,"rel_strength_pct":{"SPY":-0.168441,"IWM":-0.115688}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.619332},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4453885d5473","ts":"2026-09-21T17:32:43.269733+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":10.7645,"target":11.05,"target_label":"ceiling","reward_risk":1.21,"pos_in_5d_range_pct":102.8,"room_to_5d_high_atr":-0.06},"price":10.8935,"vwap":10.8574,"ext_from_open_pct":-0.79,"max_ext_allowed_pct":4.0,"volume_pace":0.543,"trend":"flat","recent_slope_pct":0.015,"volatility":"medium"},"price":10.8935,"volume":{"bars":242,"last_bar_volume":63003.0,"baseline_avg":59937.25,"bar_rvol":1.051149,"raw_accel":1.238913,"smooth_accel":-0.424061,"accel_momentum":0.057165,"rvol_3bar":[0.617129,0.468986,1.051149],"trend_3bar":"MIXED","projected_rvol":4.627702},"flow":{"window_s":30,"trades":279,"trade_rate":9.3,"buy_vol":133310.0,"sell_vol":25537.0,"unclassified_vol":0.0,"imbalance":0.67847,"bid":10.89,"ask":10.9,"spread_pct":0.091785,"quote_size_imbalance":null,"quote_age_s":0.832835},"context":{"vwap":10.858737,"price_vs_vwap_pct":0.320136,"ema9":10.888235,"ema20":10.894929,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-2.032465,"dist_to_hod_atr":4.313525,"atr":0.052393,"spread_atr":0.190864,"own_change_pct":0.051471,"rel_strength_pct":{"SPY":0.037231,"IWM":0.089985}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.713174},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1cee9aa181a4","ts":"2026-09-21T17:32:53.619993+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1192,"target":5.2,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1709,"vwap":5.178,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":4.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":-0.0479,"volatility":"unknown"},"price":5.1709,"volume":{"bars":242,"last_bar_volume":64459.0,"baseline_avg":19561.7,"bar_rvol":3.295164,"raw_accel":0.652075,"smooth_accel":1.102383,"accel_momentum":-0.598416,"rvol_3bar":[4.615872,2.182904,3.295164],"trend_3bar":"MIXED","projected_rvol":2.267122},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":11868.0,"sell_vol":11539.0,"unclassified_vol":0.0,"imbalance":0.014056,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":1.144682},"context":{"vwap":5.178049,"price_vs_vwap_pct":-0.138066,"ema9":5.183724,"ema20":5.184112,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.435849,"dist_to_hod_atr":11.232707,"atr":0.011493,"spread_atr":0.870078,"own_change_pct":-0.154202,"rel_strength_pct":{"SPY":-0.168441,"IWM":-0.115688}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.046316},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c94dc0fed371","ts":"2026-09-21T17:32:58.769499+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1289,"target":5.2,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1807,"vwap":5.1781,"ext_from_open_pct":-0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.01,"volatility":"unknown"},"price":5.1807,"volume":{"bars":242,"last_bar_volume":64459.0,"baseline_avg":19561.7,"bar_rvol":3.295164,"raw_accel":0.652075,"smooth_accel":1.102383,"accel_momentum":-0.598416,"rvol_3bar":[4.615872,2.182904,3.295164],"trend_3bar":"MIXED","projected_rvol":2.09248},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":12028.0,"sell_vol":9681.0,"unclassified_vol":0.0,"imbalance":0.108112,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":1.272959},"context":{"vwap":5.178049,"price_vs_vwap_pct":0.051195,"ema9":5.183724,"ema20":5.184112,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.250943,"dist_to_hod_atr":10.380031,"atr":0.011493,"spread_atr":0.870078,"own_change_pct":-0.154202,"rel_strength_pct":{"SPY":-0.168441,"IWM":-0.115688}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.356246},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cf13a1cc1315","ts":"2026-09-21T17:33:03.912961+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.0297,"target":12.29,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":64.7,"room_to_5d_high_atr":0.56},"price":12.205,"vwap":12.1791,"ext_from_open_pct":-0.77,"max_ext_allowed_pct":4.0,"volume_pace":0.659,"trend":"flat","recent_slope_pct":-0.0584,"volatility":"medium"},"price":12.205,"volume":{"bars":243,"last_bar_volume":1374.0,"baseline_avg":11292.5,"bar_rvol":0.121674,"raw_accel":-0.819969,"smooth_accel":-0.157497,"accel_momentum":-0.040272,"rvol_3bar":[0.419097,0.672266,0.121674],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":135.0,"sell_vol":139.0,"unclassified_vol":0.0,"imbalance":-0.014599,"bid":12.2,"ask":12.21,"spread_pct":0.081934,"quote_size_imbalance":null,"quote_age_s":0.897868},"context":{"vwap":12.179065,"price_vs_vwap_pct":0.212948,"ema9":12.230665,"ema20":12.236489,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.281825,"dist_to_hod_atr":10.767302,"atr":0.026469,"spread_atr":0.3778,"own_change_pct":-0.249,"rel_strength_pct":{"SPY":-0.237998,"IWM":-0.213985}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.001776},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fb8ba39ade77","ts":"2026-09-21T17:33:03.912961+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1232,"target":5.2,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.178,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.0427,"volatility":"unknown"},"price":5.175,"volume":{"bars":243,"last_bar_volume":40293.0,"baseline_avg":22536.5,"bar_rvol":1.7879,"raw_accel":-0.374905,"smooth_accel":0.08045,"accel_momentum":-1.021933,"rvol_3bar":[2.182904,3.295164,1.7879],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":6153.0,"sell_vol":4063.0,"unclassified_vol":0.0,"imbalance":0.204581,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.490781},"context":{"vwap":5.178042,"price_vs_vwap_pct":-0.058756,"ema9":5.181559,"ema20":5.183044,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":10.472026,"atr":0.011937,"spread_atr":0.837762,"own_change_pct":-0.200644,"rel_strength_pct":{"SPY":-0.189643,"IWM":-0.165629}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.36577},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ac2a09e634c8","ts":"2026-09-21T17:33:14.198345+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1287,"target":5.2,"target_label":"premarket_high","reward_risk":0.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1805,"vwap":5.178,"ext_from_open_pct":-0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.0214,"volatility":"unknown"},"price":5.1805,"volume":{"bars":243,"last_bar_volume":40293.0,"baseline_avg":22536.5,"bar_rvol":1.7879,"raw_accel":-0.374905,"smooth_accel":0.08045,"accel_momentum":-1.021933,"rvol_3bar":[2.182904,3.295164,1.7879],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":2090.0,"sell_vol":4296.0,"unclassified_vol":0.0,"imbalance":-0.345443,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":3.467568},"context":{"vwap":5.178042,"price_vs_vwap_pct":0.047462,"ema9":5.181559,"ema20":5.183044,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.254717,"dist_to_hod_atr":10.011257,"atr":0.011937,"spread_atr":0.837762,"own_change_pct":-0.200644,"rel_strength_pct":{"SPY":-0.189643,"IWM":-0.165629}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.617618},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b9cf47b23aa5","ts":"2026-09-21T17:33:24.437025+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1216,"target":5.2,"target_label":"premarket_high","reward_risk":0.52,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1733,"vwap":5.178,"ext_from_open_pct":-0.51,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":-0.0492,"volatility":"unknown"},"price":5.1733,"volume":{"bars":243,"last_bar_volume":40293.0,"baseline_avg":22536.5,"bar_rvol":1.7879,"raw_accel":-0.374905,"smooth_accel":0.08045,"accel_momentum":-1.021933,"rvol_3bar":[2.182904,3.295164,1.7879],"trend_3bar":"MIXED","projected_rvol":1.46131},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":536.0,"sell_vol":13537.0,"unclassified_vol":0.0,"imbalance":-0.923826,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":1.464244},"context":{"vwap":5.178042,"price_vs_vwap_pct":-0.091587,"ema9":5.181559,"ema20":5.183044,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.390566,"dist_to_hod_atr":10.614446,"atr":0.011937,"spread_atr":0.837762,"own_change_pct":-0.200644,"rel_strength_pct":{"SPY":-0.189643,"IWM":-0.165629}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.651708},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"eb20e11215fe","ts":"2026-09-21T17:33:29.612807+00:00","symbol":"QS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.127,"target":5.2,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.1788,"vwap":5.178,"ext_from_open_pct":-0.41,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.028,"volatility":"unknown"},"price":5.1788,"volume":{"bars":243,"last_bar_volume":40293.0,"baseline_avg":22536.5,"bar_rvol":1.7879,"raw_accel":-0.374905,"smooth_accel":0.08045,"accel_momentum":-1.021933,"rvol_3bar":[2.182904,3.295164,1.7879],"trend_3bar":"MIXED","projected_rvol":1.310999},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":920.0,"sell_vol":13860.0,"unclassified_vol":0.0,"imbalance":-0.875507,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":1.61015},"context":{"vwap":5.178042,"price_vs_vwap_pct":0.014631,"ema9":5.181559,"ema20":5.183044,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.286792,"dist_to_hod_atr":10.153676,"atr":0.011937,"spread_atr":0.837762,"own_change_pct":-0.200644,"rel_strength_pct":{"SPY":-0.189643,"IWM":-0.165629}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.565319},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6052418226c0","ts":"2026-09-21T17:33:34.765129+00:00","symbol":"QS","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.17 below VWAP $5.18","plan":{"state":"PASS","setup":"","stop":5.1232,"target":5.2,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.175,"vwap":5.178,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":-0.0427,"volatility":"unknown"},"price":5.175,"volume":{"bars":243,"last_bar_volume":40293.0,"baseline_avg":22536.5,"bar_rvol":1.7879,"raw_accel":-0.374905,"smooth_accel":0.08045,"accel_momentum":-1.021933,"rvol_3bar":[2.182904,3.295164,1.7879],"trend_3bar":"MIXED","projected_rvol":1.417437},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":898.0,"sell_vol":17289.0,"unclassified_vol":0.0,"imbalance":-0.901248,"bid":5.17,"ask":5.18,"spread_pct":0.193237,"quote_size_imbalance":null,"quote_age_s":0.424889},"context":{"vwap":5.178042,"price_vs_vwap_pct":-0.058756,"ema9":5.181559,"ema20":5.183044,"ema_stack":false,"ema_warm":true,"hod":5.3,"dist_to_hod_pct":-2.358491,"dist_to_hod_atr":10.472026,"atr":0.011937,"spread_atr":0.837762,"own_change_pct":-0.200644,"rel_strength_pct":{"SPY":-0.189643,"IWM":-0.165629}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.611341},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"caa246cdfc39","ts":"2026-09-21T17:33:39.903936+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4567,"target":6.94,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":111.4,"room_to_5d_high_atr":-0.31},"price":6.62,"vwap":6.5887,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.554,"trend":"flat","recent_slope_pct":-0.0201,"volatility":"high"},"price":6.62,"volume":{"bars":241,"last_bar_volume":1031.0,"baseline_avg":5441.1,"bar_rvol":0.189484,"raw_accel":-0.571666,"smooth_accel":2.138579,"accel_momentum":-0.208088,"rvol_3bar":[7.309396,0.450041,0.189484],"trend_3bar":"DECELERATING","projected_rvol":0.091193},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":155.0,"sell_vol":151.0,"unclassified_vol":0.0,"imbalance":0.013072,"bid":6.61,"ask":6.63,"spread_pct":0.302115,"quote_size_imbalance":null,"quote_age_s":3.981611},"context":{"vwap":6.588691,"price_vs_vwap_pct":0.4752,"ema9":6.636673,"ema20":6.663867,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.610951,"dist_to_hod_atr":11.182373,"atr":0.028616,"spread_atr":0.698898,"own_change_pct":-0.675169,"rel_strength_pct":{"SPY":-0.664167,"IWM":-0.640154}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.002477},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"417561ee85ee","ts":"2026-09-21T17:33:39.903936+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.28,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8164,"vwap":8.7863,"ext_from_open_pct":3.48,"max_ext_allowed_pct":4.0,"volume_pace":0.485,"trend":"flat","recent_slope_pct":-0.0479,"volatility":"unknown"},"price":8.8164,"volume":{"bars":243,"last_bar_volume":34196.0,"baseline_avg":65863.5,"bar_rvol":0.519195,"raw_accel":-0.73683,"smooth_accel":0.122212,"accel_momentum":-0.46441,"rvol_3bar":[2.16268,2.17546,0.519195],"trend_3bar":"MIXED","projected_rvol":1.459927},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":29860.0,"sell_vol":19471.0,"unclassified_vol":0.0,"imbalance":0.210598,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":5.330892},"context":{"vwap":8.786168,"price_vs_vwap_pct":0.344088,"ema9":8.835675,"ema20":8.852225,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.38255,"dist_to_hod_atr":4.043063,"atr":0.030571,"spread_atr":0.327109,"own_change_pct":-0.449728,"rel_strength_pct":{"SPY":-0.438726,"IWM":-0.414712}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.109341},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0e1e81d34d48","ts":"2026-09-21T17:33:45.026197+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6081,"target":8.76,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":128.1,"room_to_5d_high_atr":-0.88},"price":8.71,"vwap":8.635,"ext_from_open_pct":1.04,"max_ext_allowed_pct":3.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":-0.0596,"volatility":"medium"},"price":8.71,"volume":{"bars":243,"last_bar_volume":248.0,"baseline_avg":1185.05,"bar_rvol":0.209274,"raw_accel":-0.792642,"smooth_accel":-0.7617,"accel_momentum":-0.227025,"rvol_3bar":[0.469005,0.923338,0.209274],"trend_3bar":"MIXED","projected_rvol":0.259753},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":126.0,"sell_vol":97.0,"unclassified_vol":0.0,"imbalance":0.130045,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":1.135594},"context":{"vwap":8.634956,"price_vs_vwap_pct":0.869072,"ema9":8.719441,"ema20":8.713884,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.663076,"dist_to_hod_atr":16.29731,"atr":0.014622,"spread_atr":0.683899,"own_change_pct":0.017205,"rel_strength_pct":{"SPY":0.028207,"IWM":0.05222}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.027215},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0f99aed8400e","ts":"2026-09-21T17:33:45.026197+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.24,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.83,"vwap":8.7863,"ext_from_open_pct":3.64,"max_ext_allowed_pct":3.0,"volume_pace":0.485,"trend":"flat","recent_slope_pct":-0.017,"volatility":"unknown"},"price":8.83,"volume":{"bars":243,"last_bar_volume":34196.0,"baseline_avg":65863.5,"bar_rvol":0.519195,"raw_accel":-0.73683,"smooth_accel":0.122212,"accel_momentum":-0.46441,"rvol_3bar":[2.16268,2.17546,0.519195],"trend_3bar":"MIXED","projected_rvol":1.453738},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":26032.0,"sell_vol":26045.0,"unclassified_vol":0.0,"imbalance":-0.00025,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":4.541028},"context":{"vwap":8.786168,"price_vs_vwap_pct":0.498877,"ema9":8.835675,"ema20":8.852225,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.230425,"dist_to_hod_atr":3.598195,"atr":0.030571,"spread_atr":0.327109,"own_change_pct":-0.449728,"rel_strength_pct":{"SPY":-0.438726,"IWM":-0.414712}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.00013},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"30b4848fab39","ts":"2026-09-21T17:34:00.429279+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4567,"target":6.94,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":111.4,"room_to_5d_high_atr":-0.31},"price":6.62,"vwap":6.5887,"ext_from_open_pct":3.6,"max_ext_allowed_pct":3.0,"volume_pace":0.553,"trend":"flat","recent_slope_pct":-0.0201,"volatility":"high"},"price":6.62,"volume":{"bars":241,"last_bar_volume":1031.0,"baseline_avg":5441.1,"bar_rvol":0.189484,"raw_accel":-0.571666,"smooth_accel":2.138579,"accel_momentum":-0.208088,"rvol_3bar":[7.309396,0.450041,0.189484],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":152.0,"sell_vol":1069.0,"unclassified_vol":0.0,"imbalance":-0.751024,"bid":6.61,"ask":6.63,"spread_pct":0.302115,"quote_size_imbalance":null,"quote_age_s":3.84141},"context":{"vwap":6.588691,"price_vs_vwap_pct":0.4752,"ema9":6.636673,"ema20":6.663867,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.610951,"dist_to_hod_atr":11.182373,"atr":0.028616,"spread_atr":0.698898,"own_change_pct":-0.675169,"rel_strength_pct":{"SPY":-0.641519,"IWM":-0.640152}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.142307},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"de0797b98d53","ts":"2026-09-21T17:34:05.619948+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.5732,"target":13.53,"target_label":"ceiling","reward_risk":1.44,"pos_in_5d_range_pct":151.4,"room_to_5d_high_atr":-1.54},"price":12.965,"vwap":12.9204,"ext_from_open_pct":-0.35,"max_ext_allowed_pct":4.0,"volume_pace":0.584,"trend":"flat","recent_slope_pct":0.0565,"volatility":"high"},"price":12.965,"volume":{"bars":244,"last_bar_volume":5616.0,"baseline_avg":9649.95,"bar_rvol":0.581972,"raw_accel":-0.287219,"smooth_accel":-0.653276,"accel_momentum":0.095031,"rvol_3bar":[0.549605,0.831399,0.581972],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":5.0,"sell_vol":2447.0,"unclassified_vol":0.0,"imbalance":-0.995922,"bid":12.92,"ask":12.96,"spread_pct":0.309119,"quote_size_imbalance":null,"quote_age_s":41.768897},"context":{"vwap":12.920429,"price_vs_vwap_pct":0.344968,"ema9":12.971199,"ema20":13.032578,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.050725,"dist_to_hod_atr":9.606104,"atr":0.086924,"spread_atr":0.460173,"own_change_pct":0.193199,"rel_strength_pct":{"SPY":0.226849,"IWM":0.228216}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.579598},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e4c3b401d041","ts":"2026-09-21T17:34:05.619948+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6131,"target":8.76,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":128.4,"room_to_5d_high_atr":-0.9},"price":8.715,"vwap":8.635,"ext_from_open_pct":1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":-0.0315,"volatility":"medium"},"price":8.715,"volume":{"bars":244,"last_bar_volume":273.0,"baseline_avg":1166.9,"bar_rvol":0.233953,"raw_accel":-0.064187,"smooth_accel":-0.550288,"accel_momentum":0.211412,"rvol_3bar":[0.923338,0.209274,0.233953],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":42.0,"sell_vol":552.0,"unclassified_vol":0.0,"imbalance":-0.858586,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":2.985241},"context":{"vwap":8.634981,"price_vs_vwap_pct":0.926689,"ema9":8.719053,"ema20":8.714228,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.607199,"dist_to_hod_atr":15.711451,"atr":0.014849,"spread_atr":0.673444,"own_change_pct":-0.200343,"rel_strength_pct":{"SPY":-0.166694,"IWM":-0.165327}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.200869},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"135b680c3867","ts":"2026-09-21T17:34:10.761387+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.931,"target":8.16,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.62},"price":8.085,"vwap":8.0803,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":4.0,"volume_pace":0.511,"trend":"flat","recent_slope_pct":0.021,"volatility":"high"},"price":8.085,"volume":{"bars":244,"last_bar_volume":216.0,"baseline_avg":1641.5,"bar_rvol":0.131587,"raw_accel":-0.879127,"smooth_accel":1.600505,"accel_momentum":-3.887375,"rvol_3bar":[6.843777,1.114298,0.131587],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":3.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.2,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":1.417251},"context":{"vwap":8.080328,"price_vs_vwap_pct":0.05782,"ema9":8.081159,"ema20":8.084151,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.506469,"dist_to_hod_atr":14.942412,"atr":0.019662,"spread_atr":0.508591,"own_change_pct":0.183282,"rel_strength_pct":{"SPY":0.216931,"IWM":0.218298}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.026317},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"3d8378a480d5","ts":"2026-09-21T17:34:21.063347+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.9209,"target":8.16,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.0749,"vwap":8.0803,"ext_from_open_pct":-1.41,"max_ext_allowed_pct":3.0,"volume_pace":0.511,"trend":"flat","recent_slope_pct":-0.004,"volatility":"high"},"price":8.0749,"volume":{"bars":244,"last_bar_volume":216.0,"baseline_avg":1641.5,"bar_rvol":0.131587,"raw_accel":-0.879127,"smooth_accel":1.600505,"accel_momentum":-3.887375,"rvol_3bar":[6.843777,1.114298,0.131587],"trend_3bar":"DECELERATING","projected_rvol":0.508453},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":4.0,"sell_vol":292.0,"unclassified_vol":0.0,"imbalance":-0.972973,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":11.719211},"context":{"vwap":8.080328,"price_vs_vwap_pct":-0.067175,"ema9":8.081159,"ema20":8.084151,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.627011,"dist_to_hod_atr":15.456089,"atr":0.019662,"spread_atr":0.508591,"own_change_pct":0.183282,"rel_strength_pct":{"SPY":0.216931,"IWM":0.218298}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.128031},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"41e352e04612","ts":"2026-09-21T17:34:21.063347+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4284,"target":7.775,"target_label":"range_20d_high","reward_risk":19.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4933,"vwap":6.3737,"ext_from_open_pct":3.23,"max_ext_allowed_pct":4.0,"volume_pace":1.254,"trend":"flat","recent_slope_pct":-0.0068,"volatility":"unknown"},"price":6.4933,"volume":{"bars":244,"last_bar_volume":43492.0,"baseline_avg":40499.95,"bar_rvol":1.073878,"raw_accel":0.294983,"smooth_accel":0.782274,"accel_momentum":0.995339,"rvol_3bar":[1.803272,0.80233,1.073878],"trend_3bar":"MIXED","projected_rvol":0.863639},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1821.0,"sell_vol":11112.0,"unclassified_vol":0.0,"imbalance":-0.718395,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":2.256352},"context":{"vwap":6.373631,"price_vs_vwap_pct":1.87756,"ema9":6.489698,"ema20":6.487959,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.256528,"dist_to_hod_atr":1.090951,"atr":0.015308,"spread_atr":0.653264,"own_change_pct":-0.118631,"rel_strength_pct":{"SPY":-0.084982,"IWM":-0.083615}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.771468},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7d861948aec3","ts":"2026-09-21T17:34:26.434015+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9357,"target":8.16,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":119.8,"room_to_5d_high_atr":-0.62},"price":8.0897,"vwap":8.0803,"ext_from_open_pct":-1.22,"max_ext_allowed_pct":3.0,"volume_pace":0.511,"trend":"flat","recent_slope_pct":0.0327,"volatility":"high"},"price":8.0897,"volume":{"bars":244,"last_bar_volume":216.0,"baseline_avg":1641.5,"bar_rvol":0.131587,"raw_accel":-0.879127,"smooth_accel":1.600505,"accel_momentum":-3.887375,"rvol_3bar":[6.843777,1.114298,0.131587],"trend_3bar":"DECELERATING","projected_rvol":0.412063},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":6.0,"sell_vol":292.0,"unclassified_vol":0.0,"imbalance":-0.959732,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":4.139634},"context":{"vwap":8.080328,"price_vs_vwap_pct":0.115986,"ema9":8.081159,"ema20":8.084151,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.450375,"dist_to_hod_atr":14.703374,"atr":0.019662,"spread_atr":0.508591,"own_change_pct":0.183282,"rel_strength_pct":{"SPY":0.216931,"IWM":0.218298}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.126288},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"43d0b489461c","ts":"2026-09-21T17:34:26.434015+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7379,"target":8.94,"target_label":"ceiling","reward_risk":1.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8262,"vwap":8.7864,"ext_from_open_pct":3.59,"max_ext_allowed_pct":4.0,"volume_pace":0.485,"trend":"flat","recent_slope_pct":0.0311,"volatility":"unknown"},"price":8.8262,"volume":{"bars":244,"last_bar_volume":82069.0,"baseline_avg":64440.05,"bar_rvol":1.273571,"raw_accel":1.399959,"smooth_accel":-0.141177,"accel_momentum":-0.263389,"rvol_3bar":[2.17546,0.519195,1.273571],"trend_3bar":"MIXED","projected_rvol":0.840855},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":20555.0,"sell_vol":3419.0,"unclassified_vol":0.0,"imbalance":0.714774,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.517375},"context":{"vwap":8.786334,"price_vs_vwap_pct":0.453726,"ema9":8.83254,"ema20":8.849156,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.272931,"dist_to_hod_atr":3.666562,"atr":0.031037,"spread_atr":0.322193,"own_change_pct":-0.282646,"rel_strength_pct":{"SPY":-0.248996,"IWM":-0.247629}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.910316},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"72350c98c1d8","ts":"2026-09-21T17:34:31.627965+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5881,"target":8.76,"target_label":"premarket_high","reward_risk":0.69,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.83},"price":8.69,"vwap":8.6356,"ext_from_open_pct":0.81,"max_ext_allowed_pct":4.0,"volume_pace":0.762,"trend":"flat","recent_slope_pct":-0.0889,"volatility":"medium"},"price":8.69,"volume":{"bars":244,"last_bar_volume":273.0,"baseline_avg":1166.9,"bar_rvol":0.233953,"raw_accel":-0.064187,"smooth_accel":-0.550288,"accel_momentum":0.211412,"rvol_3bar":[0.923338,0.209274,0.233953],"trend_3bar":"MIXED","projected_rvol":13.802382},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":5831.0,"sell_vol":2173.0,"unclassified_vol":0.0,"imbalance":0.457021,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":1.838837},"context":{"vwap":8.634981,"price_vs_vwap_pct":0.637169,"ema9":8.719053,"ema20":8.714228,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.886582,"dist_to_hod_atr":17.395062,"atr":0.014849,"spread_atr":0.673444,"own_change_pct":-0.200343,"rel_strength_pct":{"SPY":-0.166694,"IWM":-0.165327}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.106922},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"485e91f7b990","ts":"2026-09-21T17:34:31.627965+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.9201,"target":8.16,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.0741,"vwap":8.0803,"ext_from_open_pct":-1.42,"max_ext_allowed_pct":3.0,"volume_pace":0.511,"trend":"flat","recent_slope_pct":-0.0059,"volatility":"high"},"price":8.0741,"volume":{"bars":244,"last_bar_volume":216.0,"baseline_avg":1641.5,"bar_rvol":0.131587,"raw_accel":-0.879127,"smooth_accel":1.600505,"accel_momentum":-3.887375,"rvol_3bar":[6.843777,1.114298,0.131587],"trend_3bar":"DECELERATING","projected_rvol":0.661051},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":106.0,"sell_vol":466.0,"unclassified_vol":0.0,"imbalance":-0.629371,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":9.333584},"context":{"vwap":8.080328,"price_vs_vwap_pct":-0.077076,"ema9":8.081159,"ema20":8.084151,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.636559,"dist_to_hod_atr":15.496776,"atr":0.019662,"spread_atr":0.508591,"own_change_pct":0.183282,"rel_strength_pct":{"SPY":0.216931,"IWM":0.218298}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.082817},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"3134880a2e5b","ts":"2026-09-21T17:34:36.808129+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.931,"target":8.16,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.62},"price":8.085,"vwap":8.0803,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.511,"trend":"flat","recent_slope_pct":0.021,"volatility":"high"},"price":8.085,"volume":{"bars":244,"last_bar_volume":216.0,"baseline_avg":1641.5,"bar_rvol":0.131587,"raw_accel":-0.879127,"smooth_accel":1.600505,"accel_momentum":-3.887375,"rvol_3bar":[6.843777,1.114298,0.131587],"trend_3bar":"DECELERATING","projected_rvol":0.589866},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":128.0,"sell_vol":466.0,"unclassified_vol":0.0,"imbalance":-0.569024,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":0.197894},"context":{"vwap":8.080328,"price_vs_vwap_pct":0.05782,"ema9":8.081159,"ema20":8.084151,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.506469,"dist_to_hod_atr":14.942412,"atr":0.019662,"spread_atr":0.508591,"own_change_pct":0.183282,"rel_strength_pct":{"SPY":0.216931,"IWM":0.218298}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.074876},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"fd112289e93c","ts":"2026-09-21T17:34:42.003297+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.9203,"target":8.16,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.0743,"vwap":8.0803,"ext_from_open_pct":-1.41,"max_ext_allowed_pct":3.0,"volume_pace":0.51,"trend":"flat","recent_slope_pct":-0.0054,"volatility":"high"},"price":8.0743,"volume":{"bars":244,"last_bar_volume":216.0,"baseline_avg":1641.5,"bar_rvol":0.131587,"raw_accel":-0.879127,"smooth_accel":1.600505,"accel_momentum":-3.887375,"rvol_3bar":[6.843777,1.114298,0.131587],"trend_3bar":"DECELERATING","projected_rvol":0.723149},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":265.0,"sell_vol":474.0,"unclassified_vol":0.0,"imbalance":-0.282815,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":1.026865},"context":{"vwap":8.080328,"price_vs_vwap_pct":-0.074601,"ema9":8.081159,"ema20":8.084151,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.634172,"dist_to_hod_atr":15.486605,"atr":0.019662,"spread_atr":0.508591,"own_change_pct":0.183282,"rel_strength_pct":{"SPY":0.216931,"IWM":0.218298}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.037215},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"502621436b6c","ts":"2026-09-21T17:34:47.203799+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7367,"target":8.94,"target_label":"ceiling","reward_risk":1.3,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.825,"vwap":8.7864,"ext_from_open_pct":3.58,"max_ext_allowed_pct":3.0,"volume_pace":0.485,"trend":"flat","recent_slope_pct":0.0284,"volatility":"unknown"},"price":8.825,"volume":{"bars":244,"last_bar_volume":82069.0,"baseline_avg":64440.05,"bar_rvol":1.273571,"raw_accel":1.399959,"smooth_accel":-0.141177,"accel_momentum":-0.263389,"rvol_3bar":[2.17546,0.519195,1.273571],"trend_3bar":"MIXED","projected_rvol":0.818807},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":21138.0,"sell_vol":16487.0,"unclassified_vol":0.0,"imbalance":0.123615,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.247787},"context":{"vwap":8.786334,"price_vs_vwap_pct":0.440068,"ema9":8.83254,"ema20":8.849156,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.286353,"dist_to_hod_atr":3.705225,"atr":0.031037,"spread_atr":0.322193,"own_change_pct":-0.282646,"rel_strength_pct":{"SPY":-0.248996,"IWM":-0.247629}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.157432},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c2b943e5aa5b","ts":"2026-09-21T17:34:52.352431+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.931,"target":8.16,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.62},"price":8.085,"vwap":8.0803,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.51,"trend":"flat","recent_slope_pct":0.021,"volatility":"high"},"price":8.085,"volume":{"bars":244,"last_bar_volume":216.0,"baseline_avg":1641.5,"bar_rvol":0.131587,"raw_accel":-0.879127,"smooth_accel":1.600505,"accel_momentum":-3.887375,"rvol_3bar":[6.843777,1.114298,0.131587],"trend_3bar":"DECELERATING","projected_rvol":0.683528},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":388.0,"sell_vol":298.0,"unclassified_vol":0.0,"imbalance":0.131195,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":3.730774},"context":{"vwap":8.080328,"price_vs_vwap_pct":0.05782,"ema9":8.081159,"ema20":8.084151,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.506469,"dist_to_hod_atr":14.942412,"atr":0.019662,"spread_atr":0.508591,"own_change_pct":0.183282,"rel_strength_pct":{"SPY":0.216931,"IWM":0.218298}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.017264},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"f96f352de461","ts":"2026-09-21T17:35:02.616689+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6881,"target":11.05,"target_label":"ceiling","reward_risk":0.11,"pos_in_5d_range_pct":104.5,"room_to_5d_high_atr":-0.11},"price":10.915,"vwap":10.8571,"ext_from_open_pct":-0.59,"max_ext_allowed_pct":4.0,"volume_pace":0.54,"trend":"flat","recent_slope_pct":0.0612,"volatility":"medium"},"price":10.915,"volume":{"bars":245,"last_bar_volume":72601.0,"baseline_avg":70404.85,"bar_rvol":1.031193,"raw_accel":-0.250114,"smooth_accel":2.48216,"accel_momentum":-0.314397,"rvol_3bar":[5.250057,1.462612,1.031193],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":23821.0,"sell_vol":30024.0,"unclassified_vol":0.0,"imbalance":-0.115201,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":0.105582},"context":{"vwap":10.857111,"price_vs_vwap_pct":0.533186,"ema9":10.901208,"ema20":10.900005,"ema_stack":true,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.839111,"dist_to_hod_atr":1.697068,"atr":0.120502,"spread_atr":0.082986,"own_change_pct":0.298562,"rel_strength_pct":{"SPY":0.355498,"IWM":0.335333}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.118795},"shadow":{"decision":"FAIL","failed":["vas","imbalance","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ef965704bc91","ts":"2026-09-21T17:35:02.616689+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.485,"vwap":6.3738,"ext_from_open_pct":3.1,"max_ext_allowed_pct":3.0,"volume_pace":1.252,"trend":"flat","recent_slope_pct":-0.0231,"volatility":"unknown"},"price":6.485,"volume":{"bars":245,"last_bar_volume":27384.0,"baseline_avg":40494.6,"bar_rvol":0.676238,"raw_accel":-0.370367,"smooth_accel":0.021224,"accel_momentum":-0.76105,"rvol_3bar":[0.80233,1.073878,0.676238],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":2887.0,"sell_vol":15130.0,"unclassified_vol":0.0,"imbalance":-0.679525,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.131289},"context":{"vwap":6.373798,"price_vs_vwap_pct":1.744673,"ema9":6.488758,"ema20":6.487677,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.384025,"dist_to_hod_atr":1.647054,"atr":0.015179,"spread_atr":0.658822,"own_change_pct":-0.132438,"rel_strength_pct":{"SPY":-0.075503,"IWM":-0.095667}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.459521},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e5cd24710b92","ts":"2026-09-21T17:35:23.905031+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.22,"target":12.0486,"target_label":"premarket_high","reward_risk":2.77,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.44,"vwap":11.318,"ext_from_open_pct":-1.38,"max_ext_allowed_pct":4.0,"volume_pace":0.507,"trend":"flat","recent_slope_pct":0.1495,"volatility":"unknown"},"price":11.44,"volume":{"bars":228,"last_bar_volume":16.0,"baseline_avg":135.65,"bar_rvol":0.117951,"raw_accel":-0.528198,"smooth_accel":-0.778986,"accel_momentum":-0.014941,"rvol_3bar":[0.221557,0.047577,0.117951],"trend_3bar":"MIXED","projected_rvol":12.341501},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":437.0,"sell_vol":238.0,"unclassified_vol":0.0,"imbalance":0.294815,"bid":11.37,"ask":11.48,"spread_pct":0.962801,"quote_size_imbalance":null,"quote_age_s":4.28608},"context":{"vwap":11.31755,"price_vs_vwap_pct":1.081944,"ema9":11.34905,"ema20":11.333435,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.267782,"dist_to_hod_atr":9.711385,"atr":0.052516,"spread_atr":2.094612,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.056935,"IWM":0.036771}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.034774},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"76ef5beaf67b","ts":"2026-09-21T17:35:23.905031+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3738,"ext_from_open_pct":3.02,"max_ext_allowed_pct":4.0,"volume_pace":1.25,"trend":"flat","recent_slope_pct":-0.0385,"volatility":"unknown"},"price":6.48,"volume":{"bars":245,"last_bar_volume":27384.0,"baseline_avg":40494.6,"bar_rvol":0.676238,"raw_accel":-0.370367,"smooth_accel":0.021224,"accel_momentum":-0.76105,"rvol_3bar":[0.80233,1.073878,0.676238],"trend_3bar":"MIXED","projected_rvol":0.359061},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2106.0,"sell_vol":13685.0,"unclassified_vol":0.0,"imbalance":-0.733266,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.5006},"context":{"vwap":6.373798,"price_vs_vwap_pct":1.666227,"ema9":6.488758,"ema20":6.487677,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":1.976465,"atr":0.015179,"spread_atr":0.658822,"own_change_pct":-0.132438,"rel_strength_pct":{"SPY":-0.075503,"IWM":-0.095667}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.495862},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3b0ba7b8d15e","ts":"2026-09-21T17:35:29.225014+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.9205,"target":8.16,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.0745,"vwap":8.0803,"ext_from_open_pct":-1.41,"max_ext_allowed_pct":3.0,"volume_pace":0.509,"trend":"flat","recent_slope_pct":-0.0203,"volatility":"high"},"price":8.0745,"volume":{"bars":245,"last_bar_volume":1277.0,"baseline_avg":1582.95,"bar_rvol":0.806722,"raw_accel":2.226887,"smooth_accel":-0.715105,"accel_momentum":-2.31561,"rvol_3bar":[1.114298,0.131587,0.806722],"trend_3bar":"MIXED","projected_rvol":0.2996},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":27.0,"sell_vol":323.0,"unclassified_vol":0.0,"imbalance":-0.845714,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":20.899855},"context":{"vwap":8.080328,"price_vs_vwap_pct":-0.072121,"ema9":8.079948,"ema20":8.083289,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.631785,"dist_to_hod_atr":15.690882,"atr":0.019393,"spread_atr":0.515639,"own_change_pct":0.001238,"rel_strength_pct":{"SPY":0.058174,"IWM":0.03801}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.682256},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"88fa37c0ca99","ts":"2026-09-21T17:35:34.412983+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4567,"target":6.94,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":111.4,"room_to_5d_high_atr":-0.31},"price":6.62,"vwap":6.5887,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.55,"trend":"flat","recent_slope_pct":0.0151,"volatility":"high"},"price":6.62,"volume":{"bars":243,"last_bar_volume":16.0,"baseline_avg":5422.2,"bar_rvol":0.002951,"raw_accel":-0.988197,"smooth_accel":-0.938635,"accel_momentum":-0.062738,"rvol_3bar":[0.189484,0.228467,0.002951],"trend_3bar":"MIXED","projected_rvol":0.035692},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":60.0,"sell_vol":51.0,"unclassified_vol":0.0,"imbalance":0.081081,"bid":6.61,"ask":6.63,"spread_pct":0.302115,"quote_size_imbalance":null,"quote_age_s":25.73758},"context":{"vwap":6.588709,"price_vs_vwap_pct":0.47492,"ema9":6.630671,"ema20":6.655909,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.610951,"dist_to_hod_atr":11.999045,"atr":0.026669,"spread_atr":0.74994,"own_change_pct":-0.247122,"rel_strength_pct":{"SPY":-0.190186,"IWM":-0.210351}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.000239},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e13c6aa8a429","ts":"2026-09-21T17:35:34.412983+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.485,"vwap":6.3739,"ext_from_open_pct":3.1,"max_ext_allowed_pct":3.0,"volume_pace":1.25,"trend":"flat","recent_slope_pct":-0.0231,"volatility":"unknown"},"price":6.485,"volume":{"bars":245,"last_bar_volume":27384.0,"baseline_avg":40494.6,"bar_rvol":0.676238,"raw_accel":-0.370367,"smooth_accel":0.021224,"accel_momentum":-0.76105,"rvol_3bar":[0.80233,1.073878,0.676238],"trend_3bar":"MIXED","projected_rvol":0.471978},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":2783.0,"sell_vol":4247.0,"unclassified_vol":0.0,"imbalance":-0.20825,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.294339},"context":{"vwap":6.373798,"price_vs_vwap_pct":1.744673,"ema9":6.488758,"ema20":6.487677,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.384025,"dist_to_hod_atr":1.647054,"atr":0.015179,"spread_atr":0.658822,"own_change_pct":-0.132438,"rel_strength_pct":{"SPY":-0.075503,"IWM":-0.095667}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.140827},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b343e0eae1c0","ts":"2026-09-21T17:35:44.910095+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.931,"target":8.16,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.62},"price":8.085,"vwap":8.0803,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.508,"trend":"flat","recent_slope_pct":0.0057,"volatility":"high"},"price":8.085,"volume":{"bars":245,"last_bar_volume":1277.0,"baseline_avg":1582.95,"bar_rvol":0.806722,"raw_accel":2.226887,"smooth_accel":-0.715105,"accel_momentum":-2.31561,"rvol_3bar":[1.114298,0.131587,0.806722],"trend_3bar":"MIXED","projected_rvol":0.340974},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":173.0,"sell_vol":204.0,"unclassified_vol":0.0,"imbalance":-0.082228,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":1.121749},"context":{"vwap":8.080328,"price_vs_vwap_pct":0.057824,"ema9":8.079948,"ema20":8.083289,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.506469,"dist_to_hod_atr":15.149462,"atr":0.019393,"spread_atr":0.515639,"own_change_pct":0.001238,"rel_strength_pct":{"SPY":0.058174,"IWM":0.03801}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.066335},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5a29801b5735","ts":"2026-09-21T17:35:50.174306+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.08 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.926,"target":8.16,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":119.3,"room_to_5d_high_atr":-0.61},"price":8.08,"vwap":8.0803,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.508,"trend":"flat","recent_slope_pct":-0.0067,"volatility":"high"},"price":8.08,"volume":{"bars":245,"last_bar_volume":1277.0,"baseline_avg":1582.95,"bar_rvol":0.806722,"raw_accel":2.226887,"smooth_accel":-0.715105,"accel_momentum":-2.31561,"rvol_3bar":[1.114298,0.131587,0.806722],"trend_3bar":"MIXED","projected_rvol":0.321064},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":193.0,"sell_vol":201.0,"unclassified_vol":0.0,"imbalance":-0.020305,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":6.38596},"context":{"vwap":8.080328,"price_vs_vwap_pct":-0.004055,"ema9":8.079948,"ema20":8.083289,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.566143,"dist_to_hod_atr":15.407281,"atr":0.019393,"spread_atr":0.515639,"own_change_pct":0.001238,"rel_strength_pct":{"SPY":0.058174,"IWM":0.03801}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.01638},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2e6f134dc886","ts":"2026-09-21T17:35:55.373501+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4567,"target":6.94,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":111.4,"room_to_5d_high_atr":-0.31},"price":6.62,"vwap":6.5887,"ext_from_open_pct":3.6,"max_ext_allowed_pct":3.0,"volume_pace":0.549,"trend":"flat","recent_slope_pct":0.0151,"volatility":"high"},"price":6.62,"volume":{"bars":243,"last_bar_volume":16.0,"baseline_avg":5422.2,"bar_rvol":0.002951,"raw_accel":-0.988197,"smooth_accel":-0.938635,"accel_momentum":-0.062738,"rvol_3bar":[0.189484,0.228467,0.002951],"trend_3bar":"MIXED","projected_rvol":0.022781},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":0.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.61,"ask":6.63,"spread_pct":0.302115,"quote_size_imbalance":null,"quote_age_s":46.698098},"context":{"vwap":6.588709,"price_vs_vwap_pct":0.47492,"ema9":6.630671,"ema20":6.655909,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.610951,"dist_to_hod_atr":11.999045,"atr":0.026669,"spread_atr":0.74994,"own_change_pct":-0.247122,"rel_strength_pct":{"SPY":-0.190186,"IWM":-0.210351}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.002951},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"10c0080f4c28","ts":"2026-09-21T17:36:05.734103+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0247,"target":12.29,"target_label":"prev_day_high","reward_risk":0.51,"pos_in_5d_range_pct":64.3,"room_to_5d_high_atr":0.57},"price":12.2,"vwap":12.1794,"ext_from_open_pct":-0.81,"max_ext_allowed_pct":4.0,"volume_pace":0.658,"trend":"flat","recent_slope_pct":-0.0365,"volatility":"medium"},"price":12.2,"volume":{"bars":246,"last_bar_volume":25473.0,"baseline_avg":9356.6,"bar_rvol":2.722463,"raw_accel":1.490273,"smooth_accel":1.654465,"accel_momentum":2.016883,"rvol_3bar":[0.142217,1.120777,2.722463],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":13898.0,"sell_vol":19060.0,"unclassified_vol":0.0,"imbalance":-0.156624,"bid":12.2,"ask":12.21,"spread_pct":0.081934,"quote_size_imbalance":null,"quote_age_s":0.769598},"context":{"vwap":12.179317,"price_vs_vwap_pct":0.169819,"ema9":12.219035,"ema20":12.228872,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.321857,"dist_to_hod_atr":10.923199,"atr":0.026549,"spread_atr":0.376662,"own_change_pct":0.011472,"rel_strength_pct":{"SPY":0.056763,"IWM":0.030735}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.426402},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f33724cd728d","ts":"2026-09-21T17:37:02.984337+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5831,"target":8.76,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6357,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.756,"trend":"flat","recent_slope_pct":-0.0747,"volatility":"medium"},"price":8.685,"volume":{"bars":247,"last_bar_volume":452.0,"baseline_avg":1487.4,"bar_rvol":0.303886,"raw_accel":-0.216638,"smooth_accel":4.777519,"accel_momentum":1.018848,"rvol_3bar":[7.739717,0.366268,0.303886],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":1237.0,"sell_vol":23.0,"unclassified_vol":0.0,"imbalance":0.963492,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":0.164682},"context":{"vwap":8.635619,"price_vs_vwap_pct":0.571832,"ema9":8.706915,"ema20":8.70906,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":14.563545,"atr":0.018079,"spread_atr":0.553116,"own_change_pct":-0.344234,"rel_strength_pct":{"SPY":-0.319642,"IWM":-0.316178}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.292792},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"526be1bc5bfa","ts":"2026-09-21T17:37:02.984337+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9328,"target":8.16,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":119.6,"room_to_5d_high_atr":-0.62},"price":8.0868,"vwap":8.0803,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":3.0,"volume_pace":0.506,"trend":"flat","recent_slope_pct":0.0119,"volatility":"high"},"price":8.0868,"volume":{"bars":246,"last_bar_volume":488.0,"baseline_avg":1627.0,"bar_rvol":0.299939,"raw_accel":-0.617854,"smooth_accel":-0.842528,"accel_momentum":-0.127423,"rvol_3bar":[0.131587,0.806722,0.299939],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":103.0,"sell_vol":161.0,"unclassified_vol":0.0,"imbalance":-0.219697,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":13.194307},"context":{"vwap":8.080327,"price_vs_vwap_pct":0.080106,"ema9":8.079078,"ema20":8.082557,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.484986,"dist_to_hod_atr":15.566539,"atr":0.018758,"spread_atr":0.533101,"own_change_pct":-0.054455,"rel_strength_pct":{"SPY":-0.029864,"IWM":-0.026399}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.065896},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9a326120e3dd","ts":"2026-09-21T17:37:02.984337+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7401,"target":9.3,"target_label":"premarket_high","reward_risk":4.14,"pos_in_5d_range_pct":91.0,"room_to_5d_high_atr":0.15},"price":8.849,"vwap":8.701,"ext_from_open_pct":1.48,"max_ext_allowed_pct":4.0,"volume_pace":0.594,"trend":"flat","recent_slope_pct":-0.0204,"volatility":"medium"},"price":8.849,"volume":{"bars":247,"last_bar_volume":16603.0,"baseline_avg":6676.0,"bar_rvol":2.486968,"raw_accel":5.874948,"smooth_accel":1.706154,"accel_momentum":-0.001429,"rvol_3bar":[3.461206,0.357566,2.486968],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":997.0,"sell_vol":32.0,"unclassified_vol":0.0,"imbalance":0.937804,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":4.508792},"context":{"vwap":8.700995,"price_vs_vwap_pct":1.701014,"ema9":8.855006,"ema20":8.851524,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.480687,"dist_to_hod_atr":15.460913,"atr":0.014559,"spread_atr":0.686846,"own_change_pct":0.013552,"rel_strength_pct":{"SPY":0.038143,"IWM":0.041608}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":2.332288},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"adb365a1e662","ts":"2026-09-21T17:37:02.984337+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.0397,"target":12.29,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":65.6,"room_to_5d_high_atr":0.55},"price":12.215,"vwap":12.1795,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.658,"trend":"flat","recent_slope_pct":0.0061,"volatility":"medium"},"price":12.215,"volume":{"bars":247,"last_bar_volume":25006.0,"baseline_avg":10182.25,"bar_rvol":2.455842,"raw_accel":-0.018333,"smooth_accel":4.739081,"accel_momentum":3.084616,"rvol_3bar":[1.120777,2.722463,2.455842],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":321.0,"sell_vol":2055.0,"unclassified_vol":0.0,"imbalance":-0.729798,"bid":12.21,"ask":12.22,"spread_pct":0.081867,"quote_size_imbalance":null,"quote_age_s":0.150443},"context":{"vwap":12.179478,"price_vs_vwap_pct":0.291656,"ema9":12.216628,"ema20":12.226789,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.201761,"dist_to_hod_atr":10.543988,"atr":0.026081,"spread_atr":0.383418,"own_change_pct":-0.108018,"rel_strength_pct":{"SPY":-0.083426,"IWM":-0.079962}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.792269},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"164973bef5df","ts":"2026-09-21T17:37:08.164333+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4557,"target":6.94,"target_label":"ceiling","reward_risk":1.97,"pos_in_5d_range_pct":111.3,"room_to_5d_high_atr":-0.3},"price":6.619,"vwap":6.5887,"ext_from_open_pct":3.58,"max_ext_allowed_pct":4.0,"volume_pace":0.546,"trend":"flat","recent_slope_pct":-0.0163,"volatility":"high"},"price":6.619,"volume":{"bars":245,"last_bar_volume":26.0,"baseline_avg":5035.25,"bar_rvol":0.005164,"raw_accel":-0.979346,"smooth_accel":-0.966709,"accel_momentum":-0.009678,"rvol_3bar":[0.002951,0.021043,0.005164],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":19.0,"sell_vol":7.0,"unclassified_vol":0.0,"imbalance":0.461538,"bid":6.61,"ask":6.62,"spread_pct":0.151172,"quote_size_imbalance":null,"quote_age_s":6.407907},"context":{"vwap":6.588711,"price_vs_vwap_pct":0.459714,"ema9":6.625069,"ema20":6.648557,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.62536,"dist_to_hod_atr":13.084805,"atr":0.024532,"spread_atr":0.407626,"own_change_pct":-0.057445,"rel_strength_pct":{"SPY":-0.032854,"IWM":-0.029389}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.002383},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c2a7d6e1e446","ts":"2026-09-21T17:37:13.356985+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4574,"target":6.94,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":111.4,"room_to_5d_high_atr":-0.31},"price":6.6207,"vwap":6.5887,"ext_from_open_pct":3.61,"max_ext_allowed_pct":3.0,"volume_pace":0.547,"trend":"flat","recent_slope_pct":-0.0112,"volatility":"high"},"price":6.6207,"volume":{"bars":245,"last_bar_volume":26.0,"baseline_avg":5035.25,"bar_rvol":0.005164,"raw_accel":-0.979346,"smooth_accel":-0.966709,"accel_momentum":-0.009678,"rvol_3bar":[0.002951,0.021043,0.005164],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":467.0,"sell_vol":2156.0,"unclassified_vol":0.0,"imbalance":-0.643919,"bid":6.62,"ask":6.63,"spread_pct":0.150943,"quote_size_imbalance":null,"quote_age_s":1.495353},"context":{"vwap":6.588711,"price_vs_vwap_pct":0.485516,"ema9":6.625069,"ema20":6.648557,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.600865,"dist_to_hod_atr":13.015508,"atr":0.024532,"spread_atr":0.407626,"own_change_pct":-0.057445,"rel_strength_pct":{"SPY":-0.032854,"IWM":-0.029389}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.003325},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3999c53f097d","ts":"2026-09-21T17:37:23.648266+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5831,"target":8.76,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6357,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.755,"trend":"flat","recent_slope_pct":-0.0747,"volatility":"medium"},"price":8.685,"volume":{"bars":247,"last_bar_volume":452.0,"baseline_avg":1487.4,"bar_rvol":0.303886,"raw_accel":-0.216638,"smooth_accel":4.777519,"accel_momentum":1.018848,"rvol_3bar":[7.739717,0.366268,0.303886],"trend_3bar":"DECELERATING","projected_rvol":1.80472},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":1152.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":0.989637,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":1.398184},"context":{"vwap":8.635619,"price_vs_vwap_pct":0.571832,"ema9":8.706915,"ema20":8.70906,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":14.563545,"atr":0.018079,"spread_atr":0.553116,"own_change_pct":-0.344234,"rel_strength_pct":{"SPY":-0.319642,"IWM":-0.316178}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.300737},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"2d895f498750","ts":"2026-09-21T17:37:39.182102+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4567,"target":6.94,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":111.4,"room_to_5d_high_atr":-0.31},"price":6.62,"vwap":6.5888,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.546,"trend":"flat","recent_slope_pct":-0.0133,"volatility":"high"},"price":6.62,"volume":{"bars":245,"last_bar_volume":26.0,"baseline_avg":5035.25,"bar_rvol":0.005164,"raw_accel":-0.979346,"smooth_accel":-0.966709,"accel_momentum":-0.009678,"rvol_3bar":[0.002951,0.021043,0.005164],"trend_3bar":"MIXED","projected_rvol":0.871907},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":679.0,"sell_vol":2171.0,"unclassified_vol":0.0,"imbalance":-0.523509,"bid":6.61,"ask":6.63,"spread_pct":0.302115,"quote_size_imbalance":null,"quote_age_s":1.135493},"context":{"vwap":6.588711,"price_vs_vwap_pct":0.474892,"ema9":6.625069,"ema20":6.648557,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.610951,"dist_to_hod_atr":13.044042,"atr":0.024532,"spread_atr":0.815253,"own_change_pct":-0.057445,"rel_strength_pct":{"SPY":-0.032854,"IWM":-0.029389}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.002703},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f0290cf9b186","ts":"2026-09-21T17:38:05.123288+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5831,"target":8.76,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6357,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.753,"trend":"flat","recent_slope_pct":-0.0322,"volatility":"medium"},"price":8.685,"volume":{"bars":248,"last_bar_volume":1170.0,"baseline_avg":1485.75,"bar_rvol":0.787481,"raw_accel":1.588496,"smooth_accel":-0.766362,"accel_momentum":-5.543881,"rvol_3bar":[0.366268,0.303886,0.787481],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":181.0,"sell_vol":7.0,"unclassified_vol":0.0,"imbalance":0.925532,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":1.487132},"context":{"vwap":8.635684,"price_vs_vwap_pct":0.571067,"ema9":8.702532,"ema20":8.706769,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":14.448203,"atr":0.018224,"spread_atr":0.548735,"own_change_pct":-0.401376,"rel_strength_pct":{"SPY":-0.371603,"IWM":-0.355875}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.728839},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"45f2a4d0b8f8","ts":"2026-09-21T17:38:05.123288+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.08 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.9263,"target":8.16,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":119.3,"room_to_5d_high_atr":-0.61},"price":8.0803,"vwap":8.0803,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.505,"trend":"flat","recent_slope_pct":0.0219,"volatility":"high"},"price":8.0803,"volume":{"bars":248,"last_bar_volume":4794.0,"baseline_avg":1547.65,"bar_rvol":3.0976,"raw_accel":4.1,"smooth_accel":0.896951,"accel_momentum":1.634279,"rvol_3bar":[0.299939,0.596087,3.0976],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":3.0,"sell_vol":108.0,"unclassified_vol":0.0,"imbalance":-0.945946,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":4.634165},"context":{"vwap":8.080345,"price_vs_vwap_pct":-0.000556,"ema9":8.081078,"ema20":8.082955,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.562563,"dist_to_hod_atr":15.628969,"atr":0.019099,"spread_atr":0.523584,"own_change_pct":0.099072,"rel_strength_pct":{"SPY":0.128845,"IWM":0.144573}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.930162},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7bacfb5cfc1e","ts":"2026-09-21T17:38:05.123288+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7446,"target":9.3,"target_label":"premarket_high","reward_risk":4.1,"pos_in_5d_range_pct":91.6,"room_to_5d_high_atr":0.14},"price":8.8535,"vwap":8.7011,"ext_from_open_pct":1.53,"max_ext_allowed_pct":3.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.004,"volatility":"medium"},"price":8.8535,"volume":{"bars":248,"last_bar_volume":2526.0,"baseline_avg":7366.6,"bar_rvol":0.342899,"raw_accel":-0.847859,"smooth_accel":-0.197138,"accel_momentum":-1.903292,"rvol_3bar":[0.357566,2.486968,0.342899],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":264.0,"sell_vol":823.0,"unclassified_vol":0.0,"imbalance":-0.514259,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.006537},"context":{"vwap":8.701086,"price_vs_vwap_pct":1.751671,"ema9":8.854905,"ema20":8.851807,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.431095,"dist_to_hod_atr":15.023531,"atr":0.014684,"spread_atr":0.68103,"own_change_pct":-0.005647,"rel_strength_pct":{"SPY":0.024126,"IWM":0.039854}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.176339},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1484fdc69e69","ts":"2026-09-21T17:38:10.273770+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.7345,"target":9.3,"target_label":"premarket_high","reward_risk":4.19,"pos_in_5d_range_pct":90.2,"room_to_5d_high_atr":0.16},"price":8.8434,"vwap":8.7015,"ext_from_open_pct":1.42,"max_ext_allowed_pct":3.0,"volume_pace":0.594,"trend":"flat","recent_slope_pct":-0.0268,"volatility":"medium"},"price":8.8434,"volume":{"bars":248,"last_bar_volume":2526.0,"baseline_avg":7366.6,"bar_rvol":0.342899,"raw_accel":-0.847859,"smooth_accel":-0.197138,"accel_momentum":-1.903292,"rvol_3bar":[0.357566,2.486968,0.342899],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":3102.0,"sell_vol":9456.0,"unclassified_vol":0.0,"imbalance":-0.505972,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.594935},"context":{"vwap":8.701086,"price_vs_vwap_pct":1.635593,"ema9":8.854905,"ema20":8.851807,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.542401,"dist_to_hod_atr":15.711372,"atr":0.014684,"spread_atr":0.68103,"own_change_pct":-0.005647,"rel_strength_pct":{"SPY":0.024126,"IWM":0.039854}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.173497},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"26485044abae","ts":"2026-09-21T17:38:10.273770+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4053,"target":6.51,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.3748,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.247,"trend":"flat","recent_slope_pct":-0.0338,"volatility":"unknown"},"price":6.47,"volume":{"bars":248,"last_bar_volume":8763.0,"baseline_avg":34212.8,"bar_rvol":0.256132,"raw_accel":-0.861867,"smooth_accel":-0.096333,"accel_momentum":0.14631,"rvol_3bar":[0.54138,1.581397,0.256132],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":158,"trade_rate":5.266667,"buy_vol":49558.0,"sell_vol":31344.0,"unclassified_vol":0.0,"imbalance":0.225137,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.916068},"context":{"vwap":6.374363,"price_vs_vwap_pct":1.500331,"ema9":6.486904,"ema20":6.486888,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.614439,"dist_to_hod_atr":2.808755,"atr":0.014241,"spread_atr":0.702189,"own_change_pct":-0.029276,"rel_strength_pct":{"SPY":0.000497,"IWM":0.016225}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.057665},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a781f383ad00","ts":"2026-09-21T17:38:20.506392+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.91 below VWAP $12.92","plan":{"state":"PASS","setup":"","stop":12.5183,"target":13.53,"target_label":"ceiling","reward_risk":1.58,"pos_in_5d_range_pct":150.3,"room_to_5d_high_atr":-1.5},"price":12.9101,"vwap":12.9207,"ext_from_open_pct":-0.77,"max_ext_allowed_pct":3.0,"volume_pace":0.578,"trend":"flat","recent_slope_pct":-0.0739,"volatility":"high"},"price":12.9101,"volume":{"bars":248,"last_bar_volume":12208.0,"baseline_avg":9579.55,"bar_rvol":1.274381,"raw_accel":0.678999,"smooth_accel":0.186932,"accel_momentum":0.345403,"rvol_3bar":[0.326871,0.775764,1.274381],"trend_3bar":"ACCELERATING","projected_rvol":0.601704},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1416.0,"sell_vol":1734.0,"unclassified_vol":0.0,"imbalance":-0.100952,"bid":12.91,"ask":12.97,"spread_pct":0.463679,"quote_size_imbalance":null,"quote_age_s":2.904953},"context":{"vwap":12.920667,"price_vs_vwap_pct":-0.081788,"ema9":12.968838,"ema20":13.010869,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.448551,"dist_to_hod_atr":11.267361,"atr":0.07898,"spread_atr":0.759683,"own_change_pct":0.503876,"rel_strength_pct":{"SPY":0.533649,"IWM":0.549377}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.128652},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fde2c3f9097a","ts":"2026-09-21T17:38:20.506392+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9418,"target":8.16,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":120.1,"room_to_5d_high_atr":-0.63},"price":8.0958,"vwap":8.0803,"ext_from_open_pct":-1.15,"max_ext_allowed_pct":4.0,"volume_pace":0.505,"trend":"flat","recent_slope_pct":0.0602,"volatility":"high"},"price":8.0958,"volume":{"bars":248,"last_bar_volume":4794.0,"baseline_avg":1547.65,"bar_rvol":3.0976,"raw_accel":4.1,"smooth_accel":0.896951,"accel_momentum":1.634279,"rvol_3bar":[0.299939,0.596087,3.0976],"trend_3bar":"ACCELERATING","projected_rvol":0.657913},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":330.0,"sell_vol":119.0,"unclassified_vol":0.0,"imbalance":0.469933,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":3.380685},"context":{"vwap":8.080345,"price_vs_vwap_pct":0.191268,"ema9":8.081078,"ema20":8.082955,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.377572,"dist_to_hod_atr":14.817415,"atr":0.019099,"spread_atr":0.523584,"own_change_pct":0.099072,"rel_strength_pct":{"SPY":0.128845,"IWM":0.144573}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.455665},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"be6ed3f98987","ts":"2026-09-21T17:38:20.506392+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4147,"target":7.775,"target_label":"range_20d_high","reward_risk":19.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4795,"vwap":6.3748,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":1.247,"trend":"flat","recent_slope_pct":-0.0045,"volatility":"unknown"},"price":6.4795,"volume":{"bars":248,"last_bar_volume":8763.0,"baseline_avg":34212.8,"bar_rvol":0.256132,"raw_accel":-0.861867,"smooth_accel":-0.096333,"accel_momentum":0.14631,"rvol_3bar":[0.54138,1.581397,0.256132],"trend_3bar":"MIXED","projected_rvol":6.878378},"flow":{"window_s":30,"trades":157,"trade_rate":5.233333,"buy_vol":49775.0,"sell_vol":33457.0,"unclassified_vol":0.0,"imbalance":0.196054,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.254094},"context":{"vwap":6.374363,"price_vs_vwap_pct":1.649365,"ema9":6.486904,"ema20":6.486888,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.46851,"dist_to_hod_atr":2.141675,"atr":0.014241,"spread_atr":0.702189,"own_change_pct":-0.029276,"rel_strength_pct":{"SPY":0.000497,"IWM":0.016225}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.050216},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d48e3e907e64","ts":"2026-09-21T17:38:25.621826+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.5432,"target":13.53,"target_label":"ceiling","reward_risk":1.52,"pos_in_5d_range_pct":150.8,"room_to_5d_high_atr":-1.52},"price":12.935,"vwap":12.9207,"ext_from_open_pct":-0.58,"max_ext_allowed_pct":4.0,"volume_pace":0.579,"trend":"flat","recent_slope_pct":-0.0355,"volatility":"high"},"price":12.935,"volume":{"bars":248,"last_bar_volume":12208.0,"baseline_avg":9579.55,"bar_rvol":1.274381,"raw_accel":0.678999,"smooth_accel":0.186932,"accel_momentum":0.345403,"rvol_3bar":[0.326871,0.775764,1.274381],"trend_3bar":"ACCELERATING","projected_rvol":3.701513},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":12968.0,"sell_vol":3354.0,"unclassified_vol":0.0,"imbalance":0.589021,"bid":12.91,"ask":12.96,"spread_pct":0.386548,"quote_size_imbalance":null,"quote_age_s":1.770335},"context":{"vwap":12.920667,"price_vs_vwap_pct":0.110927,"ema9":12.968838,"ema20":13.010869,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.268116,"dist_to_hod_atr":10.952093,"atr":0.07898,"spread_atr":0.633069,"own_change_pct":0.503876,"rel_strength_pct":{"SPY":0.533649,"IWM":0.549377}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.750637},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f12e3eb9e3b1","ts":"2026-09-21T17:38:25.621826+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.16,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0803,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.504,"trend":"flat","recent_slope_pct":0.0088,"volatility":"high"},"price":8.075,"volume":{"bars":248,"last_bar_volume":4794.0,"baseline_avg":1547.65,"bar_rvol":3.0976,"raw_accel":4.1,"smooth_accel":0.896951,"accel_momentum":1.634279,"rvol_3bar":[0.299939,0.596087,3.0976],"trend_3bar":"ACCELERATING","projected_rvol":0.67787},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":330.0,"sell_vol":118.0,"unclassified_vol":0.0,"imbalance":0.473214,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":5.021053},"context":{"vwap":8.080345,"price_vs_vwap_pct":-0.066147,"ema9":8.081078,"ema20":8.082955,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":15.906469,"atr":0.019099,"spread_atr":0.523584,"own_change_pct":0.099072,"rel_strength_pct":{"SPY":0.128845,"IWM":0.144573}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.465828},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b38b8ddd1328","ts":"2026-09-21T17:38:25.621826+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4053,"target":6.51,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.3748,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.247,"trend":"flat","recent_slope_pct":-0.0338,"volatility":"unknown"},"price":6.47,"volume":{"bars":248,"last_bar_volume":8763.0,"baseline_avg":34212.8,"bar_rvol":0.256132,"raw_accel":-0.861867,"smooth_accel":-0.096333,"accel_momentum":0.14631,"rvol_3bar":[0.54138,1.581397,0.256132],"trend_3bar":"MIXED","projected_rvol":5.739256},"flow":{"window_s":30,"trades":154,"trade_rate":5.133333,"buy_vol":49676.0,"sell_vol":34374.0,"unclassified_vol":0.0,"imbalance":0.182058,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.073007},"context":{"vwap":6.374363,"price_vs_vwap_pct":1.500331,"ema9":6.486904,"ema20":6.486888,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.614439,"dist_to_hod_atr":2.808755,"atr":0.014241,"spread_atr":0.702189,"own_change_pct":-0.029276,"rel_strength_pct":{"SPY":0.000497,"IWM":0.016225}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.046631},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bcaf0d36a6a6","ts":"2026-09-21T17:38:36.041723+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4175,"target":7.775,"target_label":"range_20d_high","reward_risk":19.94,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4823,"vwap":6.3749,"ext_from_open_pct":3.06,"max_ext_allowed_pct":3.0,"volume_pace":1.246,"trend":"flat","recent_slope_pct":0.0042,"volatility":"unknown"},"price":6.4823,"volume":{"bars":248,"last_bar_volume":8763.0,"baseline_avg":34212.8,"bar_rvol":0.256132,"raw_accel":-0.861867,"smooth_accel":-0.096333,"accel_momentum":0.14631,"rvol_3bar":[0.54138,1.581397,0.256132],"trend_3bar":"MIXED","projected_rvol":4.220185},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":4913.0,"sell_vol":9144.0,"unclassified_vol":0.0,"imbalance":-0.300989,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":2.139672},"context":{"vwap":6.374363,"price_vs_vwap_pct":1.693291,"ema9":6.486904,"ema20":6.486888,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.425499,"dist_to_hod_atr":1.945063,"atr":0.014241,"spread_atr":0.702189,"own_change_pct":-0.029276,"rel_strength_pct":{"SPY":0.000497,"IWM":0.016225}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.077093},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"300a4edb920a","ts":"2026-09-21T17:38:41.216149+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.92 below VWAP $12.92","plan":{"state":"PASS","setup":"","stop":12.5235,"target":13.53,"target_label":"ceiling","reward_risk":1.57,"pos_in_5d_range_pct":150.4,"room_to_5d_high_atr":-1.51},"price":12.9153,"vwap":12.9207,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":4.0,"volume_pace":0.578,"trend":"flat","recent_slope_pct":-0.0659,"volatility":"high"},"price":12.9153,"volume":{"bars":248,"last_bar_volume":12208.0,"baseline_avg":9579.55,"bar_rvol":1.274381,"raw_accel":0.678999,"smooth_accel":0.186932,"accel_momentum":0.345403,"rvol_3bar":[0.326871,0.775764,1.274381],"trend_3bar":"ACCELERATING","projected_rvol":2.309842},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":11554.0,"sell_vol":3362.0,"unclassified_vol":0.0,"imbalance":0.549209,"bid":12.91,"ask":12.96,"spread_pct":0.386548,"quote_size_imbalance":null,"quote_age_s":6.049591},"context":{"vwap":12.920667,"price_vs_vwap_pct":-0.041542,"ema9":12.968838,"ema20":13.010869,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.41087,"dist_to_hod_atr":11.201522,"atr":0.07898,"spread_atr":0.633069,"own_change_pct":0.503876,"rel_strength_pct":{"SPY":0.533649,"IWM":0.549377}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.699902},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"93e9067c8e5c","ts":"2026-09-21T17:38:41.216149+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3749,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.246,"trend":"flat","recent_slope_pct":-0.0184,"volatility":"unknown"},"price":6.475,"volume":{"bars":248,"last_bar_volume":8763.0,"baseline_avg":34212.8,"bar_rvol":0.256132,"raw_accel":-0.861867,"smooth_accel":-0.096333,"accel_momentum":0.14631,"rvol_3bar":[0.54138,1.581397,0.256132],"trend_3bar":"MIXED","projected_rvol":3.76151},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2821.0,"sell_vol":9988.0,"unclassified_vol":0.0,"imbalance":-0.559528,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.391965},"context":{"vwap":6.374363,"price_vs_vwap_pct":1.57877,"ema9":6.486904,"ema20":6.486888,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.537634,"dist_to_hod_atr":2.45766,"atr":0.014241,"spread_atr":0.702189,"own_change_pct":-0.029276,"rel_strength_pct":{"SPY":0.000497,"IWM":0.016225}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.143313},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a480ff379f7e","ts":"2026-09-21T17:38:46.378651+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.5544,"target":13.53,"target_label":"ceiling","reward_risk":1.49,"pos_in_5d_range_pct":151.0,"room_to_5d_high_atr":-1.53},"price":12.9462,"vwap":12.9207,"ext_from_open_pct":-0.49,"max_ext_allowed_pct":4.0,"volume_pace":0.578,"trend":"flat","recent_slope_pct":-0.0182,"volatility":"high"},"price":12.9462,"volume":{"bars":248,"last_bar_volume":12208.0,"baseline_avg":9579.55,"bar_rvol":1.274381,"raw_accel":0.678999,"smooth_accel":0.186932,"accel_momentum":0.345403,"rvol_3bar":[0.326871,0.775764,1.274381],"trend_3bar":"ACCELERATING","projected_rvol":2.166169},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":12394.0,"sell_vol":2917.0,"unclassified_vol":0.0,"imbalance":0.618967,"bid":12.91,"ask":12.96,"spread_pct":0.386548,"quote_size_imbalance":null,"quote_age_s":11.212093},"context":{"vwap":12.920667,"price_vs_vwap_pct":0.19761,"ema9":12.968838,"ema20":13.010869,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.186957,"dist_to_hod_atr":10.810285,"atr":0.07898,"spread_atr":0.633069,"own_change_pct":0.503876,"rel_strength_pct":{"SPY":0.533649,"IWM":0.549377}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.7888},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"79815192eec0","ts":"2026-09-21T17:38:46.378651+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4667,"target":6.94,"target_label":"ceiling","reward_risk":1.9,"pos_in_5d_range_pct":111.9,"room_to_5d_high_atr":-0.32},"price":6.63,"vwap":6.5888,"ext_from_open_pct":3.76,"max_ext_allowed_pct":3.0,"volume_pace":0.544,"trend":"flat","recent_slope_pct":0.0302,"volatility":"high"},"price":6.63,"volume":{"bars":246,"last_bar_volume":2869.0,"baseline_avg":4990.05,"bar_rvol":0.574944,"raw_accel":1.299777,"smooth_accel":0.311111,"accel_momentum":1.27782,"rvol_3bar":[0.021043,0.005164,0.574944],"trend_3bar":"MIXED","projected_rvol":0.428809},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.62,"ask":6.64,"spread_pct":0.301659,"quote_size_imbalance":null,"quote_age_s":1.567693},"context":{"vwap":6.588752,"price_vs_vwap_pct":0.626037,"ema9":6.624055,"ema20":6.645837,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.466859,"dist_to_hod_atr":12.805399,"atr":0.024209,"spread_atr":0.826155,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.029773,"IWM":0.045501}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.574944},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9f3c18a8ec97","ts":"2026-09-21T17:38:51.520729+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4668,"target":6.94,"target_label":"ceiling","reward_risk":1.9,"pos_in_5d_range_pct":111.9,"room_to_5d_high_atr":-0.32},"price":6.6301,"vwap":6.5888,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":0.544,"trend":"flat","recent_slope_pct":0.0305,"volatility":"high"},"price":6.6301,"volume":{"bars":246,"last_bar_volume":2869.0,"baseline_avg":4990.05,"bar_rvol":0.574944,"raw_accel":1.299777,"smooth_accel":0.311111,"accel_momentum":1.27782,"rvol_3bar":[0.021043,0.005164,0.574944],"trend_3bar":"MIXED","projected_rvol":0.386245},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":1.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.0,"bid":6.62,"ask":6.64,"spread_pct":0.301659,"quote_size_imbalance":null,"quote_age_s":6.709771},"context":{"vwap":6.588752,"price_vs_vwap_pct":0.627554,"ema9":6.624055,"ema20":6.645837,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.465418,"dist_to_hod_atr":12.801268,"atr":0.024209,"spread_atr":0.826155,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.029773,"IWM":0.045501}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.0},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"82572239ce53","ts":"2026-09-21T17:38:51.520729+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9408,"target":8.16,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":120.0,"room_to_5d_high_atr":-0.63},"price":8.0948,"vwap":8.0803,"ext_from_open_pct":-1.16,"max_ext_allowed_pct":3.0,"volume_pace":0.504,"trend":"flat","recent_slope_pct":0.0578,"volatility":"high"},"price":8.0948,"volume":{"bars":248,"last_bar_volume":4794.0,"baseline_avg":1547.65,"bar_rvol":3.0976,"raw_accel":4.1,"smooth_accel":0.896951,"accel_momentum":1.634279,"rvol_3bar":[0.299939,0.596087,3.0976],"trend_3bar":"ACCELERATING","projected_rvol":0.528995},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":8.0,"sell_vol":347.0,"unclassified_vol":0.0,"imbalance":-0.95493,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":15.481582},"context":{"vwap":8.080345,"price_vs_vwap_pct":0.178892,"ema9":8.081078,"ema20":8.082955,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.389507,"dist_to_hod_atr":14.869773,"atr":0.019099,"spread_atr":0.523584,"own_change_pct":0.099072,"rel_strength_pct":{"SPY":0.128845,"IWM":0.144573}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.957989},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a6487cd67e10","ts":"2026-09-21T17:38:51.520729+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.14% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":11.12,"target":12.0486,"target_label":"premarket_high","reward_risk":2.57,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.38,"vwap":11.3181,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.5,"trend":"flat","recent_slope_pct":0.0747,"volatility":"unknown"},"price":11.38,"volume":{"bars":230,"last_bar_volume":40.0,"baseline_avg":169.6,"bar_rvol":0.235849,"raw_accel":-0.943343,"smooth_accel":8.071429,"accel_momentum":6.518981,"rvol_3bar":[0.117951,5.175953,0.235849],"trend_3bar":"MIXED","projected_rvol":0.0618},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":5.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.111111,"bid":11.35,"ask":11.48,"spread_pct":1.138852,"quote_size_imbalance":null,"quote_age_s":1.050214},"context":{"vwap":11.318059,"price_vs_vwap_pct":0.547279,"ema9":11.365392,"ema20":11.344807,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.769874,"dist_to_hod_atr":9.799871,"atr":0.058164,"spread_atr":2.235058,"own_change_pct":0.176211,"rel_strength_pct":{"SPY":0.205984,"IWM":0.221712}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.026205},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c3f2d449f5be","ts":"2026-09-21T17:39:01.827430+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.5482,"target":13.53,"target_label":"ceiling","reward_risk":1.51,"pos_in_5d_range_pct":150.9,"room_to_5d_high_atr":-1.52},"price":12.94,"vwap":12.9207,"ext_from_open_pct":-0.54,"max_ext_allowed_pct":4.0,"volume_pace":0.578,"trend":"flat","recent_slope_pct":-0.0463,"volatility":"high"},"price":12.94,"volume":{"bars":249,"last_bar_volume":16753.0,"baseline_avg":10008.05,"bar_rvol":1.673952,"raw_accel":0.372297,"smooth_accel":1.543668,"accel_momentum":1.356736,"rvol_3bar":[0.775764,1.274381,1.673952],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":1149.0,"sell_vol":457.0,"unclassified_vol":0.0,"imbalance":0.430884,"bid":12.94,"ask":13.0,"spread_pct":0.462606,"quote_size_imbalance":null,"quote_age_s":0.954552},"context":{"vwap":12.920742,"price_vs_vwap_pct":0.149047,"ema9":12.967071,"ema20":13.006025,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.231884,"dist_to_hod_atr":11.1312,"atr":0.07726,"spread_atr":0.776595,"own_change_pct":-0.038565,"rel_strength_pct":{"SPY":-0.033387,"IWM":0.010475}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.72128},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4d0ae37e0b49","ts":"2026-09-21T17:39:07.093371+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.5782,"target":13.53,"target_label":"ceiling","reward_risk":1.43,"pos_in_5d_range_pct":151.5,"room_to_5d_high_atr":-1.54},"price":12.97,"vwap":12.9207,"ext_from_open_pct":-0.31,"max_ext_allowed_pct":4.0,"volume_pace":0.577,"trend":"flat","recent_slope_pct":0.0,"volatility":"high"},"price":12.97,"volume":{"bars":249,"last_bar_volume":16753.0,"baseline_avg":10008.05,"bar_rvol":1.673952,"raw_accel":0.372297,"smooth_accel":1.543668,"accel_momentum":1.356736,"rvol_3bar":[0.775764,1.274381,1.673952],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":1549.0,"sell_vol":407.0,"unclassified_vol":0.0,"imbalance":0.583845,"bid":12.97,"ask":13.0,"spread_pct":0.231036,"quote_size_imbalance":null,"quote_age_s":0.898845},"context":{"vwap":12.920742,"price_vs_vwap_pct":0.381231,"ema9":12.967071,"ema20":13.006025,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.014493,"dist_to_hod_atr":10.742902,"atr":0.07726,"spread_atr":0.388298,"own_change_pct":-0.038565,"rel_strength_pct":{"SPY":-0.033387,"IWM":0.010475}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.977328},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a5b350823917","ts":"2026-09-21T17:39:07.093371+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.16,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0803,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.503,"trend":"flat","recent_slope_pct":0.0084,"volatility":"high"},"price":8.075,"volume":{"bars":249,"last_bar_volume":703.0,"baseline_avg":1714.7,"bar_rvol":0.409984,"raw_accel":-0.853358,"smooth_accel":2.249369,"accel_momentum":1.352418,"rvol_3bar":[0.596087,3.0976,0.409984],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":12.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.6,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":7.98115},"context":{"vwap":8.080347,"price_vs_vwap_pct":-0.066176,"ema9":8.083822,"ema20":8.084083,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":15.59726,"atr":0.019478,"spread_atr":0.513406,"own_change_pct":0.061806,"rel_strength_pct":{"SPY":0.066985,"IWM":0.110846}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.245991},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bfbbfbab0d7c","ts":"2026-09-21T17:39:07.093371+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7111,"target":8.88,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.22},"price":8.82,"vwap":8.7015,"ext_from_open_pct":1.15,"max_ext_allowed_pct":3.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.1201,"volatility":"medium"},"price":8.82,"volume":{"bars":249,"last_bar_volume":14272.0,"baseline_avg":7158.15,"bar_rvol":1.993811,"raw_accel":4.65004,"smooth_accel":0.181166,"accel_momentum":0.378304,"rvol_3bar":[2.486968,0.342899,1.993811],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":254.0,"sell_vol":1681.0,"unclassified_vol":0.0,"imbalance":-0.737468,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.994639},"context":{"vwap":8.701531,"price_vs_vwap_pct":1.361474,"ema9":8.847944,"ema20":8.848788,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.800278,"dist_to_hod_atr":15.783504,"atr":0.016099,"spread_atr":0.621153,"own_change_pct":-0.43573,"rel_strength_pct":{"SPY":-0.430551,"IWM":-0.38669}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.470371},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"006e98d24eda","ts":"2026-09-21T17:39:37.980681+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4206,"target":7.775,"target_label":"range_20d_high","reward_risk":19.88,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4855,"vwap":6.3749,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":1.241,"trend":"flat","recent_slope_pct":-0.0062,"volatility":"unknown"},"price":6.4855,"volume":{"bars":249,"last_bar_volume":90861.0,"baseline_avg":33480.95,"bar_rvol":2.713812,"raw_accel":9.368709,"smooth_accel":0.752009,"accel_momentum":0.848342,"rvol_3bar":[1.581397,0.256132,2.713812],"trend_3bar":"MIXED","projected_rvol":0.086535},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":630.0,"sell_vol":983.0,"unclassified_vol":0.0,"imbalance":-0.218847,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":4.957079},"context":{"vwap":6.374859,"price_vs_vwap_pct":1.735591,"ema9":6.483523,"ema20":6.48528,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.376344,"dist_to_hod_atr":1.687698,"atr":0.014517,"spread_atr":0.688856,"own_change_pct":-0.200524,"rel_strength_pct":{"SPY":-0.195346,"IWM":-0.151484}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.593909},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"09d1b7255fa0","ts":"2026-09-21T17:39:37.980681+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7218,"target":8.94,"target_label":"ceiling","reward_risk":1.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8099,"vwap":8.7868,"ext_from_open_pct":3.4,"max_ext_allowed_pct":4.0,"volume_pace":0.483,"trend":"flat","recent_slope_pct":0.0014,"volatility":"unknown"},"price":8.8099,"volume":{"bars":249,"last_bar_volume":45289.0,"baseline_avg":72209.0,"bar_rvol":0.627193,"raw_accel":-0.567089,"smooth_accel":0.149283,"accel_momentum":-0.207075,"rvol_3bar":[0.98991,1.544845,0.627193],"trend_3bar":"MIXED","projected_rvol":0.6064},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":9489.0,"sell_vol":10969.0,"unclassified_vol":0.0,"imbalance":-0.072343,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":0.301483},"context":{"vwap":8.78676,"price_vs_vwap_pct":0.263347,"ema9":8.817194,"ema20":8.833834,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.455257,"dist_to_hod_atr":4.212964,"atr":0.030881,"spread_atr":0.323825,"own_change_pct":-0.113379,"rel_strength_pct":{"SPY":-0.1082,"IWM":-0.064338}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.045373},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"db2e299e57ec","ts":"2026-09-21T17:39:43.102672+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4667,"target":6.94,"target_label":"ceiling","reward_risk":1.9,"pos_in_5d_range_pct":111.9,"room_to_5d_high_atr":-0.32},"price":6.63,"vwap":6.5888,"ext_from_open_pct":3.76,"max_ext_allowed_pct":3.0,"volume_pace":0.542,"trend":"flat","recent_slope_pct":0.0587,"volatility":"high"},"price":6.63,"volume":{"bars":247,"last_bar_volume":1655.0,"baseline_avg":4702.05,"bar_rvol":0.351974,"raw_accel":-0.423144,"smooth_accel":2.301887,"accel_momentum":1.990776,"rvol_3bar":[0.005164,0.574944,0.351974],"trend_3bar":"MIXED","projected_rvol":0.307},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":777.0,"sell_vol":160.0,"unclassified_vol":0.0,"imbalance":0.658485,"bid":6.62,"ask":6.64,"spread_pct":0.301659,"quote_size_imbalance":null,"quote_age_s":4.856778},"context":{"vwap":6.588782,"price_vs_vwap_pct":0.625577,"ema9":6.625264,"ema20":6.644339,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.466859,"dist_to_hod_atr":13.163043,"atr":0.023551,"spread_atr":0.849229,"own_change_pct":0.152568,"rel_strength_pct":{"SPY":0.157747,"IWM":0.201608}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.23177},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8615c428756c","ts":"2026-09-21T17:39:43.102672+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4053,"target":6.51,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.3749,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.241,"trend":"flat","recent_slope_pct":-0.054,"volatility":"unknown"},"price":6.47,"volume":{"bars":249,"last_bar_volume":90861.0,"baseline_avg":33480.95,"bar_rvol":2.713812,"raw_accel":9.368709,"smooth_accel":0.752009,"accel_momentum":0.848342,"rvol_3bar":[1.581397,0.256132,2.713812],"trend_3bar":"MIXED","projected_rvol":0.116539},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1059.0,"sell_vol":935.0,"unclassified_vol":0.0,"imbalance":0.062187,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.481209},"context":{"vwap":6.374859,"price_vs_vwap_pct":1.492449,"ema9":6.483523,"ema20":6.48528,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.614439,"dist_to_hod_atr":2.755425,"atr":0.014517,"spread_atr":0.688856,"own_change_pct":-0.200524,"rel_strength_pct":{"SPY":-0.195346,"IWM":-0.151484}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.168763},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"605ea2d45599","ts":"2026-09-21T17:39:48.216548+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.9382,"target":8.16,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":119.9,"room_to_5d_high_atr":-0.63},"price":8.0922,"vwap":8.0803,"ext_from_open_pct":-1.19,"max_ext_allowed_pct":4.0,"volume_pace":0.502,"trend":"flat","recent_slope_pct":0.0509,"volatility":"high"},"price":8.0922,"volume":{"bars":249,"last_bar_volume":703.0,"baseline_avg":1714.7,"bar_rvol":0.409984,"raw_accel":-0.853358,"smooth_accel":2.249369,"accel_momentum":1.352418,"rvol_3bar":[0.596087,3.0976,0.409984],"trend_3bar":"MIXED","projected_rvol":0.126275},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":66.0,"sell_vol":101.0,"unclassified_vol":0.0,"imbalance":-0.209581,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":40.725007},"context":{"vwap":8.080347,"price_vs_vwap_pct":0.146687,"ema9":8.083822,"ema20":8.084083,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.420538,"dist_to_hod_atr":14.714202,"atr":0.019478,"spread_atr":0.513406,"own_change_pct":0.061806,"rel_strength_pct":{"SPY":0.066985,"IWM":0.110846}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.085925},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f8a7beb8511f","ts":"2026-09-21T17:39:58.553082+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.16,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0803,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.501,"trend":"flat","recent_slope_pct":0.0084,"volatility":"high"},"price":8.075,"volume":{"bars":249,"last_bar_volume":703.0,"baseline_avg":1714.7,"bar_rvol":0.409984,"raw_accel":-0.853358,"smooth_accel":2.249369,"accel_momentum":1.352418,"rvol_3bar":[0.596087,3.0976,0.409984],"trend_3bar":"MIXED","projected_rvol":0.30179},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":66.0,"sell_vol":431.0,"unclassified_vol":0.0,"imbalance":-0.734406,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":2.978067},"context":{"vwap":8.080347,"price_vs_vwap_pct":-0.066176,"ema9":8.083822,"ema20":8.084083,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":15.59726,"atr":0.019478,"spread_atr":0.513406,"own_change_pct":0.061806,"rel_strength_pct":{"SPY":0.066985,"IWM":0.110846}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.301095},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"64faa6117832","ts":"2026-09-21T17:39:58.553082+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7146,"target":8.94,"target_label":"ceiling","reward_risk":1.56,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8026,"vwap":8.7868,"ext_from_open_pct":3.32,"max_ext_allowed_pct":3.0,"volume_pace":0.482,"trend":"flat","recent_slope_pct":-0.0152,"volatility":"unknown"},"price":8.8026,"volume":{"bars":249,"last_bar_volume":45289.0,"baseline_avg":72209.0,"bar_rvol":0.627193,"raw_accel":-0.567089,"smooth_accel":0.149283,"accel_momentum":-0.207075,"rvol_3bar":[0.98991,1.544845,0.627193],"trend_3bar":"MIXED","projected_rvol":0.462113},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":9985.0,"sell_vol":11465.0,"unclassified_vol":0.0,"imbalance":-0.068998,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":0.041559},"context":{"vwap":8.78676,"price_vs_vwap_pct":0.180267,"ema9":8.817194,"ema20":8.833834,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.536913,"dist_to_hod_atr":4.449356,"atr":0.030881,"spread_atr":0.323825,"own_change_pct":-0.113379,"rel_strength_pct":{"SPY":-0.1082,"IWM":-0.064338}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.043275},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3cdf7caeb75f","ts":"2026-09-21T17:40:03.723654+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.18,"target":12.0486,"target_label":"premarket_high","reward_risk":2.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.4,"vwap":11.3181,"ext_from_open_pct":-1.72,"max_ext_allowed_pct":3.0,"volume_pace":0.498,"trend":"flat","recent_slope_pct":-0.0439,"volatility":"unknown"},"price":11.4,"volume":{"bars":232,"last_bar_volume":8.0,"baseline_avg":170.7,"bar_rvol":0.046866,"raw_accel":-0.812537,"smooth_accel":-0.921918,"accel_momentum":-12.298967,"rvol_3bar":[0.235849,0.052755,0.046866],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":34.0,"sell_vol":8.0,"unclassified_vol":0.0,"imbalance":0.619048,"bid":11.37,"ask":11.48,"spread_pct":0.962801,"quote_size_imbalance":null,"quote_age_s":29.540462},"context":{"vwap":11.318066,"price_vs_vwap_pct":0.723925,"ema9":11.368651,"ema20":11.350239,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.60251,"dist_to_hod_atr":9.831531,"atr":0.055942,"spread_atr":1.966306,"own_change_pct":0.176211,"rel_strength_pct":{"SPY":0.186569,"IWM":0.220003}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.029012},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"f2a9e370fe99","ts":"2026-09-21T17:40:09.043934+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3514,"target":8.82,"target_label":"prev_day_high","reward_risk":0.09,"pos_in_5d_range_pct":81.5,"room_to_5d_high_atr":0.31},"price":8.78,"vwap":8.7022,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":-0.1782,"volatility":"medium"},"price":8.78,"volume":{"bars":250,"last_bar_volume":953.0,"baseline_avg":7843.75,"bar_rvol":0.121498,"raw_accel":-0.933226,"smooth_accel":-0.547964,"accel_momentum":-0.72913,"rvol_3bar":[0.342899,1.993811,0.121498],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":129,"trade_rate":4.3,"buy_vol":7376.0,"sell_vol":17782.0,"unclassified_vol":0.0,"imbalance":-0.413626,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":0.189516},"context":{"vwap":8.701562,"price_vs_vwap_pct":0.901419,"ema9":8.848295,"ema20":8.848875,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.241093,"dist_to_hod_atr":17.228471,"atr":0.017071,"spread_atr":0.585803,"own_change_pct":-0.059853,"rel_strength_pct":{"SPY":-0.049495,"IWM":-0.016062}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.050255},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b5161f8f12d1","ts":"2026-09-21T17:40:24.641026+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4141,"target":7.775,"target_label":"range_20d_high","reward_risk":20.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4789,"vwap":6.3749,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":1.238,"trend":"flat","recent_slope_pct":-0.039,"volatility":"unknown"},"price":6.4789,"volume":{"bars":250,"last_bar_volume":6823.0,"baseline_avg":37285.05,"bar_rvol":0.182996,"raw_accel":-0.924907,"smooth_accel":-0.05815,"accel_momentum":-0.810159,"rvol_3bar":[0.256132,2.713812,0.182996],"trend_3bar":"MIXED","projected_rvol":0.485686},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1356.0,"sell_vol":6125.0,"unclassified_vol":0.0,"imbalance":-0.637482,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.381136},"context":{"vwap":6.374896,"price_vs_vwap_pct":1.631465,"ema9":6.481819,"ema20":6.484301,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.477727,"dist_to_hod_atr":2.130985,"atr":0.014594,"spread_atr":0.685204,"own_change_pct":-0.154202,"rel_strength_pct":{"SPY":-0.143844,"IWM":-0.110411}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.116656},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f86c16381309","ts":"2026-09-21T17:40:24.641026+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7268,"target":8.94,"target_label":"ceiling","reward_risk":1.42,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.815,"vwap":8.7869,"ext_from_open_pct":3.46,"max_ext_allowed_pct":4.0,"volume_pace":0.483,"trend":"flat","recent_slope_pct":-0.0082,"volatility":"unknown"},"price":8.815,"volume":{"bars":250,"last_bar_volume":33762.0,"baseline_avg":73635.6,"bar_rvol":0.458501,"raw_accel":-0.254521,"smooth_accel":0.089237,"accel_momentum":-0.060047,"rvol_3bar":[1.544845,0.627193,0.458501],"trend_3bar":"DECELERATING","projected_rvol":1.863798},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":48111.0,"sell_vol":10563.0,"unclassified_vol":0.0,"imbalance":0.639943,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.107174},"context":{"vwap":8.786793,"price_vs_vwap_pct":0.321014,"ema9":8.813755,"ema20":8.830611,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.39821,"dist_to_hod_atr":4.171122,"atr":0.029968,"spread_atr":0.33369,"own_change_pct":-0.226757,"rel_strength_pct":{"SPY":-0.2164,"IWM":-0.182966}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.293414},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"c35a314dca3c","ts":"2026-09-21T17:40:29.821720+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4053,"target":6.51,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.3749,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.238,"trend":"flat","recent_slope_pct":-0.0665,"volatility":"unknown"},"price":6.47,"volume":{"bars":250,"last_bar_volume":6823.0,"baseline_avg":37285.05,"bar_rvol":0.182996,"raw_accel":-0.924907,"smooth_accel":-0.05815,"accel_momentum":-0.810159,"rvol_3bar":[0.256132,2.713812,0.182996],"trend_3bar":"MIXED","projected_rvol":0.512634},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":2025.0,"sell_vol":7475.0,"unclassified_vol":0.0,"imbalance":-0.573684,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.182261},"context":{"vwap":6.374896,"price_vs_vwap_pct":1.491855,"ema9":6.481819,"ema20":6.484301,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.614439,"dist_to_hod_atr":2.740817,"atr":0.014594,"spread_atr":0.685204,"own_change_pct":-0.154202,"rel_strength_pct":{"SPY":-0.143844,"IWM":-0.110411}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.104982},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0185ff485508","ts":"2026-09-21T17:40:34.934441+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.416,"target":7.775,"target_label":"range_20d_high","reward_risk":19.97,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4808,"vwap":6.3749,"ext_from_open_pct":3.03,"max_ext_allowed_pct":3.0,"volume_pace":1.237,"trend":"flat","recent_slope_pct":-0.0332,"volatility":"unknown"},"price":6.4808,"volume":{"bars":250,"last_bar_volume":6823.0,"baseline_avg":37285.05,"bar_rvol":0.182996,"raw_accel":-0.924907,"smooth_accel":-0.05815,"accel_momentum":-0.810159,"rvol_3bar":[0.256132,2.713812,0.182996],"trend_3bar":"MIXED","projected_rvol":0.442953},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":2126.0,"sell_vol":3473.0,"unclassified_vol":0.0,"imbalance":-0.240579,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":1.156439},"context":{"vwap":6.374896,"price_vs_vwap_pct":1.66127,"ema9":6.481819,"ema20":6.484301,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.448541,"dist_to_hod_atr":2.000797,"atr":0.014594,"spread_atr":0.685204,"own_change_pct":-0.154202,"rel_strength_pct":{"SPY":-0.143844,"IWM":-0.110411}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.044025},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2c9e10708c28","ts":"2026-09-21T17:40:40.094253+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3749,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.237,"trend":"flat","recent_slope_pct":-0.0511,"volatility":"unknown"},"price":6.475,"volume":{"bars":250,"last_bar_volume":6823.0,"baseline_avg":37285.05,"bar_rvol":0.182996,"raw_accel":-0.924907,"smooth_accel":-0.05815,"accel_momentum":-0.810159,"rvol_3bar":[0.256132,2.713812,0.182996],"trend_3bar":"MIXED","projected_rvol":0.3953},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2059.0,"sell_vol":3378.0,"unclassified_vol":0.0,"imbalance":-0.242597,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.371271},"context":{"vwap":6.374896,"price_vs_vwap_pct":1.570288,"ema9":6.481819,"ema20":6.484301,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.537634,"dist_to_hod_atr":2.398215,"atr":0.014594,"spread_atr":0.685204,"own_change_pct":-0.154202,"rel_strength_pct":{"SPY":-0.143844,"IWM":-0.110411}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.044394},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ca478dca8410","ts":"2026-09-21T17:40:45.221232+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7901,"vwap":8.7868,"ext_from_open_pct":3.17,"max_ext_allowed_pct":3.0,"volume_pace":0.483,"trend":"flat","recent_slope_pct":-0.0647,"volatility":"unknown"},"price":8.7901,"volume":{"bars":250,"last_bar_volume":33762.0,"baseline_avg":73635.6,"bar_rvol":0.458501,"raw_accel":-0.254521,"smooth_accel":0.089237,"accel_momentum":-0.060047,"rvol_3bar":[1.544845,0.627193,0.458501],"trend_3bar":"DECELERATING","projected_rvol":1.876601},"flow":{"window_s":30,"trades":276,"trade_rate":9.2,"buy_vol":53487.0,"sell_vol":36017.0,"unclassified_vol":0.0,"imbalance":0.195187,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.8794},"context":{"vwap":8.786793,"price_vs_vwap_pct":0.037635,"ema9":8.813755,"ema20":8.830611,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.676734,"dist_to_hod_atr":5.00201,"atr":0.029968,"spread_atr":0.33369,"own_change_pct":-0.226757,"rel_strength_pct":{"SPY":-0.2164,"IWM":-0.182966}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.089493},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"d7e142e660c4","ts":"2026-09-21T17:40:50.421476+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4667,"target":6.94,"target_label":"ceiling","reward_risk":1.9,"pos_in_5d_range_pct":111.9,"room_to_5d_high_atr":-0.32},"price":6.63,"vwap":6.5889,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":0.541,"trend":"flat","recent_slope_pct":0.0719,"volatility":"high"},"price":6.63,"volume":{"bars":248,"last_bar_volume":4412.0,"baseline_avg":4425.25,"bar_rvol":0.997006,"raw_accel":1.665861,"smooth_accel":56.282051,"accel_momentum":53.980164,"rvol_3bar":[0.574944,0.351974,0.997006],"trend_3bar":"MIXED","projected_rvol":0.432398},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1532.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.62,"ask":6.63,"spread_pct":0.150943,"quote_size_imbalance":null,"quote_age_s":2.252968},"context":{"vwap":6.588872,"price_vs_vwap_pct":0.624201,"ema9":6.626211,"ema20":6.642973,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.466859,"dist_to_hod_atr":13.727217,"atr":0.022583,"spread_atr":0.442813,"own_change_pct":0.151057,"rel_strength_pct":{"SPY":0.161415,"IWM":0.194849}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.997006},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4e226bf9c23b","ts":"2026-09-21T17:40:50.421476+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.05% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":11.15,"target":12.0486,"target_label":"premarket_high","reward_risk":2.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.39,"vwap":11.3183,"ext_from_open_pct":-1.81,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0615,"volatility":"unknown"},"price":11.39,"volume":{"bars":232,"last_bar_volume":8.0,"baseline_avg":170.7,"bar_rvol":0.046866,"raw_accel":-0.812537,"smooth_accel":-0.921918,"accel_momentum":-12.298967,"rvol_3bar":[0.235849,0.052755,0.046866],"trend_3bar":"DECELERATING","projected_rvol":2.948781},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":124.0,"sell_vol":265.0,"unclassified_vol":0.0,"imbalance":-0.362468,"bid":11.36,"ask":11.48,"spread_pct":1.050788,"quote_size_imbalance":null,"quote_age_s":0.350441},"context":{"vwap":11.318066,"price_vs_vwap_pct":0.635571,"ema9":11.368651,"ema20":11.350239,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.686192,"dist_to_hod_atr":10.010286,"atr":0.055942,"spread_atr":2.145061,"own_change_pct":0.176211,"rel_strength_pct":{"SPY":0.186569,"IWM":0.220003}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.016987},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"3ee3e3311075","ts":"2026-09-21T17:40:55.621284+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.375,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.236,"trend":"flat","recent_slope_pct":-0.0357,"volatility":"unknown"},"price":6.48,"volume":{"bars":250,"last_bar_volume":6823.0,"baseline_avg":37285.05,"bar_rvol":0.182996,"raw_accel":-0.924907,"smooth_accel":-0.05815,"accel_momentum":-0.810159,"rvol_3bar":[0.256132,2.713812,0.182996],"trend_3bar":"MIXED","projected_rvol":0.403946},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":3124.0,"sell_vol":2901.0,"unclassified_vol":0.0,"imbalance":0.037012,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.080995},"context":{"vwap":6.374896,"price_vs_vwap_pct":1.64872,"ema9":6.481819,"ema20":6.484301,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.055613,"atr":0.014594,"spread_atr":0.685204,"own_change_pct":-0.154202,"rel_strength_pct":{"SPY":-0.143844,"IWM":-0.110411}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.006773},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b11086e981fd","ts":"2026-09-21T17:41:00.797290+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3514,"target":8.82,"target_label":"prev_day_high","reward_risk":0.08,"pos_in_5d_range_pct":82.2,"room_to_5d_high_atr":0.3},"price":8.785,"vwap":8.7023,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":-0.1406,"volatility":"medium"},"price":8.785,"volume":{"bars":251,"last_bar_volume":26523.0,"baseline_avg":7634.75,"bar_rvol":3.473984,"raw_accel":12.895936,"smooth_accel":0.937802,"accel_momentum":1.485766,"rvol_3bar":[1.993811,0.121498,3.473984],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":317.0,"sell_vol":484.0,"unclassified_vol":0.0,"imbalance":-0.208489,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":1.034266},"context":{"vwap":8.702321,"price_vs_vwap_pct":0.950084,"ema9":8.845636,"ema20":8.847553,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.185991,"dist_to_hod_atr":13.879137,"atr":0.02083,"spread_atr":0.480081,"own_change_pct":-0.225861,"rel_strength_pct":{"SPY":-0.214248,"IWM":-0.161057}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.724289},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"283e118c9799","ts":"2026-09-21T17:41:00.797290+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4053,"target":6.51,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.375,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.236,"trend":"flat","recent_slope_pct":-0.0516,"volatility":"unknown"},"price":6.47,"volume":{"bars":251,"last_bar_volume":14589.0,"baseline_avg":36133.0,"bar_rvol":0.403758,"raw_accel":0.615033,"smooth_accel":0.189358,"accel_momentum":0.247507,"rvol_3bar":[2.713812,0.182996,0.403758],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2912.0,"sell_vol":2377.0,"unclassified_vol":0.0,"imbalance":0.101153,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.061075},"context":{"vwap":6.374975,"price_vs_vwap_pct":1.490599,"ema9":6.480015,"ema20":6.483206,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.614439,"dist_to_hod_atr":2.736721,"atr":0.014616,"spread_atr":0.68418,"own_change_pct":-0.111111,"rel_strength_pct":{"SPY":-0.099498,"IWM":-0.046307}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.040842},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"66af48a37a4e","ts":"2026-09-21T17:41:11.059509+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.795,"vwap":8.7869,"ext_from_open_pct":3.23,"max_ext_allowed_pct":4.0,"volume_pace":0.484,"trend":"flat","recent_slope_pct":-0.0193,"volatility":"unknown"},"price":8.795,"volume":{"bars":251,"last_bar_volume":129630.0,"baseline_avg":73129.65,"bar_rvol":1.772605,"raw_accel":2.839524,"smooth_accel":-0.069228,"accel_momentum":-0.158464,"rvol_3bar":[0.627193,0.458501,1.772605],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":317,"trade_rate":10.566667,"buy_vol":41456.0,"sell_vol":60376.0,"unclassified_vol":0.0,"imbalance":-0.185796,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":3.547105},"context":{"vwap":8.786885,"price_vs_vwap_pct":0.092351,"ema9":8.811604,"ema20":8.827982,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.621924,"dist_to_hod_atr":4.725508,"atr":0.030685,"spread_atr":0.325897,"own_change_pct":-0.022714,"rel_strength_pct":{"SPY":-0.011102,"IWM":0.04209}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.329343},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"69718e7f4282","ts":"2026-09-21T17:41:16.195861+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.92 below VWAP $12.92","plan":{"state":"PASS","setup":"","stop":12.5282,"target":13.53,"target_label":"ceiling","reward_risk":1.56,"pos_in_5d_range_pct":150.5,"room_to_5d_high_atr":-1.51},"price":12.92,"vwap":12.9208,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.573,"trend":"flat","recent_slope_pct":-0.085,"volatility":"high"},"price":12.92,"volume":{"bars":251,"last_bar_volume":966.0,"baseline_avg":10294.25,"bar_rvol":0.093839,"raw_accel":-0.803339,"smooth_accel":0.002303,"accel_momentum":-1.128208,"rvol_3bar":[1.673952,0.467307,0.093839],"trend_3bar":"DECELERATING","projected_rvol":0.518221},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":255.0,"sell_vol":1486.0,"unclassified_vol":0.0,"imbalance":-0.707065,"bid":12.89,"ask":12.93,"spread_pct":0.309837,"quote_size_imbalance":null,"quote_age_s":2.887822},"context":{"vwap":12.92078,"price_vs_vwap_pct":-0.00604,"ema9":12.959725,"ema20":12.99534,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.376812,"dist_to_hod_atr":11.99803,"atr":0.073345,"spread_atr":0.545365,"own_change_pct":-0.154321,"rel_strength_pct":{"SPY":-0.142708,"IWM":-0.089517}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.06635},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"443c7ed98dc5","ts":"2026-09-21T17:41:21.365686+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4567,"target":6.94,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":111.4,"room_to_5d_high_atr":-0.31},"price":6.62,"vwap":6.5889,"ext_from_open_pct":3.6,"max_ext_allowed_pct":3.0,"volume_pace":0.54,"trend":"flat","recent_slope_pct":-0.0002,"volatility":"high"},"price":6.62,"volume":{"bars":249,"last_bar_volume":1624.0,"baseline_avg":4440.55,"bar_rvol":0.36572,"raw_accel":-0.631913,"smooth_accel":1.555999,"accel_momentum":-54.726053,"rvol_3bar":[0.351974,0.997006,0.36572],"trend_3bar":"MIXED","projected_rvol":0.055652},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":17.0,"sell_vol":87.0,"unclassified_vol":0.0,"imbalance":-0.673077,"bid":6.62,"ask":6.63,"spread_pct":0.150943,"quote_size_imbalance":null,"quote_age_s":0.02605},"context":{"vwap":6.588897,"price_vs_vwap_pct":0.472058,"ema9":6.626969,"ema20":6.641737,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.610951,"dist_to_hod_atr":14.066935,"atr":0.022748,"spread_atr":0.439592,"own_change_pct":0.151057,"rel_strength_pct":{"SPY":0.16267,"IWM":0.215862}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.246158},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"972bf3d450e2","ts":"2026-09-21T17:41:36.982380+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3751,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.234,"trend":"flat","recent_slope_pct":-0.0207,"volatility":"unknown"},"price":6.48,"volume":{"bars":251,"last_bar_volume":14589.0,"baseline_avg":36133.0,"bar_rvol":0.403758,"raw_accel":0.615033,"smooth_accel":0.189358,"accel_momentum":0.247507,"rvol_3bar":[2.713812,0.182996,0.403758],"trend_3bar":"MIXED","projected_rvol":0.651239},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":2245.0,"sell_vol":6934.0,"unclassified_vol":0.0,"imbalance":-0.51084,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":1.001934},"context":{"vwap":6.374975,"price_vs_vwap_pct":1.647463,"ema9":6.480015,"ema20":6.483206,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.052541,"atr":0.014616,"spread_atr":0.68418,"own_change_pct":-0.111111,"rel_strength_pct":{"SPY":-0.099498,"IWM":-0.046307}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.206256},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5cd2f58bc4b5","ts":"2026-09-21T17:41:42.156672+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3751,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.233,"trend":"flat","recent_slope_pct":-0.0361,"volatility":"unknown"},"price":6.475,"volume":{"bars":251,"last_bar_volume":14589.0,"baseline_avg":36133.0,"bar_rvol":0.403758,"raw_accel":0.615033,"smooth_accel":0.189358,"accel_momentum":0.247507,"rvol_3bar":[2.713812,0.182996,0.403758],"trend_3bar":"MIXED","projected_rvol":0.595412},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":2222.0,"sell_vol":1991.0,"unclassified_vol":0.0,"imbalance":0.05483,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.034101},"context":{"vwap":6.374975,"price_vs_vwap_pct":1.569031,"ema9":6.480015,"ema20":6.483206,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.537634,"dist_to_hod_atr":2.394631,"atr":0.014616,"spread_atr":0.68418,"own_change_pct":-0.111111,"rel_strength_pct":{"SPY":-0.099498,"IWM":-0.046307}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.022138},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d723aff301ff","ts":"2026-09-21T17:41:42.156672+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.33,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8,"vwap":8.7869,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.483,"trend":"flat","recent_slope_pct":-0.008,"volatility":"unknown"},"price":8.8,"volume":{"bars":251,"last_bar_volume":129630.0,"baseline_avg":73129.65,"bar_rvol":1.772605,"raw_accel":2.839524,"smooth_accel":-0.069228,"accel_momentum":-0.158464,"rvol_3bar":[0.627193,0.458501,1.772605],"trend_3bar":"MIXED","projected_rvol":0.716033},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":4627.0,"sell_vol":1551.0,"unclassified_vol":0.0,"imbalance":0.497896,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.012322},"context":{"vwap":8.786885,"price_vs_vwap_pct":0.149254,"ema9":8.811604,"ema20":8.827982,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.565996,"dist_to_hod_atr":4.56256,"atr":0.030685,"spread_atr":0.325897,"own_change_pct":-0.022714,"rel_strength_pct":{"SPY":-0.011102,"IWM":0.04209}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.882573},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"647b01c6c5e5","ts":"2026-09-21T17:41:47.316917+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.5382,"target":13.53,"target_label":"ceiling","reward_risk":1.53,"pos_in_5d_range_pct":150.7,"room_to_5d_high_atr":-1.52},"price":12.93,"vwap":12.9208,"ext_from_open_pct":-0.61,"max_ext_allowed_pct":3.0,"volume_pace":0.572,"trend":"flat","recent_slope_pct":-0.0695,"volatility":"high"},"price":12.93,"volume":{"bars":251,"last_bar_volume":966.0,"baseline_avg":10294.25,"bar_rvol":0.093839,"raw_accel":-0.803339,"smooth_accel":0.002303,"accel_momentum":-1.128208,"rvol_3bar":[1.673952,0.467307,0.093839],"trend_3bar":"DECELERATING","projected_rvol":0.313863},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":515.0,"sell_vol":593.0,"unclassified_vol":0.0,"imbalance":-0.070397,"bid":12.93,"ask":12.96,"spread_pct":0.23175,"quote_size_imbalance":null,"quote_age_s":3.055329},"context":{"vwap":12.92078,"price_vs_vwap_pct":0.071355,"ema9":12.959725,"ema20":12.99534,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.304348,"dist_to_hod_atr":11.861689,"atr":0.073345,"spread_atr":0.409024,"own_change_pct":-0.154321,"rel_strength_pct":{"SPY":-0.142708,"IWM":-0.089517}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.006606},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"0d5b51eefb6d","ts":"2026-09-21T17:41:47.316917+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.34,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7986,"vwap":8.7869,"ext_from_open_pct":3.27,"max_ext_allowed_pct":4.0,"volume_pace":0.483,"trend":"flat","recent_slope_pct":-0.0111,"volatility":"unknown"},"price":8.7986,"volume":{"bars":251,"last_bar_volume":129630.0,"baseline_avg":73129.65,"bar_rvol":1.772605,"raw_accel":2.839524,"smooth_accel":-0.069228,"accel_momentum":-0.158464,"rvol_3bar":[0.627193,0.458501,1.772605],"trend_3bar":"MIXED","projected_rvol":0.644759},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":4731.0,"sell_vol":1199.0,"unclassified_vol":0.0,"imbalance":0.595616,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.216519},"context":{"vwap":8.786885,"price_vs_vwap_pct":0.133321,"ema9":8.811604,"ema20":8.827982,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.581655,"dist_to_hod_atr":4.608186,"atr":0.030685,"spread_atr":0.325897,"own_change_pct":-0.022714,"rel_strength_pct":{"SPY":-0.011102,"IWM":0.04209}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.055791},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a3083e202b9c","ts":"2026-09-21T17:41:57.640615+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.79,"vwap":8.7869,"ext_from_open_pct":3.17,"max_ext_allowed_pct":3.0,"volume_pace":0.482,"trend":"flat","recent_slope_pct":-0.0307,"volatility":"unknown"},"price":8.79,"volume":{"bars":251,"last_bar_volume":129630.0,"baseline_avg":73129.65,"bar_rvol":1.772605,"raw_accel":2.839524,"smooth_accel":-0.069228,"accel_momentum":-0.158464,"rvol_3bar":[0.627193,0.458501,1.772605],"trend_3bar":"MIXED","projected_rvol":0.612649},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":4697.0,"sell_vol":7046.0,"unclassified_vol":0.0,"imbalance":-0.200034,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.664897},"context":{"vwap":8.786885,"price_vs_vwap_pct":0.035448,"ema9":8.811604,"ema20":8.827982,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.677852,"dist_to_hod_atr":4.888457,"atr":0.030685,"spread_atr":0.325897,"own_change_pct":-0.022714,"rel_strength_pct":{"SPY":-0.011102,"IWM":0.04209}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.354581},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"da9123e175a2","ts":"2026-09-21T17:42:02.731919+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.795,"vwap":8.7869,"ext_from_open_pct":3.23,"max_ext_allowed_pct":4.0,"volume_pace":0.482,"trend":"flat","recent_slope_pct":-0.0398,"volatility":"unknown"},"price":8.795,"volume":{"bars":252,"last_bar_volume":48956.0,"baseline_avg":74871.2,"bar_rvol":0.65387,"raw_accel":-0.622341,"smooth_accel":-0.008683,"accel_momentum":0.060545,"rvol_3bar":[0.458501,1.772605,0.65387],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":5292.0,"sell_vol":8275.0,"unclassified_vol":0.0,"imbalance":-0.219872,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.11921},"context":{"vwap":8.786913,"price_vs_vwap_pct":0.092037,"ema9":8.808283,"ema20":8.824841,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.621924,"dist_to_hod_atr":4.85183,"atr":0.029886,"spread_atr":0.334609,"own_change_pct":-0.267616,"rel_strength_pct":{"SPY":-0.26179,"IWM":-0.241374}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.143767},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"45c74beab692","ts":"2026-09-21T17:42:18.038146+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.79 below VWAP $8.79","plan":{"state":"PASS","setup":"","stop":8.3805,"target":8.94,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.785,"vwap":8.7869,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":0.483,"trend":"flat","recent_slope_pct":-0.0625,"volatility":"unknown"},"price":8.785,"volume":{"bars":252,"last_bar_volume":48956.0,"baseline_avg":74871.2,"bar_rvol":0.65387,"raw_accel":-0.622341,"smooth_accel":-0.008683,"accel_momentum":0.060545,"rvol_3bar":[0.458501,1.772605,0.65387],"trend_3bar":"MIXED","projected_rvol":1.54574},"flow":{"window_s":30,"trades":139,"trade_rate":4.633333,"buy_vol":25607.0,"sell_vol":20958.0,"unclassified_vol":0.0,"imbalance":0.099839,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":3.357977},"context":{"vwap":8.786913,"price_vs_vwap_pct":-0.021769,"ema9":8.808283,"ema20":8.824841,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.733781,"dist_to_hod_atr":5.186438,"atr":0.029886,"spread_atr":0.334609,"own_change_pct":-0.267616,"rel_strength_pct":{"SPY":-0.26179,"IWM":-0.241374}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.065282},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c3ad2f7e40c5","ts":"2026-09-21T17:42:23.149020+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4172,"target":7.775,"target_label":"range_20d_high","reward_risk":19.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.482,"vwap":6.3751,"ext_from_open_pct":3.05,"max_ext_allowed_pct":3.0,"volume_pace":1.23,"trend":"flat","recent_slope_pct":0.0337,"volatility":"unknown"},"price":6.482,"volume":{"bars":252,"last_bar_volume":18266.0,"baseline_avg":36019.35,"bar_rvol":0.507116,"raw_accel":0.252039,"smooth_accel":-0.756671,"accel_momentum":-0.946029,"rvol_3bar":[0.182996,0.403758,0.507116],"trend_3bar":"ACCELERATING","projected_rvol":0.27078},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":2927.0,"sell_vol":1487.0,"unclassified_vol":0.0,"imbalance":0.326235,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.263478},"context":{"vwap":6.375073,"price_vs_vwap_pct":1.677267,"ema9":6.478572,"ema20":6.482215,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.430108,"dist_to_hod_atr":1.920548,"atr":0.014579,"spread_atr":0.68591,"own_change_pct":-0.188126,"rel_strength_pct":{"SPY":-0.182301,"IWM":-0.161884}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.165439},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"84db1871a5a0","ts":"2026-09-21T17:42:28.246382+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4103,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4751,"vwap":6.3751,"ext_from_open_pct":2.94,"max_ext_allowed_pct":4.0,"volume_pace":1.23,"trend":"flat","recent_slope_pct":0.0124,"volatility":"unknown"},"price":6.4751,"volume":{"bars":252,"last_bar_volume":18266.0,"baseline_avg":36019.35,"bar_rvol":0.507116,"raw_accel":0.252039,"smooth_accel":-0.756671,"accel_momentum":-0.946029,"rvol_3bar":[0.182996,0.403758,0.507116],"trend_3bar":"ACCELERATING","projected_rvol":0.250458},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":3210.0,"sell_vol":1441.0,"unclassified_vol":0.0,"imbalance":0.380348,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.857248},"context":{"vwap":6.375073,"price_vs_vwap_pct":1.569033,"ema9":6.478572,"ema20":6.482215,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.536098,"dist_to_hod_atr":2.393826,"atr":0.014579,"spread_atr":0.68591,"own_change_pct":-0.188126,"rel_strength_pct":{"SPY":-0.182301,"IWM":-0.161884}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.192881},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"23f34e60959f","ts":"2026-09-21T17:42:59.114799+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.92 below VWAP $12.92","plan":{"state":"PASS","setup":"","stop":12.5282,"target":13.53,"target_label":"ceiling","reward_risk":1.56,"pos_in_5d_range_pct":150.5,"room_to_5d_high_atr":-1.51},"price":12.92,"vwap":12.9208,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.571,"trend":"flat","recent_slope_pct":-0.062,"volatility":"high"},"price":12.92,"volume":{"bars":252,"last_bar_volume":6760.0,"baseline_avg":10168.4,"bar_rvol":0.664805,"raw_accel":1.659219,"smooth_accel":-0.651192,"accel_momentum":-0.653495,"rvol_3bar":[0.467307,0.093839,0.664805],"trend_3bar":"MIXED","projected_rvol":0.859919},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":187.0,"sell_vol":4915.0,"unclassified_vol":0.0,"imbalance":-0.926695,"bid":12.9,"ask":12.96,"spread_pct":0.464037,"quote_size_imbalance":null,"quote_age_s":4.759809},"context":{"vwap":12.920802,"price_vs_vwap_pct":-0.006206,"ema9":12.95872,"ema20":12.991469,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.376812,"dist_to_hod_atr":12.156017,"atr":0.072392,"spread_atr":0.828819,"own_change_pct":-0.194915,"rel_strength_pct":{"SPY":-0.189089,"IWM":-0.168673}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.616071},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"574c19584851","ts":"2026-09-21T17:43:04.232703+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.7005,"target":12.0,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":122.9,"room_to_5d_high_atr":-1.02},"price":11.905,"vwap":11.6194,"ext_from_open_pct":2.01,"max_ext_allowed_pct":3.0,"volume_pace":0.214,"trend":"flat","recent_slope_pct":0.1895,"volatility":"high"},"price":11.905,"volume":{"bars":253,"last_bar_volume":9296.0,"baseline_avg":11807.45,"bar_rvol":0.7873,"raw_accel":0.340061,"smooth_accel":-0.650742,"accel_momentum":-0.862531,"rvol_3bar":[0.581556,0.569391,0.7873],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":200.0,"sell_vol":1425.0,"unclassified_vol":0.0,"imbalance":-0.753846,"bid":11.88,"ask":11.93,"spread_pct":0.419992,"quote_size_imbalance":null,"quote_age_s":3.262116},"context":{"vwap":11.619338,"price_vs_vwap_pct":2.458501,"ema9":11.901918,"ema20":11.903653,"ema_stack":false,"ema_warm":true,"hod":12.0,"dist_to_hod_pct":-0.791667,"dist_to_hod_atr":1.679374,"atr":0.056569,"spread_atr":0.883881,"own_change_pct":-0.448213,"rel_strength_pct":{"SPY":-0.490943,"IWM":-0.441169}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.593503},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a670e6e1cdfc","ts":"2026-09-21T17:43:19.723898+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3752,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.227,"trend":"flat","recent_slope_pct":0.0188,"volatility":"unknown"},"price":6.48,"volume":{"bars":253,"last_bar_volume":25637.0,"baseline_avg":36401.5,"bar_rvol":0.704284,"raw_accel":0.403537,"smooth_accel":-0.450506,"accel_momentum":0.306165,"rvol_3bar":[0.403758,0.507116,0.704284],"trend_3bar":"ACCELERATING","projected_rvol":0.185771},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1813.0,"sell_vol":3089.0,"unclassified_vol":0.0,"imbalance":-0.260302,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.128871},"context":{"vwap":6.375211,"price_vs_vwap_pct":1.643699,"ema9":6.477858,"ema20":6.481527,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.084065,"atr":0.014395,"spread_atr":0.694688,"own_change_pct":-0.201908,"rel_strength_pct":{"SPY":-0.244638,"IWM":-0.194864}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.183327},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"70854f98bf54","ts":"2026-09-21T17:43:24.910773+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3752,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.227,"trend":"flat","recent_slope_pct":0.0034,"volatility":"unknown"},"price":6.475,"volume":{"bars":253,"last_bar_volume":25637.0,"baseline_avg":36401.5,"bar_rvol":0.704284,"raw_accel":0.403537,"smooth_accel":-0.450506,"accel_momentum":0.306165,"rvol_3bar":[0.403758,0.507116,0.704284],"trend_3bar":"ACCELERATING","projected_rvol":0.147487},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":1713.0,"sell_vol":1034.0,"unclassified_vol":0.0,"imbalance":0.247179,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":2.772844},"context":{"vwap":6.375211,"price_vs_vwap_pct":1.565271,"ema9":6.477858,"ema20":6.481527,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.537634,"dist_to_hod_atr":2.431409,"atr":0.014395,"spread_atr":0.694688,"own_change_pct":-0.201908,"rel_strength_pct":{"SPY":-0.244638,"IWM":-0.194864}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.174084},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2f1f67940607","ts":"2026-09-21T17:43:24.910773+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.712,"target":8.94,"target_label":"ceiling","reward_risk":1.59,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8,"vwap":8.7869,"ext_from_open_pct":3.29,"max_ext_allowed_pct":4.0,"volume_pace":0.481,"trend":"flat","recent_slope_pct":-0.0147,"volatility":"unknown"},"price":8.8,"volume":{"bars":253,"last_bar_volume":58707.0,"baseline_avg":76892.6,"bar_rvol":0.763493,"raw_accel":0.199179,"smooth_accel":0.291981,"accel_momentum":0.300664,"rvol_3bar":[1.772605,0.65387,0.763493],"trend_3bar":"MIXED","projected_rvol":0.132689},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":3626.0,"sell_vol":2019.0,"unclassified_vol":0.0,"imbalance":0.284677,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.609614},"context":{"vwap":8.78693,"price_vs_vwap_pct":0.148745,"ema9":8.804647,"ema20":8.821532,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.565996,"dist_to_hod_atr":4.703474,"atr":0.029765,"spread_atr":0.335962,"own_change_pct":-0.1125,"rel_strength_pct":{"SPY":-0.15523,"IWM":-0.105456}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.217349},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b7f0a5d41d58","ts":"2026-09-21T17:43:40.297078+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.5454,"target":13.53,"target_label":"ceiling","reward_risk":1.51,"pos_in_5d_range_pct":150.8,"room_to_5d_high_atr":-1.52},"price":12.9372,"vwap":12.9208,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":4.0,"volume_pace":0.571,"trend":"flat","recent_slope_pct":-0.043,"volatility":"high"},"price":12.9372,"volume":{"bars":253,"last_bar_volume":8615.0,"baseline_avg":10246.65,"bar_rvol":0.840763,"raw_accel":0.274408,"smooth_accel":-0.51758,"accel_momentum":0.133612,"rvol_3bar":[0.093839,0.664805,0.840763],"trend_3bar":"ACCELERATING","projected_rvol":2.449347},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":1659.0,"sell_vol":382.0,"unclassified_vol":0.0,"imbalance":0.625674,"bid":12.92,"ask":12.97,"spread_pct":0.38625,"quote_size_imbalance":null,"quote_age_s":3.969936},"context":{"vwap":12.920837,"price_vs_vwap_pct":0.126639,"ema9":12.950976,"ema20":12.984663,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.252174,"dist_to_hod_atr":11.94662,"atr":0.072221,"spread_atr":0.692317,"own_change_pct":-0.347088,"rel_strength_pct":{"SPY":-0.389818,"IWM":-0.340045}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.526043},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"40373bee343e","ts":"2026-09-21T17:43:50.512749+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6448,"target":11.45,"target_label":"range_20d_high","reward_risk":17.33,"pos_in_5d_range_pct":118.3,"room_to_5d_high_atr":-0.19},"price":9.7433,"vwap":9.6957,"ext_from_open_pct":0.55,"max_ext_allowed_pct":4.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.0219,"volatility":"medium"},"price":9.7433,"volume":{"bars":253,"last_bar_volume":5652.0,"baseline_avg":5814.4,"bar_rvol":0.972069,"raw_accel":0.954357,"smooth_accel":-0.498504,"accel_momentum":0.073157,"rvol_3bar":[0.236221,0.45019,0.972069],"trend_3bar":"ACCELERATING","projected_rvol":0.256179},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":230.0,"sell_vol":67.0,"unclassified_vol":0.0,"imbalance":0.548822,"bid":9.74,"ask":9.75,"spread_pct":0.102617,"quote_size_imbalance":null,"quote_age_s":3.044548},"context":{"vwap":9.695664,"price_vs_vwap_pct":0.491312,"ema9":9.755725,"ema20":9.754354,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-0.881994,"dist_to_hod_atr":6.383902,"atr":0.013581,"spread_atr":0.736321,"own_change_pct":-0.031763,"rel_strength_pct":{"SPY":-0.074493,"IWM":-0.024719}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.533493},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"12855c8c368f","ts":"2026-09-21T17:43:50.512749+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.78 below VWAP $8.79","plan":{"state":"PASS","setup":"","stop":8.6967,"target":8.94,"target_label":"ceiling","reward_risk":1.77,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7845,"vwap":8.7869,"ext_from_open_pct":3.1,"max_ext_allowed_pct":3.0,"volume_pace":0.481,"trend":"flat","recent_slope_pct":-0.0499,"volatility":"unknown"},"price":8.7845,"volume":{"bars":253,"last_bar_volume":58707.0,"baseline_avg":76892.6,"bar_rvol":0.763493,"raw_accel":0.199179,"smooth_accel":0.291981,"accel_momentum":0.300664,"rvol_3bar":[1.772605,0.65387,0.763493],"trend_3bar":"MIXED","projected_rvol":0.533195},"flow":{"window_s":30,"trades":145,"trade_rate":4.833333,"buy_vol":16945.0,"sell_vol":13477.0,"unclassified_vol":0.0,"imbalance":0.113996,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":0.563084},"context":{"vwap":8.78693,"price_vs_vwap_pct":-0.027653,"ema9":8.804647,"ema20":8.821532,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.739374,"dist_to_hod_atr":5.224216,"atr":0.029765,"spread_atr":0.335962,"own_change_pct":-0.1125,"rel_strength_pct":{"SPY":-0.15523,"IWM":-0.105456}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.087036},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8ce91904dd8c","ts":"2026-09-21T17:44:00.805135+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6582,"target":11.45,"target_label":"range_20d_high","reward_risk":17.19,"pos_in_5d_range_pct":121.7,"room_to_5d_high_atr":-0.22},"price":9.7567,"vwap":9.6957,"ext_from_open_pct":0.69,"max_ext_allowed_pct":4.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.0053,"volatility":"medium"},"price":9.7567,"volume":{"bars":254,"last_bar_volume":1260.0,"baseline_avg":5650.05,"bar_rvol":0.223007,"raw_accel":-0.77707,"smooth_accel":-0.207117,"accel_momentum":0.291387,"rvol_3bar":[0.45019,0.972069,0.223007],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":316.0,"sell_vol":71.0,"unclassified_vol":0.0,"imbalance":0.633075,"bid":9.74,"ask":9.75,"spread_pct":0.102617,"quote_size_imbalance":null,"quote_age_s":0.800652},"context":{"vwap":9.695689,"price_vs_vwap_pct":0.629254,"ema9":9.75286,"ema20":9.753121,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-0.745677,"dist_to_hod_atr":5.296421,"atr":0.01384,"spread_atr":0.722568,"own_change_pct":-0.139416,"rel_strength_pct":{"SPY":-0.185378,"IWM":-0.160443}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.14118},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b60ee419867e","ts":"2026-09-21T17:44:05.932849+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6445,"target":11.45,"target_label":"range_20d_high","reward_risk":17.33,"pos_in_5d_range_pct":118.3,"room_to_5d_high_atr":-0.19},"price":9.743,"vwap":9.6957,"ext_from_open_pct":0.55,"max_ext_allowed_pct":3.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.0334,"volatility":"medium"},"price":9.743,"volume":{"bars":254,"last_bar_volume":1260.0,"baseline_avg":5650.05,"bar_rvol":0.223007,"raw_accel":-0.77707,"smooth_accel":-0.207117,"accel_momentum":0.291387,"rvol_3bar":[0.45019,0.972069,0.223007],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":203.0,"sell_vol":68.0,"unclassified_vol":0.0,"imbalance":0.498155,"bid":9.74,"ask":9.75,"spread_pct":0.102617,"quote_size_imbalance":null,"quote_age_s":1.118123},"context":{"vwap":9.695689,"price_vs_vwap_pct":0.487954,"ema9":9.75286,"ema20":9.753121,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-0.885046,"dist_to_hod_atr":6.286339,"atr":0.01384,"spread_atr":0.722568,"own_change_pct":-0.139416,"rel_strength_pct":{"SPY":-0.185378,"IWM":-0.160443}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.111092},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f6cfe04795cc","ts":"2026-09-21T17:44:21.299887+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7152,"target":8.94,"target_label":"ceiling","reward_risk":1.55,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8032,"vwap":8.7869,"ext_from_open_pct":3.32,"max_ext_allowed_pct":4.0,"volume_pace":0.48,"trend":"flat","recent_slope_pct":-0.0109,"volatility":"unknown"},"price":8.8032,"volume":{"bars":254,"last_bar_volume":39835.0,"baseline_avg":77667.95,"bar_rvol":0.512889,"raw_accel":-0.321461,"smooth_accel":-0.293189,"accel_momentum":-0.58517,"rvol_3bar":[0.65387,0.763493,0.512889],"trend_3bar":"MIXED","projected_rvol":0.102387},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":4146.0,"sell_vol":3935.0,"unclassified_vol":0.0,"imbalance":0.026111,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":0.910084},"context":{"vwap":8.786936,"price_vs_vwap_pct":0.185093,"ema9":8.800717,"ema20":8.818053,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.530201,"dist_to_hod_atr":4.64913,"atr":0.029425,"spread_atr":0.339849,"own_change_pct":-0.283768,"rel_strength_pct":{"SPY":-0.329731,"IWM":-0.304796}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.013392},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ede444014365","ts":"2026-09-21T17:44:31.459588+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3753,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.222,"trend":"flat","recent_slope_pct":0.0256,"volatility":"unknown"},"price":6.48,"volume":{"bars":254,"last_bar_volume":4584.0,"baseline_avg":36664.05,"bar_rvol":0.125027,"raw_accel":-0.821196,"smooth_accel":-0.568133,"accel_momentum":-0.117627,"rvol_3bar":[0.507116,0.704284,0.125027],"trend_3bar":"MIXED","projected_rvol":0.552072},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":3411.0,"sell_vol":7132.0,"unclassified_vol":0.0,"imbalance":-0.352936,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.420699},"context":{"vwap":6.375235,"price_vs_vwap_pct":1.643309,"ema9":6.477286,"ema20":6.480906,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.122989,"atr":0.014131,"spread_atr":0.707663,"own_change_pct":0.07728,"rel_strength_pct":{"SPY":0.031317,"IWM":0.056252}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.044127},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d9a8fc303a83","ts":"2026-09-21T17:44:31.459588+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.79 below VWAP $8.79","plan":{"state":"PASS","setup":"","stop":8.6972,"target":8.94,"target_label":"ceiling","reward_risk":1.76,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.785,"vwap":8.7869,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":0.481,"trend":"flat","recent_slope_pct":-0.0523,"volatility":"unknown"},"price":8.785,"volume":{"bars":254,"last_bar_volume":39835.0,"baseline_avg":77667.95,"bar_rvol":0.512889,"raw_accel":-0.321461,"smooth_accel":-0.293189,"accel_momentum":-0.58517,"rvol_3bar":[0.65387,0.763493,0.512889],"trend_3bar":"MIXED","projected_rvol":0.913186},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":22017.0,"sell_vol":15046.0,"unclassified_vol":0.0,"imbalance":0.188085,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":1.453937},"context":{"vwap":8.786936,"price_vs_vwap_pct":-0.022032,"ema9":8.800717,"ema20":8.818053,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.733781,"dist_to_hod_atr":5.267655,"atr":0.029425,"spread_atr":0.339849,"own_change_pct":-0.283768,"rel_strength_pct":{"SPY":-0.329731,"IWM":-0.304796}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.096467},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"66c07fe2b3e0","ts":"2026-09-21T17:44:36.577267+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3753,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.222,"trend":"flat","recent_slope_pct":0.0102,"volatility":"unknown"},"price":6.475,"volume":{"bars":254,"last_bar_volume":4584.0,"baseline_avg":36664.05,"bar_rvol":0.125027,"raw_accel":-0.821196,"smooth_accel":-0.568133,"accel_momentum":-0.117627,"rvol_3bar":[0.507116,0.704284,0.125027],"trend_3bar":"MIXED","projected_rvol":0.500153},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":3431.0,"sell_vol":7574.0,"unclassified_vol":0.0,"imbalance":-0.376465,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":1.164941},"context":{"vwap":6.375235,"price_vs_vwap_pct":1.564881,"ema9":6.477286,"ema20":6.480906,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.537634,"dist_to_hod_atr":2.47682,"atr":0.014131,"spread_atr":0.707663,"own_change_pct":0.07728,"rel_strength_pct":{"SPY":0.031317,"IWM":0.056252}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.047068},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f6f1f8e55d58","ts":"2026-09-21T17:45:28.119479+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3754,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.219,"trend":"flat","recent_slope_pct":0.0222,"volatility":"unknown"},"price":6.48,"volume":{"bars":255,"last_bar_volume":14217.0,"baseline_avg":36682.4,"bar_rvol":0.38757,"raw_accel":0.55028,"smooth_accel":0.119966,"accel_momentum":0.688099,"rvol_3bar":[0.704284,0.125027,0.38757],"trend_3bar":"MIXED","projected_rvol":0.579123},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":5538.0,"sell_vol":4569.0,"unclassified_vol":0.0,"imbalance":0.095874,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":2.05051},"context":{"vwap":6.375311,"price_vs_vwap_pct":1.642103,"ema9":6.476829,"ema20":6.480343,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.168265,"atr":0.013836,"spread_atr":0.722755,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.075749,"IWM":-0.05082}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.037158},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"307d53034f81","ts":"2026-09-21T17:45:33.290831+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.18 below VWAP $12.18","plan":{"state":"PASS","setup":"","stop":11.9997,"target":12.28,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":62.1,"room_to_5d_high_atr":0.61},"price":12.175,"vwap":12.1798,"ext_from_open_pct":-1.02,"max_ext_allowed_pct":3.0,"volume_pace":0.644,"trend":"flat","recent_slope_pct":-0.071,"volatility":"medium"},"price":12.175,"volume":{"bars":255,"last_bar_volume":1593.0,"baseline_avg":11990.65,"bar_rvol":0.132854,"raw_accel":-0.468586,"smooth_accel":-0.394147,"accel_momentum":0.043504,"rvol_3bar":[0.864978,0.050172,0.132854],"trend_3bar":"MIXED","projected_rvol":1.076661},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":889.0,"sell_vol":2844.0,"unclassified_vol":0.0,"imbalance":-0.523707,"bid":12.17,"ask":12.18,"spread_pct":0.082136,"quote_size_imbalance":null,"quote_age_s":0.132928},"context":{"vwap":12.179816,"price_vs_vwap_pct":-0.039543,"ema9":12.204133,"ema20":12.214092,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.522018,"dist_to_hod_atr":13.517475,"atr":0.023303,"spread_atr":0.429126,"own_change_pct":-0.204666,"rel_strength_pct":{"SPY":-0.280416,"IWM":-0.255487}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.069576},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ece74bef09a8","ts":"2026-09-21T17:45:33.290831+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4134,"target":7.775,"target_label":"range_20d_high","reward_risk":20.02,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4782,"vwap":6.3754,"ext_from_open_pct":2.99,"max_ext_allowed_pct":3.0,"volume_pace":1.219,"trend":"flat","recent_slope_pct":0.0167,"volatility":"unknown"},"price":6.4782,"volume":{"bars":255,"last_bar_volume":14217.0,"baseline_avg":36682.4,"bar_rvol":0.38757,"raw_accel":0.55028,"smooth_accel":0.119966,"accel_momentum":0.688099,"rvol_3bar":[0.704284,0.125027,0.38757],"trend_3bar":"MIXED","projected_rvol":0.615139},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2448.0,"sell_vol":5070.0,"unclassified_vol":0.0,"imbalance":-0.348763,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":2.019385},"context":{"vwap":6.375311,"price_vs_vwap_pct":1.613869,"ema9":6.476829,"ema20":6.480343,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.488479,"dist_to_hod_atr":2.298361,"atr":0.013836,"spread_atr":0.722755,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.075749,"IWM":-0.05082}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.13517},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6f09525bb1d1","ts":"2026-09-21T17:45:38.502965+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.0046,"target":12.28,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":62.5,"room_to_5d_high_atr":0.6},"price":12.1799,"vwap":12.1798,"ext_from_open_pct":-0.98,"max_ext_allowed_pct":3.0,"volume_pace":0.644,"trend":"flat","recent_slope_pct":-0.063,"volatility":"medium"},"price":12.1799,"volume":{"bars":255,"last_bar_volume":1593.0,"baseline_avg":11990.65,"bar_rvol":0.132854,"raw_accel":-0.468586,"smooth_accel":-0.394147,"accel_momentum":0.043504,"rvol_3bar":[0.864978,0.050172,0.132854],"trend_3bar":"MIXED","projected_rvol":0.989006},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":731.0,"sell_vol":3199.0,"unclassified_vol":0.0,"imbalance":-0.62799,"bid":12.17,"ask":12.18,"spread_pct":0.082136,"quote_size_imbalance":null,"quote_age_s":5.345062},"context":{"vwap":12.179816,"price_vs_vwap_pct":0.000688,"ema9":12.204133,"ema20":12.214092,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.482786,"dist_to_hod_atr":13.307203,"atr":0.023303,"spread_atr":0.429126,"own_change_pct":-0.204666,"rel_strength_pct":{"SPY":-0.280416,"IWM":-0.255487}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.083431},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ab43bba863fb","ts":"2026-09-21T17:45:43.707626+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3754,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.218,"trend":"flat","recent_slope_pct":0.0222,"volatility":"unknown"},"price":6.48,"volume":{"bars":255,"last_bar_volume":14217.0,"baseline_avg":36682.4,"bar_rvol":0.38757,"raw_accel":0.55028,"smooth_accel":0.119966,"accel_momentum":0.688099,"rvol_3bar":[0.704284,0.125027,0.38757],"trend_3bar":"MIXED","projected_rvol":0.921911},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":13642.0,"sell_vol":2481.0,"unclassified_vol":0.0,"imbalance":0.692241,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.689806},"context":{"vwap":6.375311,"price_vs_vwap_pct":1.642103,"ema9":6.476829,"ema20":6.480343,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.168265,"atr":0.013836,"spread_atr":0.722755,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.075749,"IWM":-0.05082}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.268292},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f4fb1db69bc6","ts":"2026-09-21T17:45:48.861454+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4467,"target":6.94,"target_label":"ceiling","reward_risk":2.02,"pos_in_5d_range_pct":110.8,"room_to_5d_high_atr":-0.29},"price":6.61,"vwap":6.589,"ext_from_open_pct":3.44,"max_ext_allowed_pct":4.0,"volume_pace":0.532,"trend":"flat","recent_slope_pct":-0.0497,"volatility":"high"},"price":6.61,"volume":{"bars":253,"last_bar_volume":124.0,"baseline_avg":3373.3,"bar_rvol":0.036759,"raw_accel":-0.852963,"smooth_accel":-0.975116,"accel_momentum":-0.23451,"rvol_3bar":[0.006685,0.01378,0.036759],"trend_3bar":"ACCELERATING","projected_rvol":2.411658},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2626.0,"sell_vol":1729.0,"unclassified_vol":0.0,"imbalance":0.20597,"bid":6.6,"ask":6.62,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":2.823679},"context":{"vwap":6.588931,"price_vs_vwap_pct":0.319759,"ema9":6.626178,"ema20":6.636442,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.755043,"dist_to_hod_atr":17.43547,"atr":0.018927,"spread_atr":1.056695,"own_change_pct":-0.075415,"rel_strength_pct":{"SPY":-0.151164,"IWM":-0.126235}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.007571},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"de7413b7df2f","ts":"2026-09-21T17:45:48.861454+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.18 below VWAP $12.18","plan":{"state":"PASS","setup":"","stop":12.0027,"target":12.28,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":62.3,"room_to_5d_high_atr":0.6},"price":12.178,"vwap":12.1798,"ext_from_open_pct":-0.99,"max_ext_allowed_pct":4.0,"volume_pace":0.643,"trend":"flat","recent_slope_pct":-0.0661,"volatility":"medium"},"price":12.178,"volume":{"bars":255,"last_bar_volume":1593.0,"baseline_avg":11990.65,"bar_rvol":0.132854,"raw_accel":-0.468586,"smooth_accel":-0.394147,"accel_momentum":0.043504,"rvol_3bar":[0.864978,0.050172,0.132854],"trend_3bar":"MIXED","projected_rvol":0.886358},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":673.0,"sell_vol":4200.0,"unclassified_vol":0.0,"imbalance":-0.723784,"bid":12.17,"ask":12.18,"spread_pct":0.082136,"quote_size_imbalance":null,"quote_age_s":1.796145},"context":{"vwap":12.179816,"price_vs_vwap_pct":-0.014912,"ema9":12.204133,"ema20":12.214092,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.497998,"dist_to_hod_atr":13.388737,"atr":0.023303,"spread_atr":0.429126,"own_change_pct":-0.204666,"rel_strength_pct":{"SPY":-0.280416,"IWM":-0.255487}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.096157},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cafb18770377","ts":"2026-09-21T17:45:53.986066+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.0237,"target":12.28,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":64.2,"room_to_5d_high_atr":0.57},"price":12.199,"vwap":12.1798,"ext_from_open_pct":-0.82,"max_ext_allowed_pct":4.0,"volume_pace":0.643,"trend":"flat","recent_slope_pct":-0.0316,"volatility":"medium"},"price":12.199,"volume":{"bars":255,"last_bar_volume":1593.0,"baseline_avg":11990.65,"bar_rvol":0.132854,"raw_accel":-0.468586,"smooth_accel":-0.394147,"accel_momentum":0.043504,"rvol_3bar":[0.864978,0.050172,0.132854],"trend_3bar":"MIXED","projected_rvol":0.925589},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1559.0,"sell_vol":1604.0,"unclassified_vol":0.0,"imbalance":-0.014227,"bid":12.17,"ask":12.18,"spread_pct":0.082136,"quote_size_imbalance":null,"quote_age_s":6.920757},"context":{"vwap":12.179816,"price_vs_vwap_pct":0.157505,"ema9":12.204133,"ema20":12.214092,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.329864,"dist_to_hod_atr":12.487572,"atr":0.023303,"spread_atr":0.429126,"own_change_pct":-0.204666,"rel_strength_pct":{"SPY":-0.280416,"IWM":-0.255487}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.00189},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7ddaee859eb1","ts":"2026-09-21T17:45:53.986066+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4085,"target":7.775,"target_label":"range_20d_high","reward_risk":20.11,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4732,"vwap":6.3754,"ext_from_open_pct":2.91,"max_ext_allowed_pct":3.0,"volume_pace":1.218,"trend":"flat","recent_slope_pct":0.0012,"volatility":"unknown"},"price":6.4732,"volume":{"bars":255,"last_bar_volume":14217.0,"baseline_avg":36682.4,"bar_rvol":0.38757,"raw_accel":0.55028,"smooth_accel":0.119966,"accel_momentum":0.688099,"rvol_3bar":[0.704284,0.125027,0.38757],"trend_3bar":"MIXED","projected_rvol":0.785441},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":13881.0,"sell_vol":2254.0,"unclassified_vol":0.0,"imbalance":0.720607,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.003668},"context":{"vwap":6.375311,"price_vs_vwap_pct":1.535441,"ema9":6.476829,"ema20":6.480343,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.565284,"dist_to_hod_atr":2.659738,"atr":0.013836,"spread_atr":0.722755,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.075749,"IWM":-0.05082}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.279286},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"09c1281bb344","ts":"2026-09-21T17:46:04.350506+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.18 below VWAP $12.18","plan":{"state":"PASS","setup":"","stop":11.9997,"target":12.28,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":62.1,"room_to_5d_high_atr":0.61},"price":12.175,"vwap":12.1798,"ext_from_open_pct":-1.02,"max_ext_allowed_pct":4.0,"volume_pace":0.643,"trend":"flat","recent_slope_pct":-0.0533,"volatility":"medium"},"price":12.175,"volume":{"bars":256,"last_bar_volume":10818.0,"baseline_avg":11361.15,"bar_rvol":0.952192,"raw_accel":2.808769,"smooth_accel":-0.230778,"accel_momentum":0.163369,"rvol_3bar":[0.050172,0.132854,0.952192],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1383.0,"sell_vol":2472.0,"unclassified_vol":0.0,"imbalance":-0.28249,"bid":12.17,"ask":12.18,"spread_pct":0.082136,"quote_size_imbalance":null,"quote_age_s":4.345605},"context":{"vwap":12.17983,"price_vs_vwap_pct":-0.039656,"ema9":12.199306,"ema20":12.210845,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.522018,"dist_to_hod_atr":12.961393,"atr":0.024303,"spread_atr":0.411473,"own_change_pct":-0.253053,"rel_strength_pct":{"SPY":-0.346237,"IWM":-0.330167}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.268985},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fd528041b10f","ts":"2026-09-21T17:46:24.888386+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3757,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.218,"trend":"flat","recent_slope_pct":0.0077,"volatility":"unknown"},"price":6.48,"volume":{"bars":256,"last_bar_volume":36037.0,"baseline_avg":33006.55,"bar_rvol":1.091814,"raw_accel":1.534782,"smooth_accel":-0.06247,"accel_momentum":-0.182436,"rvol_3bar":[0.125027,0.38757,1.091814],"trend_3bar":"ACCELERATING","projected_rvol":2.134417},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":1138.0,"sell_vol":38168.0,"unclassified_vol":0.0,"imbalance":-0.942095,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.02033},"context":{"vwap":6.375499,"price_vs_vwap_pct":1.639104,"ema9":6.475463,"ema20":6.479358,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.212071,"atr":0.013562,"spread_atr":0.737357,"own_change_pct":-0.043258,"rel_strength_pct":{"SPY":-0.136442,"IWM":-0.120372}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.028593},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6ffaffdef9d0","ts":"2026-09-21T17:46:30.072778+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4317,"target":6.94,"target_label":"ceiling","reward_risk":2.11,"pos_in_5d_range_pct":109.9,"room_to_5d_high_atr":-0.27},"price":6.595,"vwap":6.5891,"ext_from_open_pct":3.21,"max_ext_allowed_pct":3.0,"volume_pace":0.535,"trend":"flat","recent_slope_pct":-0.1449,"volatility":"high"},"price":6.595,"volume":{"bars":254,"last_bar_volume":21196.0,"baseline_avg":3185.25,"bar_rvol":6.654423,"raw_accel":25.617691,"smooth_accel":4.985714,"accel_momentum":5.960831,"rvol_3bar":[0.01378,0.036759,6.654423],"trend_3bar":"ACCELERATING","projected_rvol":1.138123},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":986.0,"sell_vol":831.0,"unclassified_vol":0.0,"imbalance":0.085305,"bid":6.58,"ask":6.61,"spread_pct":0.45489,"quote_size_imbalance":null,"quote_age_s":19.335151},"context":{"vwap":6.589086,"price_vs_vwap_pct":0.089761,"ema9":6.619942,"ema20":6.632495,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.971182,"dist_to_hod_atr":16.885151,"atr":0.020432,"spread_atr":1.468274,"own_change_pct":-0.527903,"rel_strength_pct":{"SPY":-0.621088,"IWM":-0.605018}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.567659},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e91da08e330c","ts":"2026-09-21T17:46:30.072778+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5781,"target":8.76,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":125.7,"room_to_5d_high_atr":-0.81},"price":8.68,"vwap":8.6364,"ext_from_open_pct":0.7,"max_ext_allowed_pct":3.0,"volume_pace":0.737,"trend":"flat","recent_slope_pct":-0.0484,"volatility":"medium"},"price":8.68,"volume":{"bars":256,"last_bar_volume":2463.0,"baseline_avg":1596.95,"bar_rvol":1.542315,"raw_accel":-0.10534,"smooth_accel":0.260013,"accel_momentum":0.083957,"rvol_3bar":[0.409644,1.854122,1.542315],"trend_3bar":"MIXED","projected_rvol":0.027486},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":3.0,"sell_vol":19.0,"unclassified_vol":0.0,"imbalance":-0.727273,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":1.70718},"context":{"vwap":8.636372,"price_vs_vwap_pct":0.505168,"ema9":8.694511,"ema20":8.698894,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.998335,"dist_to_hod_atr":15.291855,"atr":0.017545,"spread_atr":0.569954,"own_change_pct":0.057604,"rel_strength_pct":{"SPY":-0.035581,"IWM":-0.019511}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.121684},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"06e2dea08bcd","ts":"2026-09-21T17:46:30.072778+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.409,"target":7.775,"target_label":"range_20d_high","reward_risk":20.1,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4737,"vwap":6.3757,"ext_from_open_pct":2.92,"max_ext_allowed_pct":3.0,"volume_pace":1.217,"trend":"flat","recent_slope_pct":-0.0117,"volatility":"unknown"},"price":6.4737,"volume":{"bars":256,"last_bar_volume":36037.0,"baseline_avg":33006.55,"bar_rvol":1.091814,"raw_accel":1.534782,"smooth_accel":-0.06247,"accel_momentum":-0.182436,"rvol_3bar":[0.125027,0.38757,1.091814],"trend_3bar":"ACCELERATING","projected_rvol":1.831556},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":1183.0,"sell_vol":29117.0,"unclassified_vol":0.0,"imbalance":-0.921914,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.067565},"context":{"vwap":6.375499,"price_vs_vwap_pct":1.540288,"ema9":6.475463,"ema20":6.479358,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.557604,"dist_to_hod_atr":2.676606,"atr":0.013562,"spread_atr":0.737357,"own_change_pct":-0.043258,"rel_strength_pct":{"SPY":-0.136442,"IWM":-0.120372}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.006558},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d7c8a8cb3f39","ts":"2026-09-21T17:46:55.739827+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4317,"target":6.94,"target_label":"ceiling","reward_risk":2.11,"pos_in_5d_range_pct":109.9,"room_to_5d_high_atr":-0.27},"price":6.595,"vwap":6.5891,"ext_from_open_pct":3.21,"max_ext_allowed_pct":4.0,"volume_pace":0.535,"trend":"flat","recent_slope_pct":-0.1449,"volatility":"high"},"price":6.595,"volume":{"bars":254,"last_bar_volume":21196.0,"baseline_avg":3185.25,"bar_rvol":6.654423,"raw_accel":25.617691,"smooth_accel":4.985714,"accel_momentum":5.960831,"rvol_3bar":[0.01378,0.036759,6.654423],"trend_3bar":"ACCELERATING","projected_rvol":1.2906},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":1600.0,"sell_vol":582.0,"unclassified_vol":0.0,"imbalance":0.466544,"bid":6.58,"ask":6.61,"spread_pct":0.45489,"quote_size_imbalance":null,"quote_age_s":16.679297},"context":{"vwap":6.589086,"price_vs_vwap_pct":0.089761,"ema9":6.619942,"ema20":6.632495,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.971182,"dist_to_hod_atr":16.885151,"atr":0.020432,"spread_atr":1.468274,"own_change_pct":-0.527903,"rel_strength_pct":{"SPY":-0.621088,"IWM":-0.605018}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.104584},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1a636e16ed07","ts":"2026-09-21T17:47:11.276152+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":6.4317,"target":6.94,"target_label":"ceiling","reward_risk":2.11,"pos_in_5d_range_pct":109.9,"room_to_5d_high_atr":-0.27},"price":6.595,"vwap":6.5891,"ext_from_open_pct":3.21,"max_ext_allowed_pct":3.0,"volume_pace":0.534,"trend":"flat","recent_slope_pct":-0.1362,"volatility":"high"},"price":6.595,"volume":{"bars":255,"last_bar_volume":3819.0,"baseline_avg":4244.2,"bar_rvol":0.899816,"raw_accel":-0.819824,"smooth_accel":11.601003,"accel_momentum":6.615288,"rvol_3bar":[0.036759,6.654423,0.899816],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":1600.0,"sell_vol":403.0,"unclassified_vol":0.0,"imbalance":0.597604,"bid":6.58,"ask":6.61,"spread_pct":0.45489,"quote_size_imbalance":null,"quote_age_s":15.520029},"context":{"vwap":6.589096,"price_vs_vwap_pct":0.089598,"ema9":6.614954,"ema20":6.628924,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.971182,"dist_to_hod_atr":16.289062,"atr":0.02118,"spread_atr":1.41644,"own_change_pct":-0.45283,"rel_strength_pct":{"SPY":-0.546695,"IWM":-0.489628}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.537733},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d425c8c33b1e","ts":"2026-09-21T17:47:52.480057+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.0087,"target":12.28,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":62.9,"room_to_5d_high_atr":0.59},"price":12.184,"vwap":12.1799,"ext_from_open_pct":-0.94,"max_ext_allowed_pct":4.0,"volume_pace":0.641,"trend":"flat","recent_slope_pct":-0.0222,"volatility":"medium"},"price":12.184,"volume":{"bars":257,"last_bar_volume":9945.0,"baseline_avg":8490.65,"bar_rvol":1.171288,"raw_accel":-0.080699,"smooth_accel":0.526736,"accel_momentum":0.757515,"rvol_3bar":[0.132854,0.952192,1.171288],"trend_3bar":"ACCELERATING","projected_rvol":1.122333},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2771.0,"sell_vol":728.0,"unclassified_vol":0.0,"imbalance":0.583881,"bid":12.21,"ask":12.22,"spread_pct":0.081867,"quote_size_imbalance":null,"quote_age_s":0.602381},"context":{"vwap":12.179838,"price_vs_vwap_pct":0.034171,"ema9":12.196445,"ema20":12.208384,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.44996,"dist_to_hod_atr":11.888829,"atr":0.025738,"spread_atr":0.388524,"own_change_pct":-0.231715,"rel_strength_pct":{"SPY":-0.32558,"IWM":-0.268512}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.683893},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"056bd332b42c","ts":"2026-09-21T17:48:02.751173+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.6415,"target":11.45,"target_label":"range_20d_high","reward_risk":17.36,"pos_in_5d_range_pct":117.5,"room_to_5d_high_atr":-0.18},"price":9.74,"vwap":9.6968,"ext_from_open_pct":0.52,"max_ext_allowed_pct":4.0,"volume_pace":0.602,"trend":"flat","recent_slope_pct":0.0051,"volatility":"medium"},"price":9.74,"volume":{"bars":258,"last_bar_volume":70016.0,"baseline_avg":5384.8,"bar_rvol":13.002526,"raw_accel":17.252346,"smooth_accel":5.207309,"accel_momentum":5.14254,"rvol_3bar":[0.250916,0.709621,13.002526],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1233.0,"sell_vol":2536.0,"unclassified_vol":0.0,"imbalance":-0.345715,"bid":9.73,"ask":9.74,"spread_pct":0.102722,"quote_size_imbalance":null,"quote_age_s":0.100265},"context":{"vwap":9.696827,"price_vs_vwap_pct":0.445225,"ema9":9.740859,"ema20":9.74639,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-0.915565,"dist_to_hod_atr":5.23782,"atr":0.017183,"spread_atr":0.58198,"own_change_pct":-0.223434,"rel_strength_pct":{"SPY":-0.248026,"IWM":-0.247966}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-4.495169},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6b4aea9289ab","ts":"2026-09-21T17:48:07.944776+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.5682,"target":13.53,"target_label":"ceiling","reward_risk":1.45,"pos_in_5d_range_pct":151.3,"room_to_5d_high_atr":-1.53},"price":12.96,"vwap":12.9211,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":4.0,"volume_pace":0.563,"trend":"flat","recent_slope_pct":-0.0764,"volatility":"high"},"price":12.96,"volume":{"bars":258,"last_bar_volume":3578.0,"baseline_avg":11395.15,"bar_rvol":0.313993,"raw_accel":-0.250524,"smooth_accel":-0.533679,"accel_momentum":0.025655,"rvol_3bar":[0.522053,0.421726,0.313993],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":248.0,"sell_vol":1443.0,"unclassified_vol":0.0,"imbalance":-0.706682,"bid":12.92,"ask":13.0,"spread_pct":0.617284,"quote_size_imbalance":null,"quote_age_s":1.455382},"context":{"vwap":12.921076,"price_vs_vwap_pct":0.301247,"ema9":12.975677,"ema20":12.985975,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.086957,"dist_to_hod_atr":10.378314,"atr":0.080938,"spread_atr":0.988411,"own_change_pct":0.309598,"rel_strength_pct":{"SPY":0.285006,"IWM":0.285065}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.221894},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"1bcc528db289","ts":"2026-09-21T17:48:07.944776+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5881,"target":8.76,"target_label":"premarket_high","reward_risk":0.69,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.83},"price":8.69,"vwap":8.6364,"ext_from_open_pct":0.81,"max_ext_allowed_pct":4.0,"volume_pace":0.732,"trend":"flat","recent_slope_pct":-0.0345,"volatility":"medium"},"price":8.69,"volume":{"bars":258,"last_bar_volume":331.0,"baseline_avg":1658.05,"bar_rvol":0.199632,"raw_accel":-0.201472,"smooth_accel":-0.359503,"accel_momentum":-0.461392,"rvol_3bar":[1.542315,0.055704,0.199632],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":24.0,"sell_vol":9.0,"unclassified_vol":0.0,"imbalance":0.454545,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":16.14035},"context":{"vwap":8.636395,"price_vs_vwap_pct":0.620691,"ema9":8.690207,"ema20":8.695904,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.886582,"dist_to_hod_atr":14.495225,"atr":0.01782,"spread_atr":0.561178,"own_change_pct":-0.119609,"rel_strength_pct":{"SPY":-0.144201,"IWM":-0.144141}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.090742},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a2686f4c0827","ts":"2026-09-21T17:48:49.088069+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.5982,"target":13.53,"target_label":"ceiling","reward_risk":1.38,"pos_in_5d_range_pct":152.0,"room_to_5d_high_atr":-1.55},"price":12.99,"vwap":12.9211,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.562,"trend":"flat","recent_slope_pct":-0.0302,"volatility":"high"},"price":12.99,"volume":{"bars":258,"last_bar_volume":3578.0,"baseline_avg":11395.15,"bar_rvol":0.313993,"raw_accel":-0.250524,"smooth_accel":-0.533679,"accel_momentum":0.025655,"rvol_3bar":[0.522053,0.421726,0.313993],"trend_3bar":"DECELERATING","projected_rvol":0.149205},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":460.0,"sell_vol":304.0,"unclassified_vol":0.0,"imbalance":0.204188,"bid":12.95,"ask":13.0,"spread_pct":0.385356,"quote_size_imbalance":null,"quote_age_s":31.562844},"context":{"vwap":12.921076,"price_vs_vwap_pct":0.533426,"ema9":12.975677,"ema20":12.985975,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.869565,"dist_to_hod_atr":10.00766,"atr":0.080938,"spread_atr":0.617757,"own_change_pct":0.309598,"rel_strength_pct":{"SPY":0.285006,"IWM":0.285065}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.064114},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"9410649eb144","ts":"2026-09-21T17:49:25.232790+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4567,"target":6.94,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":111.4,"room_to_5d_high_atr":-0.31},"price":6.62,"vwap":6.5891,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.53,"trend":"flat","recent_slope_pct":0.0757,"volatility":"high"},"price":6.62,"volume":{"bars":257,"last_bar_volume":307.0,"baseline_avg":4016.3,"bar_rvol":0.076439,"raw_accel":-0.694246,"smooth_accel":-0.805466,"accel_momentum":-126.300415,"rvol_3bar":[0.899816,0.007618,0.076439],"trend_3bar":"MIXED","projected_rvol":1.707478},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2783.0,"sell_vol":101.0,"unclassified_vol":0.0,"imbalance":0.929958,"bid":6.6,"ask":6.65,"spread_pct":0.754717,"quote_size_imbalance":null,"quote_age_s":0.9951},"context":{"vwap":6.589097,"price_vs_vwap_pct":0.469001,"ema9":6.609002,"ema20":6.623433,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.610951,"dist_to_hod_atr":16.216373,"atr":0.019733,"spread_atr":2.533808,"own_change_pct":-0.45283,"rel_strength_pct":{"SPY":-0.453477,"IWM":-0.477357}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.071085},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"99bf55c876b4","ts":"2026-09-21T17:49:45.670813+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.0847,"target":12.34,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":69.6,"room_to_5d_high_atr":0.48},"price":12.26,"vwap":12.18,"ext_from_open_pct":-0.33,"max_ext_allowed_pct":4.0,"volume_pace":0.638,"trend":"flat","recent_slope_pct":0.1444,"volatility":"medium"},"price":12.26,"volume":{"bars":259,"last_bar_volume":11131.0,"baseline_avg":8582.5,"bar_rvol":1.296941,"raw_accel":0.247171,"smooth_accel":1.304932,"accel_momentum":-0.077159,"rvol_3bar":[1.171288,1.081681,1.296941],"trend_3bar":"MIXED","projected_rvol":0.444065},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":2200.0,"sell_vol":208.0,"unclassified_vol":0.0,"imbalance":0.827243,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":5.665921},"context":{"vwap":12.179963,"price_vs_vwap_pct":0.657116,"ema9":12.197969,"ema20":12.206978,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.841473,"dist_to_hod_atr":7.535944,"atr":0.03052,"spread_atr":0.32765,"own_change_pct":0.051661,"rel_strength_pct":{"SPY":0.051013,"IWM":0.027134}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.072885},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9be3188b4795","ts":"2026-09-21T17:49:50.777103+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4617,"target":6.94,"target_label":"ceiling","reward_risk":1.93,"pos_in_5d_range_pct":111.6,"room_to_5d_high_atr":-0.31},"price":6.625,"vwap":6.5891,"ext_from_open_pct":3.68,"max_ext_allowed_pct":3.0,"volume_pace":0.529,"trend":"flat","recent_slope_pct":0.0909,"volatility":"high"},"price":6.625,"volume":{"bars":257,"last_bar_volume":307.0,"baseline_avg":4016.3,"bar_rvol":0.076439,"raw_accel":-0.694246,"smooth_accel":-0.805466,"accel_momentum":-126.300415,"rvol_3bar":[0.899816,0.007618,0.076439],"trend_3bar":"MIXED","projected_rvol":0.848795},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":434.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.61,"ask":6.64,"spread_pct":0.45283,"quote_size_imbalance":null,"quote_age_s":6.102231},"context":{"vwap":6.589097,"price_vs_vwap_pct":0.544884,"ema9":6.609002,"ema20":6.623433,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.538905,"dist_to_hod_atr":15.962992,"atr":0.019733,"spread_atr":1.520285,"own_change_pct":-0.45283,"rel_strength_pct":{"SPY":-0.453477,"IWM":-0.477357}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.076439},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0c6de593caea","ts":"2026-09-21T17:49:50.777103+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.0747,"target":12.34,"target_label":"premarket_high","reward_risk":0.51,"pos_in_5d_range_pct":68.8,"room_to_5d_high_atr":0.5},"price":12.25,"vwap":12.18,"ext_from_open_pct":-0.41,"max_ext_allowed_pct":4.0,"volume_pace":0.638,"trend":"flat","recent_slope_pct":0.1281,"volatility":"medium"},"price":12.25,"volume":{"bars":259,"last_bar_volume":11131.0,"baseline_avg":8582.5,"bar_rvol":1.296941,"raw_accel":0.247171,"smooth_accel":1.304932,"accel_momentum":-0.077159,"rvol_3bar":[1.171288,1.081681,1.296941],"trend_3bar":"MIXED","projected_rvol":0.482154},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":2690.0,"sell_vol":209.0,"unclassified_vol":0.0,"imbalance":0.855812,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":0.768395},"context":{"vwap":12.179963,"price_vs_vwap_pct":0.575014,"ema9":12.197969,"ema20":12.206978,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.921537,"dist_to_hod_atr":7.863594,"atr":0.03052,"spread_atr":0.32765,"own_change_pct":0.051661,"rel_strength_pct":{"SPY":0.051013,"IWM":0.027134}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.109939},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"48e6ca6e5d7b","ts":"2026-09-21T17:50:11.285539+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.485,"vwap":6.3766,"ext_from_open_pct":3.1,"max_ext_allowed_pct":3.0,"volume_pace":1.212,"trend":"flat","recent_slope_pct":0.032,"volatility":"unknown"},"price":6.485,"volume":{"bars":260,"last_bar_volume":77050.0,"baseline_avg":31694.7,"bar_rvol":2.431006,"raw_accel":2.781966,"smooth_accel":0.941764,"accel_momentum":-0.278066,"rvol_3bar":[1.986136,0.610783,2.431006],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":126,"trade_rate":4.2,"buy_vol":47461.0,"sell_vol":27089.0,"unclassified_vol":0.0,"imbalance":0.273266,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.29124},"context":{"vwap":6.376572,"price_vs_vwap_pct":1.700413,"ema9":6.476458,"ema20":6.478591,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.384025,"dist_to_hod_atr":1.822605,"atr":0.013717,"spread_atr":0.729042,"own_change_pct":0.026255,"rel_strength_pct":{"SPY":0.036606,"IWM":0.038516}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.664312},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"90f722a3454b","ts":"2026-09-21T17:50:16.442925+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.32,"target":12.0486,"target_label":"premarket_high","reward_risk":3.55,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.48,"vwap":11.3189,"ext_from_open_pct":-1.03,"max_ext_allowed_pct":4.0,"volume_pace":0.482,"trend":"flat","recent_slope_pct":0.2984,"volatility":"unknown"},"price":11.48,"volume":{"bars":239,"last_bar_volume":23.0,"baseline_avg":113.3,"bar_rvol":0.203001,"raw_accel":-0.892019,"smooth_accel":1.47973,"accel_momentum":1.761973,"rvol_3bar":[1.29064,2.070977,0.203001],"trend_3bar":"MIXED","projected_rvol":14.235231},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":419.0,"sell_vol":23.0,"unclassified_vol":0.0,"imbalance":0.895928,"bid":11.41,"ask":11.49,"spread_pct":0.69869,"quote_size_imbalance":null,"quote_age_s":3.843834},"context":{"vwap":11.31852,"price_vs_vwap_pct":1.426688,"ema9":11.378583,"ema20":11.365302,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-3.933054,"dist_to_hod_atr":8.096037,"atr":0.058053,"spread_atr":1.378049,"own_change_pct":0.440529,"rel_strength_pct":{"SPY":0.45088,"IWM":0.452789}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.181874},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"68fc801df8bf","ts":"2026-09-21T17:50:21.625282+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4124,"target":7.775,"target_label":"range_20d_high","reward_risk":20.04,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4772,"vwap":6.3767,"ext_from_open_pct":2.98,"max_ext_allowed_pct":3.0,"volume_pace":1.211,"trend":"flat","recent_slope_pct":0.0079,"volatility":"unknown"},"price":6.4772,"volume":{"bars":260,"last_bar_volume":77050.0,"baseline_avg":31694.7,"bar_rvol":2.431006,"raw_accel":2.781966,"smooth_accel":0.941764,"accel_momentum":-0.278066,"rvol_3bar":[1.986136,0.610783,2.431006],"trend_3bar":"MIXED","projected_rvol":1.243232},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":14605.0,"sell_vol":23794.0,"unclassified_vol":0.0,"imbalance":-0.239303,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.620433},"context":{"vwap":6.376572,"price_vs_vwap_pct":1.57809,"ema9":6.476458,"ema20":6.478591,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.50384,"dist_to_hod_atr":2.391258,"atr":0.013717,"spread_atr":0.729042,"own_change_pct":0.026255,"rel_strength_pct":{"SPY":0.036606,"IWM":0.038516}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.581747},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8f679072f77b","ts":"2026-09-21T17:50:26.799786+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4192,"target":7.775,"target_label":"range_20d_high","reward_risk":19.91,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.484,"vwap":6.3767,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":1.211,"trend":"flat","recent_slope_pct":0.0289,"volatility":"unknown"},"price":6.484,"volume":{"bars":260,"last_bar_volume":77050.0,"baseline_avg":31694.7,"bar_rvol":2.431006,"raw_accel":2.781966,"smooth_accel":0.941764,"accel_momentum":-0.278066,"rvol_3bar":[1.986136,0.610783,2.431006],"trend_3bar":"MIXED","projected_rvol":1.742901},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":3402.0,"sell_vol":33842.0,"unclassified_vol":0.0,"imbalance":-0.817313,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.34044},"context":{"vwap":6.376572,"price_vs_vwap_pct":1.68473,"ema9":6.476458,"ema20":6.478591,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.399386,"dist_to_hod_atr":1.895509,"atr":0.013717,"spread_atr":0.729042,"own_change_pct":0.026255,"rel_strength_pct":{"SPY":0.036606,"IWM":0.038516}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.986892},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cd47f77df9db","ts":"2026-09-21T17:50:37.069179+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.7024,"target":5.83,"target_label":"ceiling","reward_risk":1.22,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7589,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":1.069,"trend":"flat","recent_slope_pct":-0.078,"volatility":"unknown"},"price":5.76,"volume":{"bars":260,"last_bar_volume":35540.0,"baseline_avg":53408.5,"bar_rvol":0.665437,"raw_accel":-0.576829,"smooth_accel":1.044533,"accel_momentum":0.45427,"rvol_3bar":[0.920607,1.518863,0.665437],"trend_3bar":"MIXED","projected_rvol":0.124497},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1210.0,"sell_vol":910.0,"unclassified_vol":0.0,"imbalance":0.141509,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":5.050086},"context":{"vwap":5.758931,"price_vs_vwap_pct":0.018556,"ema9":5.766036,"ema20":5.763849,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":5.543698,"atr":0.019842,"spread_atr":0.503973,"own_change_pct":-0.259516,"rel_strength_pct":{"SPY":-0.249165,"IWM":-0.247255}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.094166},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2ee318edd530","ts":"2026-09-21T17:50:47.437177+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.7081,"target":5.83,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7658,"vwap":5.7589,"ext_from_open_pct":4.08,"max_ext_allowed_pct":3.0,"volume_pace":1.068,"trend":"flat","recent_slope_pct":-0.0579,"volatility":"unknown"},"price":5.7658,"volume":{"bars":260,"last_bar_volume":35540.0,"baseline_avg":53408.5,"bar_rvol":0.665437,"raw_accel":-0.576829,"smooth_accel":1.044533,"accel_momentum":0.45427,"rvol_3bar":[0.920607,1.518863,0.665437],"trend_3bar":"MIXED","projected_rvol":0.112917},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":857.0,"sell_vol":888.0,"unclassified_vol":0.0,"imbalance":-0.017765,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.466024},"context":{"vwap":5.758931,"price_vs_vwap_pct":0.119269,"ema9":5.766036,"ema20":5.763849,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.775128,"dist_to_hod_atr":5.251394,"atr":0.019842,"spread_atr":0.503973,"own_change_pct":-0.259516,"rel_strength_pct":{"SPY":-0.249165,"IWM":-0.247255}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.011822},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4ba9700f93ba","ts":"2026-09-21T17:51:18.279795+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.13% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":11.25,"target":12.0486,"target_label":"premarket_high","reward_risk":2.07,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.51,"vwap":11.3196,"ext_from_open_pct":-0.78,"max_ext_allowed_pct":4.0,"volume_pace":0.482,"trend":"flat","recent_slope_pct":0.3371,"volatility":"unknown"},"price":11.51,"volume":{"bars":240,"last_bar_volume":446.0,"baseline_avg":109.45,"bar_rvol":4.07492,"raw_accel":15.29968,"smooth_accel":2.831461,"accel_momentum":1.351731,"rvol_3bar":[2.070977,0.203001,4.07492],"trend_3bar":"MIXED","projected_rvol":21.082373},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":703.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":11.44,"ask":11.57,"spread_pct":1.129944,"quote_size_imbalance":null,"quote_age_s":2.488679},"context":{"vwap":11.318847,"price_vs_vwap_pct":1.688801,"ema9":11.392866,"ema20":11.373368,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-3.682008,"dist_to_hod_atr":7.379983,"atr":0.059621,"spread_atr":2.18045,"own_change_pct":0.394564,"rel_strength_pct":{"SPY":0.426903,"IWM":0.419081}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":4.07492},"shadow":{"decision":"FAIL","failed":["spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8168ff6c8bc7","ts":"2026-09-21T17:51:28.581066+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.425,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4899,"vwap":6.3773,"ext_from_open_pct":3.18,"max_ext_allowed_pct":4.0,"volume_pace":1.213,"trend":"flat","recent_slope_pct":0.0505,"volatility":"unknown"},"price":6.4899,"volume":{"bars":261,"last_bar_volume":56662.0,"baseline_avg":34556.7,"bar_rvol":1.639682,"raw_accel":-0.264607,"smooth_accel":0.121475,"accel_momentum":-0.820289,"rvol_3bar":[0.610783,2.431006,1.639682],"trend_3bar":"MIXED","projected_rvol":3.993045},"flow":{"window_s":30,"trades":126,"trade_rate":4.2,"buy_vol":52467.0,"sell_vol":13367.0,"unclassified_vol":0.0,"imbalance":0.593918,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.305147},"context":{"vwap":6.376892,"price_vs_vwap_pct":1.772153,"ema9":6.478146,"ema20":6.479192,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.308756,"dist_to_hod_atr":1.468561,"atr":0.013687,"spread_atr":0.730627,"own_change_pct":0.230294,"rel_strength_pct":{"SPY":0.262633,"IWM":0.254811}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.973837},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a4a01dd3e1b1","ts":"2026-09-21T17:51:43.991971+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.9235,"target":9.0493,"target_label":"clear air (typical 60-min move)","reward_risk":0.45,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":9.0094,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":4.0,"volume_pace":0.798,"trend":"flat","recent_slope_pct":0.0523,"volatility":"medium"},"price":9.01,"volume":{"bars":261,"last_bar_volume":3106.0,"baseline_avg":7828.7,"bar_rvol":0.396745,"raw_accel":0.002259,"smooth_accel":0.489073,"accel_momentum":-0.269275,"rvol_3bar":[2.602053,0.384553,0.396745],"trend_3bar":"MIXED","projected_rvol":12.572824},"flow":{"window_s":30,"trades":274,"trade_rate":9.133333,"buy_vol":67873.0,"sell_vol":3967.0,"unclassified_vol":0.0,"imbalance":0.88956,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.276714},"context":{"vwap":9.00949,"price_vs_vwap_pct":0.005662,"ema9":8.978915,"ema20":8.978235,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.313267,"dist_to_hod_atr":6.546035,"atr":0.018316,"spread_atr":0.545958,"own_change_pct":0.111421,"rel_strength_pct":{"SPY":0.14376,"IWM":0.135938}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.352929},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2451ae3e1ca1","ts":"2026-09-21T17:51:43.991971+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7021,"target":8.94,"target_label":"ceiling","reward_risk":1.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.79,"vwap":8.7869,"ext_from_open_pct":3.17,"max_ext_allowed_pct":4.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":0.0384,"volatility":"unknown"},"price":8.79,"volume":{"bars":261,"last_bar_volume":81943.0,"baseline_avg":60715.6,"bar_rvol":1.34962,"raw_accel":3.741797,"smooth_accel":0.346722,"accel_momentum":0.764804,"rvol_3bar":[0.542687,0.265973,1.34962],"trend_3bar":"MIXED","projected_rvol":0.434871},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":10801.0,"sell_vol":4698.0,"unclassified_vol":0.0,"imbalance":0.393767,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.044616},"context":{"vwap":8.786883,"price_vs_vwap_pct":0.035469,"ema9":8.786097,"ema20":8.799172,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.677852,"dist_to_hod_atr":5.293828,"atr":0.028335,"spread_atr":0.352922,"own_change_pct":0.285225,"rel_strength_pct":{"SPY":0.317564,"IWM":0.309743}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.531436},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"947ea79af105","ts":"2026-09-21T17:51:49.116806+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4367,"target":6.94,"target_label":"ceiling","reward_risk":2.08,"pos_in_5d_range_pct":110.2,"room_to_5d_high_atr":-0.28},"price":6.6,"vwap":6.5891,"ext_from_open_pct":3.29,"max_ext_allowed_pct":4.0,"volume_pace":0.526,"trend":"flat","recent_slope_pct":0.0145,"volatility":"high"},"price":6.6,"volume":{"bars":259,"last_bar_volume":624.0,"baseline_avg":3719.6,"bar_rvol":0.16776,"raw_accel":-0.783784,"smooth_accel":-0.8476,"accel_momentum":0.024153,"rvol_3bar":[0.076439,0.741273,0.16776],"trend_3bar":"MIXED","projected_rvol":0.38786},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":131.0,"sell_vol":631.0,"unclassified_vol":0.0,"imbalance":-0.656168,"bid":6.58,"ask":6.62,"spread_pct":0.606061,"quote_size_imbalance":null,"quote_age_s":4.040288},"context":{"vwap":6.58914,"price_vs_vwap_pct":0.164812,"ema9":6.611762,"ema20":6.622289,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.899135,"dist_to_hod_atr":16.935623,"atr":0.020076,"spread_atr":1.992426,"own_change_pct":0.227445,"rel_strength_pct":{"SPY":0.259784,"IWM":0.251963}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.110079},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"32f7aa81ef29","ts":"2026-09-21T17:51:59.387298+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.78 below VWAP $8.79","plan":{"state":"PASS","setup":"","stop":8.6933,"target":8.94,"target_label":"ceiling","reward_risk":1.81,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7811,"vwap":8.7869,"ext_from_open_pct":3.06,"max_ext_allowed_pct":4.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":0.0181,"volatility":"unknown"},"price":8.7811,"volume":{"bars":261,"last_bar_volume":81943.0,"baseline_avg":60715.6,"bar_rvol":1.34962,"raw_accel":3.741797,"smooth_accel":0.346722,"accel_momentum":0.764804,"rvol_3bar":[0.542687,0.265973,1.34962],"trend_3bar":"MIXED","projected_rvol":0.332104},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":10535.0,"sell_vol":2519.0,"unclassified_vol":0.0,"imbalance":0.614065,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.681869},"context":{"vwap":8.786883,"price_vs_vwap_pct":-0.065819,"ema9":8.786097,"ema20":8.799172,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.777405,"dist_to_hod_atr":5.607929,"atr":0.028335,"spread_atr":0.352922,"own_change_pct":0.285225,"rel_strength_pct":{"SPY":0.317564,"IWM":0.309743}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.828754},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bdf91433a5e5","ts":"2026-09-21T17:52:04.565281+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7103,"target":8.94,"target_label":"ceiling","reward_risk":1.61,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7983,"vwap":8.7869,"ext_from_open_pct":3.27,"max_ext_allowed_pct":4.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":0.0344,"volatility":"unknown"},"price":8.7983,"volume":{"bars":262,"last_bar_volume":20279.0,"baseline_avg":58894.55,"bar_rvol":0.344327,"raw_accel":-0.752523,"smooth_accel":0.190743,"accel_momentum":-0.155978,"rvol_3bar":[0.265973,1.34962,0.344327],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":14999.0,"sell_vol":2557.0,"unclassified_vol":0.0,"imbalance":0.708704,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.093699},"context":{"vwap":8.786887,"price_vs_vwap_pct":0.129882,"ema9":8.787878,"ema20":8.798775,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.585011,"dist_to_hod_atr":5.078158,"atr":0.027904,"spread_atr":0.358374,"own_change_pct":0.34227,"rel_strength_pct":{"SPY":0.369433,"IWM":0.338767}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.244026},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5e5c937b3732","ts":"2026-09-21T17:52:09.727392+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4367,"target":6.94,"target_label":"ceiling","reward_risk":2.08,"pos_in_5d_range_pct":110.2,"room_to_5d_high_atr":-0.28},"price":6.6,"vwap":6.5891,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.525,"trend":"flat","recent_slope_pct":-0.0227,"volatility":"high"},"price":6.6,"volume":{"bars":260,"last_bar_volume":1196.0,"baseline_avg":2319.2,"bar_rvol":0.515695,"raw_accel":0.916667,"smooth_accel":0.132066,"accel_momentum":0.979667,"rvol_3bar":[0.741273,0.16776,0.515695],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":0.0,"sell_vol":116.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.58,"ask":6.62,"spread_pct":0.606061,"quote_size_imbalance":null,"quote_age_s":3.410326},"context":{"vwap":6.589146,"price_vs_vwap_pct":0.164723,"ema9":6.609409,"ema20":6.620166,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.899135,"dist_to_hod_atr":16.940205,"atr":0.020071,"spread_atr":1.992965,"own_change_pct":0.075815,"rel_strength_pct":{"SPY":0.102978,"IWM":0.072312}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.515695},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a3c1b86fa9ef","ts":"2026-09-21T17:52:09.727392+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 92.7s, plan says WATCH; stop 12.08, target 12.34 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 12.26; breakout: 1-min close > 12.29 on >= 16875 sh","plan":{"state":"WATCH","setup":"","stop":12.0847,"target":12.34,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":69.6,"room_to_5d_high_atr":0.48},"price":12.26,"vwap":12.1802,"ext_from_open_pct":-0.33,"max_ext_allowed_pct":4.0,"volume_pace":0.635,"trend":"flat","recent_slope_pct":0.1041,"volatility":"medium"},"price":12.26,"volume":{"bars":262,"last_bar_volume":6292.0,"baseline_avg":8927.25,"bar_rvol":0.704808,"raw_accel":-0.372244,"smooth_accel":-0.284591,"accel_momentum":-0.170538,"rvol_3bar":[0.583654,1.155003,0.704808],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":4985.0,"sell_vol":588.0,"unclassified_vol":0.0,"imbalance":0.788983,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":0.520807},"context":{"vwap":12.180223,"price_vs_vwap_pct":0.654973,"ema9":12.223208,"ema20":12.217947,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.841473,"dist_to_hod_atr":6.709916,"atr":0.034278,"spread_atr":0.291735,"own_change_pct":0.574477,"rel_strength_pct":{"SPY":0.60164,"IWM":0.570974}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.556081},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d30ade762592","ts":"2026-09-21T17:52:09.727392+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3776,"ext_from_open_pct":3.18,"max_ext_allowed_pct":3.0,"volume_pace":1.213,"trend":"flat","recent_slope_pct":0.044,"volatility":"unknown"},"price":6.49,"volume":{"bars":262,"last_bar_volume":108271.0,"baseline_avg":36873.35,"bar_rvol":2.936294,"raw_accel":0.910822,"smooth_accel":0.98785,"accel_momentum":0.866376,"rvol_3bar":[2.431006,1.639682,2.936294],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":651.0,"sell_vol":22103.0,"unclassified_vol":0.0,"imbalance":-0.942779,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.001725},"context":{"vwap":6.377501,"price_vs_vwap_pct":1.763995,"ema9":6.479557,"ema20":6.479764,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.30722,"dist_to_hod_atr":1.480468,"atr":0.013509,"spread_atr":0.740234,"own_change_pct":0.157529,"rel_strength_pct":{"SPY":0.184692,"IWM":0.154026}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.768277},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"925ac2f43619","ts":"2026-09-21T17:52:09.727392+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.78 below VWAP $8.79","plan":{"state":"PASS","setup":"","stop":8.6955,"target":8.94,"target_label":"ceiling","reward_risk":1.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.7833,"vwap":8.7869,"ext_from_open_pct":3.09,"max_ext_allowed_pct":4.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":0.0002,"volatility":"unknown"},"price":8.7833,"volume":{"bars":262,"last_bar_volume":20279.0,"baseline_avg":58894.55,"bar_rvol":0.344327,"raw_accel":-0.752523,"smooth_accel":0.190743,"accel_momentum":-0.155978,"rvol_3bar":[0.265973,1.34962,0.344327],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":14952.0,"sell_vol":2417.0,"unclassified_vol":0.0,"imbalance":0.721688,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":1.111781},"context":{"vwap":8.786887,"price_vs_vwap_pct":-0.040827,"ema9":8.787878,"ema20":8.798775,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.752796,"dist_to_hod_atr":5.615719,"atr":0.027904,"spread_atr":0.358374,"own_change_pct":0.34227,"rel_strength_pct":{"SPY":0.369433,"IWM":0.338767}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.248497},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"295e15816421","ts":"2026-09-21T17:52:14.892973+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 97.8s, plan says PASS; stop 12.07, target 12.34 (premarket_high), R:R 0.56; target 0.10 away > ~0.08 reachable in 123 min","plan":{"state":"PASS","setup":"","stop":12.066,"target":12.34,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":68.0,"room_to_5d_high_atr":0.51},"price":12.2413,"vwap":12.1802,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.635,"trend":"flat","recent_slope_pct":0.0735,"volatility":"medium"},"price":12.2413,"volume":{"bars":262,"last_bar_volume":6292.0,"baseline_avg":8927.25,"bar_rvol":0.704808,"raw_accel":-0.372244,"smooth_accel":-0.284591,"accel_momentum":-0.170538,"rvol_3bar":[0.583654,1.155003,0.704808],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":4855.0,"sell_vol":819.0,"unclassified_vol":0.0,"imbalance":0.711315,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":0.530952},"context":{"vwap":12.180223,"price_vs_vwap_pct":0.501445,"ema9":12.223208,"ema20":12.217947,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.991193,"dist_to_hod_atr":7.255461,"atr":0.034278,"spread_atr":0.291735,"own_change_pct":0.574477,"rel_strength_pct":{"SPY":0.60164,"IWM":0.570974}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.501341},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5ed497ec6fd0","ts":"2026-09-21T17:52:20.056121+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.5832,"target":13.53,"target_label":"ceiling","reward_risk":1.42,"pos_in_5d_range_pct":151.7,"room_to_5d_high_atr":-1.54},"price":12.975,"vwap":12.9215,"ext_from_open_pct":-0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.556,"trend":"flat","recent_slope_pct":-0.0269,"volatility":"high"},"price":12.975,"volume":{"bars":262,"last_bar_volume":2205.0,"baseline_avg":6953.25,"bar_rvol":0.317118,"raw_accel":-0.753383,"smooth_accel":0.891132,"accel_momentum":0.63029,"rvol_3bar":[1.057512,1.2619,0.317118],"trend_3bar":"MIXED","projected_rvol":0.985262},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1046.0,"sell_vol":1973.0,"unclassified_vol":0.0,"imbalance":-0.307055,"bid":12.95,"ask":13.02,"spread_pct":0.539084,"quote_size_imbalance":null,"quote_age_s":0.856812},"context":{"vwap":12.921427,"price_vs_vwap_pct":0.414605,"ema9":12.998613,"ema20":12.995043,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.978261,"dist_to_hod_atr":10.765919,"atr":0.076631,"spread_atr":0.913472,"own_change_pct":-0.076746,"rel_strength_pct":{"SPY":-0.049583,"IWM":-0.080249}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.097373},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"14211a153354","ts":"2026-09-21T17:52:20.056121+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4447,"target":6.94,"target_label":"ceiling","reward_risk":2.03,"pos_in_5d_range_pct":110.7,"room_to_5d_high_atr":-0.29},"price":6.608,"vwap":6.5891,"ext_from_open_pct":3.41,"max_ext_allowed_pct":4.0,"volume_pace":0.525,"trend":"flat","recent_slope_pct":0.0015,"volatility":"high"},"price":6.608,"volume":{"bars":260,"last_bar_volume":1196.0,"baseline_avg":2319.2,"bar_rvol":0.515695,"raw_accel":0.916667,"smooth_accel":0.132066,"accel_momentum":0.979667,"rvol_3bar":[0.741273,0.16776,0.515695],"trend_3bar":"MIXED","projected_rvol":0.152212},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":18.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-0.694915,"bid":6.58,"ask":6.62,"spread_pct":0.606061,"quote_size_imbalance":null,"quote_age_s":3.031659},"context":{"vwap":6.589146,"price_vs_vwap_pct":0.286135,"ema9":6.609409,"ema20":6.620166,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.783862,"dist_to_hod_atr":16.541612,"atr":0.020071,"spread_atr":1.992965,"own_change_pct":0.075815,"rel_strength_pct":{"SPY":0.102978,"IWM":0.072312}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.358364},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d559cc25b895","ts":"2026-09-21T17:52:20.056121+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3776,"ext_from_open_pct":3.18,"max_ext_allowed_pct":4.0,"volume_pace":1.212,"trend":"flat","recent_slope_pct":0.044,"volatility":"unknown"},"price":6.49,"volume":{"bars":262,"last_bar_volume":108271.0,"baseline_avg":36873.35,"bar_rvol":2.936294,"raw_accel":0.910822,"smooth_accel":0.98785,"accel_momentum":0.866376,"rvol_3bar":[2.431006,1.639682,2.936294],"trend_3bar":"MIXED","projected_rvol":0.90243},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":468.0,"sell_vol":21849.0,"unclassified_vol":0.0,"imbalance":-0.958059,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.055836},"context":{"vwap":6.377501,"price_vs_vwap_pct":1.763995,"ema9":6.479557,"ema20":6.479764,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.30722,"dist_to_hod_atr":1.480468,"atr":0.013509,"spread_atr":0.740234,"own_change_pct":0.157529,"rel_strength_pct":{"SPY":0.184692,"IWM":0.154026}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.813143},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d1d444dcca55","ts":"2026-09-21T17:52:20.056121+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.709,"target":8.94,"target_label":"ceiling","reward_risk":1.63,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.797,"vwap":8.7869,"ext_from_open_pct":3.25,"max_ext_allowed_pct":4.0,"volume_pace":0.473,"trend":"flat","recent_slope_pct":0.0314,"volatility":"unknown"},"price":8.797,"volume":{"bars":262,"last_bar_volume":20279.0,"baseline_avg":58894.55,"bar_rvol":0.344327,"raw_accel":-0.752523,"smooth_accel":0.190743,"accel_momentum":-0.155978,"rvol_3bar":[0.265973,1.34962,0.344327],"trend_3bar":"MIXED","projected_rvol":0.411498},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":4796.0,"sell_vol":4023.0,"unclassified_vol":0.0,"imbalance":0.087652,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":3.492727},"context":{"vwap":8.786887,"price_vs_vwap_pct":0.115088,"ema9":8.787878,"ema20":8.798775,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.599553,"dist_to_hod_atr":5.124747,"atr":0.027904,"spread_atr":0.358374,"own_change_pct":0.34227,"rel_strength_pct":{"SPY":0.369433,"IWM":0.338767}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.030181},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7054a2084c19","ts":"2026-09-21T17:52:25.210935+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.00 below VWAP $9.01","plan":{"state":"PASS","setup":"","stop":8.9122,"target":9.055,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":124.4,"room_to_5d_high_atr":-0.78},"price":8.9987,"vwap":9.0094,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":4.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0631,"volatility":"medium"},"price":8.9987,"volume":{"bars":262,"last_bar_volume":73245.0,"baseline_avg":7885.4,"bar_rvol":9.288685,"raw_accel":22.581777,"smooth_accel":2.05131,"accel_momentum":1.562237,"rvol_3bar":[0.384553,0.396745,9.288685],"trend_3bar":"ACCELERATING","projected_rvol":2.513804},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":7562.0,"sell_vol":768.0,"unclassified_vol":0.0,"imbalance":0.815606,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":2.013948},"context":{"vwap":9.009408,"price_vs_vwap_pct":-0.118852,"ema9":8.985512,"ema20":8.981441,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.437037,"dist_to_hod_atr":6.580833,"atr":0.019937,"spread_atr":0.501588,"own_change_pct":0.411142,"rel_strength_pct":{"SPY":0.438305,"IWM":0.407639}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":7.57591},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"14305ccd42f9","ts":"2026-09-21T17:52:25.210935+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4184,"target":7.775,"target_label":"range_20d_high","reward_risk":19.93,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4832,"vwap":6.3776,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":1.212,"trend":"flat","recent_slope_pct":0.023,"volatility":"unknown"},"price":6.4832,"volume":{"bars":262,"last_bar_volume":108271.0,"baseline_avg":36873.35,"bar_rvol":2.936294,"raw_accel":0.910822,"smooth_accel":0.98785,"accel_momentum":0.866376,"rvol_3bar":[2.431006,1.639682,2.936294],"trend_3bar":"MIXED","projected_rvol":0.758059},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":855.0,"sell_vol":11035.0,"unclassified_vol":0.0,"imbalance":-0.856182,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":2.633671},"context":{"vwap":6.377501,"price_vs_vwap_pct":1.65737,"ema9":6.479557,"ema20":6.479764,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.411674,"dist_to_hod_atr":1.983828,"atr":0.013509,"spread_atr":0.740234,"own_change_pct":0.157529,"rel_strength_pct":{"SPY":0.184692,"IWM":0.154026}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.514001},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a71eca334ba9","ts":"2026-09-21T17:52:30.362712+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.9302,"target":9.0563,"target_label":"clear air (typical 60-min move)","reward_risk":0.46,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.83},"price":9.0167,"vwap":9.0094,"ext_from_open_pct":-0.04,"max_ext_allowed_pct":4.0,"volume_pace":0.799,"trend":"flat","recent_slope_pct":0.103,"volatility":"medium"},"price":9.0167,"volume":{"bars":262,"last_bar_volume":73245.0,"baseline_avg":7885.4,"bar_rvol":9.288685,"raw_accel":22.581777,"smooth_accel":2.05131,"accel_momentum":1.562237,"rvol_3bar":[0.384553,0.396745,9.288685],"trend_3bar":"ACCELERATING","projected_rvol":4.409367},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":16827.0,"sell_vol":768.0,"unclassified_vol":0.0,"imbalance":0.912702,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.228823},"context":{"vwap":9.009408,"price_vs_vwap_pct":0.08094,"ema9":8.985512,"ema20":8.981441,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.239882,"dist_to_hod_atr":5.677975,"atr":0.019937,"spread_atr":0.501588,"own_change_pct":0.411142,"rel_strength_pct":{"SPY":0.438305,"IWM":0.407639}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":8.477806},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2e943fe87132","ts":"2026-09-21T17:52:35.532918+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.01","plan":{"state":"PASS","setup":"","stop":8.9189,"target":9.045,"target_label":"clear air (typical 60-min move)","reward_risk":0.46,"pos_in_5d_range_pct":125.0,"room_to_5d_high_atr":-0.8},"price":9.0054,"vwap":9.0094,"ext_from_open_pct":-0.16,"max_ext_allowed_pct":4.0,"volume_pace":0.798,"trend":"flat","recent_slope_pct":0.0779,"volatility":"medium"},"price":9.0054,"volume":{"bars":262,"last_bar_volume":73245.0,"baseline_avg":7885.4,"bar_rvol":9.288685,"raw_accel":22.581777,"smooth_accel":2.05131,"accel_momentum":1.562237,"rvol_3bar":[0.384553,0.396745,9.288685],"trend_3bar":"ACCELERATING","projected_rvol":3.767997},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":16827.0,"sell_vol":769.0,"unclassified_vol":0.0,"imbalance":0.912594,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":5.399029},"context":{"vwap":9.009408,"price_vs_vwap_pct":-0.044485,"ema9":8.985512,"ema20":8.981441,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.363651,"dist_to_hod_atr":6.244769,"atr":0.019937,"spread_atr":0.501588,"own_change_pct":0.411142,"rel_strength_pct":{"SPY":0.438305,"IWM":0.407639}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":8.476796},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"036636275299","ts":"2026-09-21T17:52:50.942203+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 133.9s, plan says WATCH; stop 12.08, target 12.34 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 12.26; breakout: 1-min close > 12.29 on >= 16875 sh","plan":{"state":"WATCH","setup":"","stop":12.0847,"target":12.34,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":69.6,"room_to_5d_high_atr":0.48},"price":12.26,"vwap":12.1802,"ext_from_open_pct":-0.33,"max_ext_allowed_pct":3.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":0.1041,"volatility":"medium"},"price":12.26,"volume":{"bars":262,"last_bar_volume":6292.0,"baseline_avg":8927.25,"bar_rvol":0.704808,"raw_accel":-0.372244,"smooth_accel":-0.284591,"accel_momentum":-0.170538,"rvol_3bar":[0.583654,1.155003,0.704808],"trend_3bar":"MIXED","projected_rvol":0.16307},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":234.0,"sell_vol":316.0,"unclassified_vol":0.0,"imbalance":-0.149091,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":3.259789},"context":{"vwap":12.180223,"price_vs_vwap_pct":0.654973,"ema9":12.223208,"ema20":12.217947,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.841473,"dist_to_hod_atr":6.709916,"atr":0.034278,"spread_atr":0.291735,"own_change_pct":0.574477,"rel_strength_pct":{"SPY":0.60164,"IWM":0.570974}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.105081},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3351eb90f650","ts":"2026-09-21T17:52:50.942203+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7219,"target":8.94,"target_label":"ceiling","reward_risk":1.48,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.81,"vwap":8.7869,"ext_from_open_pct":3.4,"max_ext_allowed_pct":3.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":0.061,"volatility":"unknown"},"price":8.81,"volume":{"bars":262,"last_bar_volume":20279.0,"baseline_avg":58894.55,"bar_rvol":0.344327,"raw_accel":-0.752523,"smooth_accel":0.190743,"accel_momentum":-0.155978,"rvol_3bar":[0.265973,1.34962,0.344327],"trend_3bar":"MIXED","projected_rvol":1.147937},"flow":{"window_s":30,"trades":184,"trade_rate":6.133333,"buy_vol":27289.0,"sell_vol":22011.0,"unclassified_vol":0.0,"imbalance":0.107059,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.1278},"context":{"vwap":8.786887,"price_vs_vwap_pct":0.263035,"ema9":8.787878,"ema20":8.798775,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.454139,"dist_to_hod_atr":4.65886,"atr":0.027904,"spread_atr":0.358374,"own_change_pct":0.34227,"rel_strength_pct":{"SPY":0.369433,"IWM":0.338767}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.036863},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f4557d9592ee","ts":"2026-09-21T17:52:56.096662+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 139.0s, plan says PASS; stop 12.08, target 12.34 (premarket_high), R:R 0.48; target 0.08 away > ~0.08 reachable in 122 min","plan":{"state":"PASS","setup":"","stop":12.0797,"target":12.34,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":69.2,"room_to_5d_high_atr":0.49},"price":12.255,"vwap":12.1802,"ext_from_open_pct":-0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":0.0959,"volatility":"medium"},"price":12.255,"volume":{"bars":262,"last_bar_volume":6292.0,"baseline_avg":8927.25,"bar_rvol":0.704808,"raw_accel":-0.372244,"smooth_accel":-0.284591,"accel_momentum":-0.170538,"rvol_3bar":[0.583654,1.155003,0.704808],"trend_3bar":"MIXED","projected_rvol":0.148446},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":136.0,"sell_vol":275.0,"unclassified_vol":0.0,"imbalance":-0.3382,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":1.501844},"context":{"vwap":12.180223,"price_vs_vwap_pct":0.613923,"ema9":12.223208,"ema20":12.217947,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.881505,"dist_to_hod_atr":6.855784,"atr":0.034278,"spread_atr":0.291735,"own_change_pct":0.574477,"rel_strength_pct":{"SPY":0.60164,"IWM":0.570974}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.238366},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"68466cd17e61","ts":"2026-09-21T17:53:01.251670+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.5882,"target":13.53,"target_label":"ceiling","reward_risk":1.4,"pos_in_5d_range_pct":151.8,"room_to_5d_high_atr":-1.55},"price":12.98,"vwap":12.9215,"ext_from_open_pct":-0.23,"max_ext_allowed_pct":3.0,"volume_pace":0.555,"trend":"flat","recent_slope_pct":-0.1038,"volatility":"high"},"price":12.98,"volume":{"bars":263,"last_bar_volume":4480.0,"baseline_avg":6793.6,"bar_rvol":0.659444,"raw_accel":1.031746,"smooth_accel":0.242624,"accel_momentum":-0.648508,"rvol_3bar":[1.2619,0.317118,0.659444],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":31.0,"sell_vol":2130.0,"unclassified_vol":0.0,"imbalance":-0.97131,"bid":12.95,"ask":12.99,"spread_pct":0.308404,"quote_size_imbalance":null,"quote_age_s":15.747465},"context":{"vwap":12.92147,"price_vs_vwap_pct":0.452965,"ema9":12.992891,"ema20":12.992658,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-5.942029,"dist_to_hod_atr":10.767218,"atr":0.076157,"spread_atr":0.52523,"own_change_pct":0.07716,"rel_strength_pct":{"SPY":0.055163,"IWM":0.017597}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.640524},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6880fc917084","ts":"2026-09-21T17:53:01.251670+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4417,"target":6.94,"target_label":"ceiling","reward_risk":2.05,"pos_in_5d_range_pct":110.5,"room_to_5d_high_atr":-0.28},"price":6.605,"vwap":6.5892,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.524,"trend":"flat","recent_slope_pct":-0.0076,"volatility":"high"},"price":6.605,"volume":{"bars":260,"last_bar_volume":1196.0,"baseline_avg":2319.2,"bar_rvol":0.515695,"raw_accel":0.916667,"smooth_accel":0.132066,"accel_momentum":0.979667,"rvol_3bar":[0.741273,0.16776,0.515695],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":200.0,"sell_vol":500.0,"unclassified_vol":0.0,"imbalance":-0.428571,"bid":6.59,"ask":6.62,"spread_pct":0.454201,"quote_size_imbalance":null,"quote_age_s":1.151409},"context":{"vwap":6.589146,"price_vs_vwap_pct":0.240606,"ema9":6.609409,"ema20":6.620166,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.827089,"dist_to_hod_atr":16.691084,"atr":0.020071,"spread_atr":1.494724,"own_change_pct":0.075815,"rel_strength_pct":{"SPY":0.053817,"IWM":0.016252}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.221012},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9a763b96eb44","ts":"2026-09-21T17:53:01.251670+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.9285,"target":9.0546,"target_label":"clear air (typical 60-min move)","reward_risk":0.46,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0094,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.1241,"volatility":"medium"},"price":9.015,"volume":{"bars":263,"last_bar_volume":18339.0,"baseline_avg":11108.45,"bar_rvol":1.650905,"raw_accel":-0.749621,"smooth_accel":2.519028,"accel_momentum":0.467718,"rvol_3bar":[0.396745,9.288685,1.650905],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":741.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.986595,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.035262},"context":{"vwap":9.009418,"price_vs_vwap_pct":0.061957,"ema9":8.99239,"ema20":8.985104,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":5.7027,"atr":0.020148,"spread_atr":0.496319,"own_change_pct":0.388425,"rel_strength_pct":{"SPY":0.366428,"IWM":0.328862}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.628775},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5188e545c6e5","ts":"2026-09-21T17:53:06.517514+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.01","plan":{"state":"PASS","setup":"","stop":8.9197,"target":9.0458,"target_label":"clear air (typical 60-min move)","reward_risk":0.46,"pos_in_5d_range_pct":125.1,"room_to_5d_high_atr":-0.8},"price":9.0062,"vwap":9.0094,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.1046,"volatility":"medium"},"price":9.0062,"volume":{"bars":263,"last_bar_volume":18339.0,"baseline_avg":11108.45,"bar_rvol":1.650905,"raw_accel":-0.749621,"smooth_accel":2.519028,"accel_momentum":0.467718,"rvol_3bar":[0.396745,9.288685,1.650905],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":741.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.986595,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.502608},"context":{"vwap":9.009418,"price_vs_vwap_pct":-0.035719,"ema9":8.99239,"ema20":8.985104,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.354889,"dist_to_hod_atr":6.13946,"atr":0.020148,"spread_atr":0.496319,"own_change_pct":0.388425,"rel_strength_pct":{"SPY":0.366428,"IWM":0.328862}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.628775},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9bb1e29530c3","ts":"2026-09-21T17:53:06.517514+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.7024,"target":5.8204,"target_label":"ceiling","reward_risk":1.05,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7589,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":1.062,"trend":"flat","recent_slope_pct":-0.0033,"volatility":"unknown"},"price":5.76,"volume":{"bars":263,"last_bar_volume":20831.0,"baseline_avg":45779.75,"bar_rvol":0.455027,"raw_accel":-0.424335,"smooth_accel":-0.577285,"accel_momentum":-0.157752,"rvol_3bar":[0.313356,0.81498,0.455027],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":3429.0,"sell_vol":9854.0,"unclassified_vol":0.0,"imbalance":-0.483701,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":3.013423},"context":{"vwap":5.758946,"price_vs_vwap_pct":0.018311,"ema9":5.764711,"ema20":5.763622,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":5.915689,"atr":0.018595,"spread_atr":0.53779,"own_change_pct":-0.032929,"rel_strength_pct":{"SPY":-0.054927,"IWM":-0.092492}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.220097},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3249a3f2f946","ts":"2026-09-21T17:53:11.698585+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.5482,"target":13.53,"target_label":"ceiling","reward_risk":1.51,"pos_in_5d_range_pct":150.9,"room_to_5d_high_atr":-1.52},"price":12.94,"vwap":12.9215,"ext_from_open_pct":-0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.555,"trend":"flat","recent_slope_pct":-0.1655,"volatility":"high"},"price":12.94,"volume":{"bars":263,"last_bar_volume":4480.0,"baseline_avg":6793.6,"bar_rvol":0.659444,"raw_accel":1.031746,"smooth_accel":0.242624,"accel_momentum":-0.648508,"rvol_3bar":[1.2619,0.317118,0.659444],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":32.0,"sell_vol":3232.0,"unclassified_vol":0.0,"imbalance":-0.980392,"bid":12.94,"ask":12.99,"spread_pct":0.385654,"quote_size_imbalance":null,"quote_age_s":2.257079},"context":{"vwap":12.92147,"price_vs_vwap_pct":0.143403,"ema9":12.992891,"ema20":12.992658,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.231884,"dist_to_hod_atr":11.292449,"atr":0.076157,"spread_atr":0.656538,"own_change_pct":0.07716,"rel_strength_pct":{"SPY":0.055163,"IWM":0.017597}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.646514},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"53de5ab05d51","ts":"2026-09-21T17:53:11.698585+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.76","plan":{"state":"PASS","setup":"","stop":5.6974,"target":5.8204,"target_label":"ceiling","reward_risk":1.14,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.755,"vwap":5.7589,"ext_from_open_pct":3.88,"max_ext_allowed_pct":4.0,"volume_pace":1.062,"trend":"flat","recent_slope_pct":-0.0207,"volatility":"unknown"},"price":5.755,"volume":{"bars":263,"last_bar_volume":20831.0,"baseline_avg":45779.75,"bar_rvol":0.455027,"raw_accel":-0.424335,"smooth_accel":-0.577285,"accel_momentum":-0.157752,"rvol_3bar":[0.313356,0.81498,0.455027],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":4520.0,"sell_vol":9788.0,"unclassified_vol":0.0,"imbalance":-0.368186,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":8.194494},"context":{"vwap":5.758946,"price_vs_vwap_pct":-0.068511,"ema9":5.764711,"ema20":5.763622,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.959114,"dist_to_hod_atr":6.184584,"atr":0.018595,"spread_atr":0.53779,"own_change_pct":-0.032929,"rel_strength_pct":{"SPY":-0.054927,"IWM":-0.092492}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.167534},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"de532d5bcb95","ts":"2026-09-21T17:53:16.903218+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.9231,"target":9.0492,"target_label":"clear air (typical 60-min move)","reward_risk":0.46,"pos_in_5d_range_pct":125.4,"room_to_5d_high_atr":-0.81},"price":9.0096,"vwap":9.0094,"ext_from_open_pct":-0.12,"max_ext_allowed_pct":4.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":0.1121,"volatility":"medium"},"price":9.0096,"volume":{"bars":263,"last_bar_volume":18339.0,"baseline_avg":11108.45,"bar_rvol":1.650905,"raw_accel":-0.749621,"smooth_accel":2.519028,"accel_momentum":0.467718,"rvol_3bar":[0.396745,9.288685,1.650905],"trend_3bar":"MIXED","projected_rvol":0.012462},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":609.0,"sell_vol":23.0,"unclassified_vol":0.0,"imbalance":0.927215,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":3.603789},"context":{"vwap":9.009418,"price_vs_vwap_pct":0.002019,"ema9":8.99239,"ema20":8.985104,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.317649,"dist_to_hod_atr":5.970712,"atr":0.020148,"spread_atr":0.496319,"own_change_pct":0.388425,"rel_strength_pct":{"SPY":0.366428,"IWM":0.328862}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.530745},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a504d4f5a436","ts":"2026-09-21T17:53:27.250052+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 170.2s, plan says WATCH; stop 12.09, target 12.34 (premarket_high), R:R 0.43; R:R 0.43 < 2.0 at 12.27; breakout: 1-min close > 12.29 on >= 16846 sh","plan":{"state":"WATCH","setup":"","stop":12.0897,"target":12.34,"target_label":"premarket_high","reward_risk":0.43,"pos_in_5d_range_pct":70.1,"room_to_5d_high_atr":0.48},"price":12.265,"vwap":12.1804,"ext_from_open_pct":-0.28,"max_ext_allowed_pct":4.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":0.0353,"volatility":"medium"},"price":12.265,"volume":{"bars":263,"last_bar_volume":1241.0,"baseline_avg":8860.25,"bar_rvol":0.140064,"raw_accel":-0.802765,"smooth_accel":-0.303444,"accel_momentum":-0.018853,"rvol_3bar":[1.155003,0.704808,0.140064],"trend_3bar":"DECELERATING","projected_rvol":2.5293},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":9767.0,"sell_vol":413.0,"unclassified_vol":0.0,"imbalance":0.918861,"bid":12.26,"ask":12.27,"spread_pct":0.081533,"quote_size_imbalance":null,"quote_age_s":0.346054},"context":{"vwap":12.180239,"price_vs_vwap_pct":0.695889,"ema9":12.228566,"ema20":12.221,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.801441,"dist_to_hod_atr":6.429764,"atr":0.034994,"spread_atr":0.285767,"own_change_pct":0.410659,"rel_strength_pct":{"SPY":0.388661,"IWM":0.351096}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.128699},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b24397420078","ts":"2026-09-21T17:53:32.548883+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 175.5s, plan says PASS; stop 12.05, target 12.34 (premarket_high), R:R 0.67; target 0.12 away > ~0.08 reachable in 121 min","plan":{"state":"PASS","setup":"","stop":12.0471,"target":12.34,"target_label":"premarket_high","reward_risk":0.67,"pos_in_5d_range_pct":66.3,"room_to_5d_high_atr":0.54},"price":12.2224,"vwap":12.1804,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":4.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":-0.0343,"volatility":"medium"},"price":12.2224,"volume":{"bars":263,"last_bar_volume":1241.0,"baseline_avg":8860.25,"bar_rvol":0.140064,"raw_accel":-0.802765,"smooth_accel":-0.303444,"accel_momentum":-0.018853,"rvol_3bar":[1.155003,0.704808,0.140064],"trend_3bar":"DECELERATING","projected_rvol":2.127943},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":9767.0,"sell_vol":460.0,"unclassified_vol":0.0,"imbalance":0.910042,"bid":12.26,"ask":12.27,"spread_pct":0.081533,"quote_size_imbalance":null,"quote_age_s":0.060393},"context":{"vwap":12.180239,"price_vs_vwap_pct":0.346142,"ema9":12.228566,"ema20":12.221,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.142514,"dist_to_hod_atr":7.647132,"atr":0.034994,"spread_atr":0.285767,"own_change_pct":0.410659,"rel_strength_pct":{"SPY":0.388661,"IWM":0.351096}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.127464},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"3b82af189e52","ts":"2026-09-21T17:53:42.997517+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 185.9s, plan says WATCH; stop 12.08, target 12.34 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 12.26; breakout: 1-min close > 12.29 on >= 16846 sh","plan":{"state":"WATCH","setup":"","stop":12.0847,"target":12.34,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":69.6,"room_to_5d_high_atr":0.48},"price":12.26,"vwap":12.1804,"ext_from_open_pct":-0.33,"max_ext_allowed_pct":4.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":0.0271,"volatility":"medium"},"price":12.26,"volume":{"bars":263,"last_bar_volume":1241.0,"baseline_avg":8860.25,"bar_rvol":0.140064,"raw_accel":-0.802765,"smooth_accel":-0.303444,"accel_momentum":-0.018853,"rvol_3bar":[1.155003,0.704808,0.140064],"trend_3bar":"DECELERATING","projected_rvol":2.002054},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":5806.0,"sell_vol":411.0,"unclassified_vol":0.0,"imbalance":0.867782,"bid":12.26,"ask":12.27,"spread_pct":0.081533,"quote_size_imbalance":null,"quote_age_s":0.465481},"context":{"vwap":12.180239,"price_vs_vwap_pct":0.654839,"ema9":12.228566,"ema20":12.221,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.841473,"dist_to_hod_atr":6.572647,"atr":0.034994,"spread_atr":0.285767,"own_change_pct":0.410659,"rel_strength_pct":{"SPY":0.388661,"IWM":0.351096}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.121545},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"7da52e2c3151","ts":"2026-09-21T17:54:03.649058+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.9285,"target":9.0546,"target_label":"clear air (typical 60-min move)","reward_risk":0.46,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0094,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":0.0716,"volatility":"medium"},"price":9.015,"volume":{"bars":264,"last_bar_volume":1524.0,"baseline_avg":11634.4,"bar_rvol":0.130991,"raw_accel":-0.916898,"smooth_accel":2.673334,"accel_momentum":0.154306,"rvol_3bar":[9.288685,1.650905,0.130991],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":34.0,"sell_vol":409.0,"unclassified_vol":0.0,"imbalance":-0.846501,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.538024},"context":{"vwap":9.009419,"price_vs_vwap_pct":0.061947,"ema9":8.997192,"ema20":8.988084,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":5.72805,"atr":0.020059,"spread_atr":0.498525,"own_change_pct":0.315977,"rel_strength_pct":{"SPY":0.283624,"IWM":0.263432}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.110884},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"5cf701e8f235","ts":"2026-09-21T17:54:03.649058+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 206.6s, plan says PASS; stop 12.08, target 12.34 (premarket_high), R:R 0.51; target 0.09 away > ~0.08 reachable in 121 min","plan":{"state":"PASS","setup":"","stop":12.0755,"target":12.34,"target_label":"premarket_high","reward_risk":0.51,"pos_in_5d_range_pct":68.8,"room_to_5d_high_atr":0.5},"price":12.2508,"vwap":12.1804,"ext_from_open_pct":-0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":0.0162,"volatility":"medium"},"price":12.2508,"volume":{"bars":264,"last_bar_volume":12977.0,"baseline_avg":8853.6,"bar_rvol":1.465731,"raw_accel":4.862926,"smooth_accel":-0.220211,"accel_momentum":0.083233,"rvol_3bar":[0.704808,0.140064,1.465731],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":2174.0,"sell_vol":87.0,"unclassified_vol":0.0,"imbalance":0.923043,"bid":12.26,"ask":12.27,"spread_pct":0.081533,"quote_size_imbalance":null,"quote_age_s":0.543212},"context":{"vwap":12.180436,"price_vs_vwap_pct":0.577679,"ema9":12.236213,"ema20":12.225362,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.915132,"dist_to_hod_atr":6.637653,"atr":0.036037,"spread_atr":0.277494,"own_change_pct":0.536828,"rel_strength_pct":{"SPY":0.504475,"IWM":0.484283}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.352933},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"08db1c33c86a","ts":"2026-09-21T17:54:08.810383+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 211.7s, plan says WATCH; stop 12.08, target 12.34 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 12.26; breakout: 1-min close > 12.29 on >= 17069 sh","plan":{"state":"WATCH","setup":"","stop":12.0847,"target":12.34,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":69.6,"room_to_5d_high_atr":0.48},"price":12.26,"vwap":12.1804,"ext_from_open_pct":-0.33,"max_ext_allowed_pct":3.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":0.0312,"volatility":"medium"},"price":12.26,"volume":{"bars":264,"last_bar_volume":12977.0,"baseline_avg":8853.6,"bar_rvol":1.465731,"raw_accel":4.862926,"smooth_accel":-0.220211,"accel_momentum":0.083233,"rvol_3bar":[0.704808,0.140064,1.465731],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":675.0,"sell_vol":84.0,"unclassified_vol":0.0,"imbalance":0.778656,"bid":12.26,"ask":12.27,"spread_pct":0.081533,"quote_size_imbalance":null,"quote_age_s":4.061565},"context":{"vwap":12.180436,"price_vs_vwap_pct":0.653209,"ema9":12.236213,"ema20":12.225362,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.841473,"dist_to_hod_atr":6.382359,"atr":0.036037,"spread_atr":0.277494,"own_change_pct":0.536828,"rel_strength_pct":{"SPY":0.504475,"IWM":0.484283}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.141301},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7610e159dbfc","ts":"2026-09-21T17:54:13.960001+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 216.9s, plan says PASS; stop 12.08, target 12.34 (premarket_high), R:R 0.51; target 0.09 away > ~0.08 reachable in 121 min","plan":{"state":"PASS","setup":"","stop":12.0758,"target":12.34,"target_label":"premarket_high","reward_risk":0.51,"pos_in_5d_range_pct":68.8,"room_to_5d_high_atr":0.5},"price":12.2511,"vwap":12.1805,"ext_from_open_pct":-0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":0.0166,"volatility":"medium"},"price":12.2511,"volume":{"bars":264,"last_bar_volume":12977.0,"baseline_avg":8853.6,"bar_rvol":1.465731,"raw_accel":4.862926,"smooth_accel":-0.220211,"accel_momentum":0.083233,"rvol_3bar":[0.704808,0.140064,1.465731],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":659.0,"sell_vol":523.0,"unclassified_vol":0.0,"imbalance":0.115059,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":0.241113},"context":{"vwap":12.180436,"price_vs_vwap_pct":0.580141,"ema9":12.236213,"ema20":12.225362,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.91273,"dist_to_hod_atr":6.629329,"atr":0.036037,"spread_atr":0.277494,"own_change_pct":0.536828,"rel_strength_pct":{"SPY":0.504475,"IWM":0.484283}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.168646},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"14b24c59bcab","ts":"2026-09-21T17:54:19.103015+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 222.0s, plan says WATCH; stop 12.08, target 12.34 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 12.26; breakout: 1-min close > 12.29 on >= 17069 sh","plan":{"state":"WATCH","setup":"","stop":12.0847,"target":12.34,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":69.6,"room_to_5d_high_atr":0.48},"price":12.26,"vwap":12.1805,"ext_from_open_pct":-0.33,"max_ext_allowed_pct":3.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":0.0312,"volatility":"medium"},"price":12.26,"volume":{"bars":264,"last_bar_volume":12977.0,"baseline_avg":8853.6,"bar_rvol":1.465731,"raw_accel":4.862926,"smooth_accel":-0.220211,"accel_momentum":0.083233,"rvol_3bar":[0.704808,0.140064,1.465731],"trend_3bar":"MIXED","projected_rvol":0.387748},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":774.0,"sell_vol":526.0,"unclassified_vol":0.0,"imbalance":0.190769,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":0.224526},"context":{"vwap":12.180436,"price_vs_vwap_pct":0.653209,"ema9":12.236213,"ema20":12.225362,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.841473,"dist_to_hod_atr":6.382359,"atr":0.036037,"spread_atr":0.277494,"own_change_pct":0.536828,"rel_strength_pct":{"SPY":0.504475,"IWM":0.484283}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.279616},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2575e78d67e6","ts":"2026-09-21T17:54:24.221456+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 227.2s, plan says PASS; stop 12.08, target 12.34 (premarket_high), R:R 0.46; target 0.08 away > ~0.08 reachable in 121 min","plan":{"state":"PASS","setup":"","stop":12.0833,"target":12.34,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":69.5,"room_to_5d_high_atr":0.49},"price":12.2586,"vwap":12.1805,"ext_from_open_pct":-0.34,"max_ext_allowed_pct":3.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":0.0289,"volatility":"medium"},"price":12.2586,"volume":{"bars":264,"last_bar_volume":12977.0,"baseline_avg":8853.6,"bar_rvol":1.465731,"raw_accel":4.862926,"smooth_accel":-0.220211,"accel_momentum":0.083233,"rvol_3bar":[0.704808,0.140064,1.465731],"trend_3bar":"MIXED","projected_rvol":0.334628},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":674.0,"sell_vol":523.0,"unclassified_vol":0.0,"imbalance":0.126149,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":4.121288},"context":{"vwap":12.180436,"price_vs_vwap_pct":0.641716,"ema9":12.236213,"ema20":12.225362,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.852682,"dist_to_hod_atr":6.421208,"atr":0.036037,"spread_atr":0.277494,"own_change_pct":0.536828,"rel_strength_pct":{"SPY":0.504475,"IWM":0.484283}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.1849},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5e09928c137c","ts":"2026-09-21T17:54:34.534141+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4434,"target":6.94,"target_label":"ceiling","reward_risk":2.04,"pos_in_5d_range_pct":110.6,"room_to_5d_high_atr":-0.29},"price":6.6067,"vwap":6.5892,"ext_from_open_pct":3.39,"max_ext_allowed_pct":4.0,"volume_pace":0.523,"trend":"flat","recent_slope_pct":0.0005,"volatility":"high"},"price":6.6067,"volume":{"bars":262,"last_bar_volume":323.0,"baseline_avg":2248.0,"bar_rvol":0.143683,"raw_accel":-0.605134,"smooth_accel":-0.387739,"accel_momentum":-0.205977,"rvol_3bar":[0.515695,0.362163,0.143683],"trend_3bar":"DECELERATING","projected_rvol":7.761158},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":5158.0,"sell_vol":3678.0,"unclassified_vol":0.0,"imbalance":0.167497,"bid":6.58,"ask":6.61,"spread_pct":0.45489,"quote_size_imbalance":null,"quote_age_s":5.060843},"context":{"vwap":6.589154,"price_vs_vwap_pct":0.266293,"ema9":6.608202,"ema20":6.617596,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.802594,"dist_to_hod_atr":17.502013,"atr":0.019044,"spread_atr":1.575339,"own_change_pct":0.18044,"rel_strength_pct":{"SPY":0.148087,"IWM":0.127895}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.024066},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"11cfa9dc0226","ts":"2026-09-21T17:54:44.924776+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3781,"ext_from_open_pct":3.18,"max_ext_allowed_pct":4.0,"volume_pace":1.206,"trend":"flat","recent_slope_pct":0.0308,"volatility":"unknown"},"price":6.49,"volume":{"bars":264,"last_bar_volume":13842.0,"baseline_avg":40013.65,"bar_rvol":0.345932,"raw_accel":-0.770337,"smooth_accel":0.183658,"accel_momentum":-0.186362,"rvol_3bar":[2.936294,1.558222,0.345932],"trend_3bar":"DECELERATING","projected_rvol":0.712081},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":17126.0,"sell_vol":2771.0,"unclassified_vol":0.0,"imbalance":0.721466,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.058362},"context":{"vwap":6.377937,"price_vs_vwap_pct":1.757043,"ema9":6.484332,"ema20":6.482106,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.30722,"dist_to_hod_atr":1.405289,"atr":0.014232,"spread_atr":0.702645,"own_change_pct":0.231481,"rel_strength_pct":{"SPY":0.199129,"IWM":0.178937}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.249578},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"e5d972a346a7","ts":"2026-09-21T17:54:55.277475+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4317,"target":6.94,"target_label":"ceiling","reward_risk":2.11,"pos_in_5d_range_pct":109.9,"room_to_5d_high_atr":-0.27},"price":6.595,"vwap":6.5892,"ext_from_open_pct":3.21,"max_ext_allowed_pct":3.0,"volume_pace":0.522,"trend":"flat","recent_slope_pct":-0.035,"volatility":"high"},"price":6.595,"volume":{"bars":262,"last_bar_volume":323.0,"baseline_avg":2248.0,"bar_rvol":0.143683,"raw_accel":-0.605134,"smooth_accel":-0.387739,"accel_momentum":-0.205977,"rvol_3bar":[0.515695,0.362163,0.143683],"trend_3bar":"DECELERATING","projected_rvol":5.286175},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":908.0,"sell_vol":1406.0,"unclassified_vol":0.0,"imbalance":-0.215212,"bid":6.58,"ask":6.61,"spread_pct":0.45489,"quote_size_imbalance":null,"quote_age_s":1.493186},"context":{"vwap":6.589154,"price_vs_vwap_pct":0.088729,"ema9":6.608202,"ema20":6.617596,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.971182,"dist_to_hod_atr":18.116395,"atr":0.019044,"spread_atr":1.575339,"own_change_pct":0.18044,"rel_strength_pct":{"SPY":0.148087,"IWM":0.127895}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.030922},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b4808c9dd643","ts":"2026-09-21T17:55:05.904660+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4187,"target":7.775,"target_label":"range_20d_high","reward_risk":19.92,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4835,"vwap":6.3781,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":1.205,"trend":"flat","recent_slope_pct":-0.0039,"volatility":"unknown"},"price":6.4835,"volume":{"bars":265,"last_bar_volume":22934.0,"baseline_avg":38531.15,"bar_rvol":0.595207,"raw_accel":0.656841,"smooth_accel":-0.598951,"accel_momentum":-0.78261,"rvol_3bar":[1.558222,0.345932,0.595207],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":16714.0,"sell_vol":3324.0,"unclassified_vol":0.0,"imbalance":0.66823,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":1.073957},"context":{"vwap":6.378072,"price_vs_vwap_pct":1.652978,"ema9":6.485666,"ema20":6.482953,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.407066,"dist_to_hod_atr":1.831961,"atr":0.014465,"spread_atr":0.691306,"own_change_pct":0.220791,"rel_strength_pct":{"SPY":0.201381,"IWM":0.157729}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.397735},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"381650ccb435","ts":"2026-09-21T17:56:03.096904+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.485,"vwap":6.3783,"ext_from_open_pct":3.1,"max_ext_allowed_pct":4.0,"volume_pace":1.203,"trend":"flat","recent_slope_pct":-0.0388,"volatility":"unknown"},"price":6.485,"volume":{"bars":266,"last_bar_volume":27661.0,"baseline_avg":38308.65,"bar_rvol":0.722056,"raw_accel":0.206113,"smooth_accel":-0.713873,"accel_momentum":-0.114922,"rvol_3bar":[0.345932,0.595207,0.722056],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":26760.0,"sell_vol":7785.0,"unclassified_vol":0.0,"imbalance":0.549284,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.216279},"context":{"vwap":6.378228,"price_vs_vwap_pct":1.674011,"ema9":6.484533,"ema20":6.482672,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.384025,"dist_to_hod_atr":1.682289,"atr":0.014861,"spread_atr":0.672915,"own_change_pct":-0.07556,"rel_strength_pct":{"SPY":-0.080089,"IWM":-0.117601}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.396614},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6c9636276ca9","ts":"2026-09-21T17:56:03.096904+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7021,"target":8.9182,"target_label":"ceiling","reward_risk":1.46,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.79,"vwap":8.787,"ext_from_open_pct":3.17,"max_ext_allowed_pct":4.0,"volume_pace":0.47,"trend":"flat","recent_slope_pct":-0.0795,"volatility":"unknown"},"price":8.79,"volume":{"bars":266,"last_bar_volume":46594.0,"baseline_avg":50369.95,"bar_rvol":0.925036,"raw_accel":0.291444,"smooth_accel":-0.450814,"accel_momentum":-0.324977,"rvol_3bar":[0.129918,0.707187,0.925036],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":155,"trade_rate":5.166667,"buy_vol":27280.0,"sell_vol":21799.0,"unclassified_vol":0.0,"imbalance":0.111677,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":1.198062},"context":{"vwap":8.786999,"price_vs_vwap_pct":0.034155,"ema9":8.796691,"ema20":8.8005,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.677852,"dist_to_hod_atr":5.200558,"atr":0.028843,"spread_atr":0.346704,"own_change_pct":0.056883,"rel_strength_pct":{"SPY":0.052354,"IWM":0.014842}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.103305},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e0fc7de8b523","ts":"2026-09-21T17:56:08.342508+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.438,"target":6.94,"target_label":"ceiling","reward_risk":2.07,"pos_in_5d_range_pct":110.3,"room_to_5d_high_atr":-0.28},"price":6.6013,"vwap":6.5892,"ext_from_open_pct":3.31,"max_ext_allowed_pct":4.0,"volume_pace":0.52,"trend":"flat","recent_slope_pct":-0.0368,"volatility":"high"},"price":6.6013,"volume":{"bars":264,"last_bar_volume":1266.0,"baseline_avg":2749.9,"bar_rvol":0.46038,"raw_accel":-0.884689,"smooth_accel":3.764215,"accel_momentum":2.18878,"rvol_3bar":[0.143683,4.986488,0.46038],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":76.0,"sell_vol":40.0,"unclassified_vol":0.0,"imbalance":0.310345,"bid":6.58,"ask":6.61,"spread_pct":0.45489,"quote_size_imbalance":null,"quote_age_s":14.036936},"context":{"vwap":6.589185,"price_vs_vwap_pct":0.183867,"ema9":6.602449,"ema20":6.613021,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.880403,"dist_to_hod_atr":16.50242,"atr":0.020524,"spread_atr":1.461685,"own_change_pct":-0.302572,"rel_strength_pct":{"SPY":-0.307101,"IWM":-0.344612}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.142877},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4868e66e501f","ts":"2026-09-21T17:56:08.342508+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6415,"target":11.45,"target_label":"range_20d_high","reward_risk":17.36,"pos_in_5d_range_pct":117.5,"room_to_5d_high_atr":-0.18},"price":9.74,"vwap":9.6976,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":-0.062,"volatility":"medium"},"price":9.74,"volume":{"bars":266,"last_bar_volume":10210.0,"baseline_avg":7935.85,"bar_rvol":1.286567,"raw_accel":4.146267,"smooth_accel":0.35429,"accel_momentum":0.74466,"rvol_3bar":[0.604813,0.18334,1.286567],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":239.0,"sell_vol":5470.0,"unclassified_vol":0.0,"imbalance":-0.916273,"bid":9.74,"ask":9.75,"spread_pct":0.102617,"quote_size_imbalance":null,"quote_age_s":6.440964},"context":{"vwap":9.697609,"price_vs_vwap_pct":0.437126,"ema9":9.756885,"ema20":9.753709,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-0.915565,"dist_to_hod_atr":4.700746,"atr":0.019146,"spread_atr":0.522305,"own_change_pct":-0.038954,"rel_strength_pct":{"SPY":-0.043483,"IWM":-0.080995}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.178846},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"68510db2ca8f","ts":"2026-09-21T17:56:18.642552+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4851,"vwap":6.3783,"ext_from_open_pct":3.1,"max_ext_allowed_pct":3.0,"volume_pace":1.202,"trend":"flat","recent_slope_pct":-0.0385,"volatility":"unknown"},"price":6.4851,"volume":{"bars":266,"last_bar_volume":27661.0,"baseline_avg":38308.65,"bar_rvol":0.722056,"raw_accel":0.206113,"smooth_accel":-0.713873,"accel_momentum":-0.114922,"rvol_3bar":[0.345932,0.595207,0.722056],"trend_3bar":"ACCELERATING","projected_rvol":1.017235},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":19621.0,"sell_vol":3486.0,"unclassified_vol":0.0,"imbalance":0.698273,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.868346},"context":{"vwap":6.378228,"price_vs_vwap_pct":1.675579,"ema9":6.484533,"ema20":6.482672,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.382488,"dist_to_hod_atr":1.67556,"atr":0.014861,"spread_atr":0.672915,"own_change_pct":-0.07556,"rel_strength_pct":{"SPY":-0.080089,"IWM":-0.117601}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.504193},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"74e1a215c6a7","ts":"2026-09-21T17:56:23.818687+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4205,"target":7.775,"target_label":"range_20d_high","reward_risk":19.88,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4854,"vwap":6.3785,"ext_from_open_pct":3.11,"max_ext_allowed_pct":4.0,"volume_pace":1.204,"trend":"flat","recent_slope_pct":-0.0376,"volatility":"unknown"},"price":6.4854,"volume":{"bars":266,"last_bar_volume":27661.0,"baseline_avg":38308.65,"bar_rvol":0.722056,"raw_accel":0.206113,"smooth_accel":-0.713873,"accel_momentum":-0.114922,"rvol_3bar":[0.345932,0.595207,0.722056],"trend_3bar":"ACCELERATING","projected_rvol":3.128548},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":52005.0,"sell_vol":5878.0,"unclassified_vol":0.0,"imbalance":0.796901,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":1.174035},"context":{"vwap":6.378228,"price_vs_vwap_pct":1.680283,"ema9":6.484533,"ema20":6.482672,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.37788,"dist_to_hod_atr":1.655372,"atr":0.014861,"spread_atr":0.672915,"own_change_pct":-0.07556,"rel_strength_pct":{"SPY":-0.080089,"IWM":-0.117601}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.575407},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"32f8d4010bd7","ts":"2026-09-21T17:56:34.195359+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4355,"target":6.94,"target_label":"ceiling","reward_risk":2.09,"pos_in_5d_range_pct":110.2,"room_to_5d_high_atr":-0.27},"price":6.5988,"vwap":6.5892,"ext_from_open_pct":3.27,"max_ext_allowed_pct":3.0,"volume_pace":0.52,"trend":"flat","recent_slope_pct":-0.0444,"volatility":"high"},"price":6.5988,"volume":{"bars":264,"last_bar_volume":1266.0,"baseline_avg":2749.9,"bar_rvol":0.46038,"raw_accel":-0.884689,"smooth_accel":3.764215,"accel_momentum":2.18878,"rvol_3bar":[0.143683,4.986488,0.46038],"trend_3bar":"MIXED","projected_rvol":0.18823},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":95.0,"sell_vol":200.0,"unclassified_vol":0.0,"imbalance":-0.355932,"bid":6.58,"ask":6.61,"spread_pct":0.45489,"quote_size_imbalance":null,"quote_age_s":39.889787},"context":{"vwap":6.589185,"price_vs_vwap_pct":0.145926,"ema9":6.602449,"ema20":6.613021,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.916427,"dist_to_hod_atr":16.624227,"atr":0.020524,"spread_atr":1.461685,"own_change_pct":-0.302572,"rel_strength_pct":{"SPY":-0.307101,"IWM":-0.344612}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.163864},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7015578db522","ts":"2026-09-21T17:56:34.195359+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4208,"target":7.775,"target_label":"range_20d_high","reward_risk":19.88,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4857,"vwap":6.3786,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":1.204,"trend":"flat","recent_slope_pct":-0.0367,"volatility":"unknown"},"price":6.4857,"volume":{"bars":266,"last_bar_volume":27661.0,"baseline_avg":38308.65,"bar_rvol":0.722056,"raw_accel":0.206113,"smooth_accel":-0.713873,"accel_momentum":-0.114922,"rvol_3bar":[0.345932,0.595207,0.722056],"trend_3bar":"ACCELERATING","projected_rvol":3.141213},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":42420.0,"sell_vol":15931.0,"unclassified_vol":0.0,"imbalance":0.45396,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":1.933078},"context":{"vwap":6.378228,"price_vs_vwap_pct":1.684986,"ema9":6.484533,"ema20":6.482672,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.373272,"dist_to_hod_atr":1.635185,"atr":0.014861,"spread_atr":0.672915,"own_change_pct":-0.07556,"rel_strength_pct":{"SPY":-0.080089,"IWM":-0.117601}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.327784},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5e5f16038c18","ts":"2026-09-21T17:56:54.777143+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7161,"target":8.9182,"target_label":"ceiling","reward_risk":1.3,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8041,"vwap":8.787,"ext_from_open_pct":3.33,"max_ext_allowed_pct":3.0,"volume_pace":0.469,"trend":"flat","recent_slope_pct":-0.0475,"volatility":"unknown"},"price":8.8041,"volume":{"bars":266,"last_bar_volume":46594.0,"baseline_avg":50369.95,"bar_rvol":0.925036,"raw_accel":0.291444,"smooth_accel":-0.450814,"accel_momentum":-0.324977,"rvol_3bar":[0.129918,0.707187,0.925036],"trend_3bar":"ACCELERATING","projected_rvol":0.423483},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":7323.0,"sell_vol":2147.0,"unclassified_vol":0.0,"imbalance":0.546568,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":3.566369},"context":{"vwap":8.786999,"price_vs_vwap_pct":0.194619,"ema9":8.796691,"ema20":8.8005,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.520134,"dist_to_hod_atr":4.711706,"atr":0.028843,"spread_atr":0.346704,"own_change_pct":0.056883,"rel_strength_pct":{"SPY":0.052354,"IWM":0.014842}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.505595},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bd67ebcafe96","ts":"2026-09-21T17:57:05.231136+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6465,"target":11.45,"target_label":"range_20d_high","reward_risk":17.31,"pos_in_5d_range_pct":118.7,"room_to_5d_high_atr":-0.19},"price":9.745,"vwap":9.6977,"ext_from_open_pct":0.57,"max_ext_allowed_pct":3.0,"volume_pace":0.59,"trend":"flat","recent_slope_pct":-0.0756,"volatility":"medium"},"price":9.745,"volume":{"bars":267,"last_bar_volume":3110.0,"baseline_avg":8270.5,"bar_rvol":0.376035,"raw_accel":-0.695397,"smooth_accel":0.217983,"accel_momentum":-0.136308,"rvol_3bar":[0.18334,1.286567,0.376035],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":192.0,"sell_vol":3762.0,"unclassified_vol":0.0,"imbalance":-0.902883,"bid":9.74,"ask":9.75,"spread_pct":0.102617,"quote_size_imbalance":null,"quote_age_s":0.237239},"context":{"vwap":9.697669,"price_vs_vwap_pct":0.488069,"ema9":9.754568,"ema20":9.752908,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-0.8647,"dist_to_hod_atr":4.456985,"atr":0.019071,"spread_atr":0.524351,"own_change_pct":-0.150615,"rel_strength_pct":{"SPY":-0.131207,"IWM":-0.176608}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.339516},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"12c3320804a9","ts":"2026-09-21T17:57:10.465431+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":5.8146,"target_label":"ceiling","reward_risk":0.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7589,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":1.062,"trend":"flat","recent_slope_pct":0.0695,"volatility":"unknown"},"price":5.76,"volume":{"bars":267,"last_bar_volume":165546.0,"baseline_avg":51607.25,"bar_rvol":3.207805,"raw_accel":0.840852,"smooth_accel":2.739899,"accel_momentum":1.523169,"rvol_3bar":[0.960996,1.867787,3.207805],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":169,"trade_rate":5.633333,"buy_vol":33996.0,"sell_vol":12853.0,"unclassified_vol":0.0,"imbalance":0.451301,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":1.468071},"context":{"vwap":5.758946,"price_vs_vwap_pct":0.018303,"ema9":5.760025,"ema20":5.761033,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":6.103281,"atr":0.018023,"spread_atr":0.554844,"own_change_pct":0.173611,"rel_strength_pct":{"SPY":0.193019,"IWM":0.147618}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.447686},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3cf4532ae5bf","ts":"2026-09-21T17:57:20.829809+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":5.8146,"target_label":"ceiling","reward_risk":0.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7589,"ext_from_open_pct":3.97,"max_ext_allowed_pct":3.0,"volume_pace":1.062,"trend":"flat","recent_slope_pct":0.0695,"volatility":"unknown"},"price":5.76,"volume":{"bars":267,"last_bar_volume":165546.0,"baseline_avg":51607.25,"bar_rvol":3.207805,"raw_accel":0.840852,"smooth_accel":2.739899,"accel_momentum":1.523169,"rvol_3bar":[0.960996,1.867787,3.207805],"trend_3bar":"ACCELERATING","projected_rvol":1.089017},"flow":{"window_s":30,"trades":166,"trade_rate":5.533333,"buy_vol":29295.0,"sell_vol":9074.0,"unclassified_vol":0.0,"imbalance":0.527014,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.091877},"context":{"vwap":5.758946,"price_vs_vwap_pct":0.018303,"ema9":5.760025,"ema20":5.761033,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":6.103281,"atr":0.018023,"spread_atr":0.554844,"own_change_pct":0.173611,"rel_strength_pct":{"SPY":0.193019,"IWM":0.147618}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.690558},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"511bf72be0b4","ts":"2026-09-21T17:57:57.055915+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4301,"target":7.775,"target_label":"range_20d_high","reward_risk":19.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.495,"vwap":6.3791,"ext_from_open_pct":3.26,"max_ext_allowed_pct":4.0,"volume_pace":1.203,"trend":"flat","recent_slope_pct":0.0062,"volatility":"unknown"},"price":6.495,"volume":{"bars":267,"last_bar_volume":104790.0,"baseline_avg":38581.9,"bar_rvol":2.71604,"raw_accel":2.788366,"smooth_accel":-0.148034,"accel_momentum":0.565839,"rvol_3bar":[0.595207,0.722056,2.71604],"trend_3bar":"ACCELERATING","projected_rvol":1.078205},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":15631.0,"sell_vol":3356.0,"unclassified_vol":0.0,"imbalance":0.646495,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":2.357044},"context":{"vwap":6.378836,"price_vs_vwap_pct":1.821083,"ema9":6.486626,"ema20":6.483846,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.230415,"dist_to_hod_atr":0.998625,"atr":0.015021,"spread_atr":0.66575,"own_change_pct":0.151113,"rel_strength_pct":{"SPY":0.170521,"IWM":0.12512}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.755906},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"71a2f353f2aa","ts":"2026-09-21T17:58:17.749966+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4269,"target":7.775,"target_label":"range_20d_high","reward_risk":19.77,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4918,"vwap":6.3791,"ext_from_open_pct":3.21,"max_ext_allowed_pct":3.0,"volume_pace":1.202,"trend":"flat","recent_slope_pct":0.0256,"volatility":"unknown"},"price":6.4918,"volume":{"bars":268,"last_bar_volume":40858.0,"baseline_avg":40649.45,"bar_rvol":1.00513,"raw_accel":-0.610096,"smooth_accel":0.785825,"accel_momentum":0.933859,"rvol_3bar":[0.722056,2.71604,1.00513],"trend_3bar":"MIXED","projected_rvol":0.248889},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":16131.0,"sell_vol":3667.0,"unclassified_vol":0.0,"imbalance":0.629559,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":1.568986},"context":{"vwap":6.379078,"price_vs_vwap_pct":1.767055,"ema9":6.488301,"ema20":6.484908,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.27957,"dist_to_hod_atr":1.221075,"atr":0.014905,"spread_atr":0.67092,"own_change_pct":0.0755,"rel_strength_pct":{"SPY":0.091024,"IWM":0.0755}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.632788},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"06a20772a43e","ts":"2026-09-21T17:59:25.137203+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7403,"target":8.91,"target_label":"ceiling","reward_risk":0.92,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8286,"vwap":8.7871,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":0.465,"trend":"flat","recent_slope_pct":0.0819,"volatility":"unknown"},"price":8.8286,"volume":{"bars":269,"last_bar_volume":10401.0,"baseline_avg":43388.55,"bar_rvol":0.239718,"raw_accel":-0.38929,"smooth_accel":-0.461164,"accel_momentum":-0.270756,"rvol_3bar":[0.419521,0.356538,0.239718],"trend_3bar":"DECELERATING","projected_rvol":0.678796},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":10956.0,"sell_vol":4587.0,"unclassified_vol":0.0,"imbalance":0.409766,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":2.197711},"context":{"vwap":8.787043,"price_vs_vwap_pct":0.472935,"ema9":8.803346,"ema20":8.803005,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.246085,"dist_to_hod_atr":3.999812,"atr":0.027851,"spread_atr":0.35905,"own_change_pct":-0.056721,"rel_strength_pct":{"SPY":-0.05284,"IWM":-0.047969}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.098228},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"2f99a0de1a54","ts":"2026-09-21T17:59:30.322785+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4367,"target":6.94,"target_label":"ceiling","reward_risk":2.08,"pos_in_5d_range_pct":110.2,"room_to_5d_high_atr":-0.28},"price":6.6,"vwap":6.5892,"ext_from_open_pct":3.29,"max_ext_allowed_pct":4.0,"volume_pace":0.514,"trend":"flat","recent_slope_pct":0.0608,"volatility":"high"},"price":6.6,"volume":{"bars":267,"last_bar_volume":54.0,"baseline_avg":2754.3,"bar_rvol":0.019606,"raw_accel":-0.921577,"smooth_accel":-0.850016,"accel_momentum":-0.105544,"rvol_3bar":[0.53642,0.112788,0.019606],"trend_3bar":"DECELERATING","projected_rvol":0.365669},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":409.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.607073,"bid":6.57,"ask":6.62,"spread_pct":0.75815,"quote_size_imbalance":null,"quote_age_s":2.620257},"context":{"vwap":6.589173,"price_vs_vwap_pct":0.16432,"ema9":6.588934,"ema20":6.602897,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.899135,"dist_to_hod_atr":15.816982,"atr":0.021496,"spread_atr":2.326027,"own_change_pct":-0.40715,"rel_strength_pct":{"SPY":-0.403269,"IWM":-0.398397}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.011902},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"55b4b7a1d8e0","ts":"2026-09-21T17:59:30.322785+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7268,"target":8.91,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.815,"vwap":8.7871,"ext_from_open_pct":3.46,"max_ext_allowed_pct":3.0,"volume_pace":0.466,"trend":"flat","recent_slope_pct":0.0511,"volatility":"unknown"},"price":8.815,"volume":{"bars":269,"last_bar_volume":10401.0,"baseline_avg":43388.55,"bar_rvol":0.239718,"raw_accel":-0.38929,"smooth_accel":-0.461164,"accel_momentum":-0.270756,"rvol_3bar":[0.419521,0.356538,0.239718],"trend_3bar":"DECELERATING","projected_rvol":1.169571},"flow":{"window_s":30,"trades":117,"trade_rate":3.9,"buy_vol":11668.0,"sell_vol":13978.0,"unclassified_vol":0.0,"imbalance":-0.090073,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.316273},"context":{"vwap":8.787043,"price_vs_vwap_pct":0.318162,"ema9":8.803346,"ema20":8.803005,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.39821,"dist_to_hod_atr":4.488119,"atr":0.027851,"spread_atr":0.35905,"own_change_pct":-0.056721,"rel_strength_pct":{"SPY":-0.05284,"IWM":-0.047969}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.021592},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"fa71df1c9c4b","ts":"2026-09-21T18:00:06.701297+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4367,"target":6.94,"target_label":"ceiling","reward_risk":2.08,"pos_in_5d_range_pct":110.2,"room_to_5d_high_atr":-0.28},"price":6.6,"vwap":6.5892,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.514,"trend":"flat","recent_slope_pct":0.1498,"volatility":"high"},"price":6.6,"volume":{"bars":268,"last_bar_volume":2986.0,"baseline_avg":2674.25,"bar_rvol":1.116575,"raw_accel":3.466299,"smooth_accel":-0.755291,"accel_momentum":0.094725,"rvol_3bar":[0.112788,0.019606,1.116575],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":3.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-0.941748,"bid":6.58,"ask":6.62,"spread_pct":0.606061,"quote_size_imbalance":null,"quote_age_s":10.576394},"context":{"vwap":6.589186,"price_vs_vwap_pct":0.164114,"ema9":6.590867,"ema20":6.602488,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.899135,"dist_to_hod_atr":14.928814,"atr":0.022775,"spread_atr":1.756331,"own_change_pct":0.054587,"rel_strength_pct":{"SPY":0.060409,"IWM":0.052836}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.051532},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"93488f6c1d03","ts":"2026-09-21T18:00:12.041284+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7281,"target":8.91,"target_label":"ceiling","reward_risk":1.06,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8163,"vwap":8.7871,"ext_from_open_pct":3.48,"max_ext_allowed_pct":4.0,"volume_pace":0.465,"trend":"flat","recent_slope_pct":0.0256,"volatility":"unknown"},"price":8.8163,"volume":{"bars":270,"last_bar_volume":30372.0,"baseline_avg":41644.15,"bar_rvol":0.729322,"raw_accel":1.917289,"smooth_accel":-0.442165,"accel_momentum":0.018999,"rvol_3bar":[0.356538,0.239718,0.729322],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":4007.0,"sell_vol":3006.0,"unclassified_vol":0.0,"imbalance":0.142735,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":2.496166},"context":{"vwap":8.787083,"price_vs_vwap_pct":0.3325,"ema9":8.805677,"ema20":8.804147,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.383669,"dist_to_hod_atr":4.392454,"atr":0.028162,"spread_atr":0.355089,"own_change_pct":0.227402,"rel_strength_pct":{"SPY":0.233224,"IWM":0.225651}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.1041},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5cd6e215a47c","ts":"2026-09-21T18:00:22.584985+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7304,"target":8.91,"target_label":"ceiling","reward_risk":1.04,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8186,"vwap":8.7871,"ext_from_open_pct":3.5,"max_ext_allowed_pct":3.0,"volume_pace":0.465,"trend":"flat","recent_slope_pct":0.0309,"volatility":"unknown"},"price":8.8186,"volume":{"bars":270,"last_bar_volume":30372.0,"baseline_avg":41644.15,"bar_rvol":0.729322,"raw_accel":1.917289,"smooth_accel":-0.442165,"accel_momentum":0.018999,"rvol_3bar":[0.356538,0.239718,0.729322],"trend_3bar":"MIXED","projected_rvol":0.857195},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":4001.0,"sell_vol":10299.0,"unclassified_vol":0.0,"imbalance":-0.44042,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.462937},"context":{"vwap":8.787083,"price_vs_vwap_pct":0.358675,"ema9":8.805677,"ema20":8.804147,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.357942,"dist_to_hod_atr":4.310784,"atr":0.028162,"spread_atr":0.355089,"own_change_pct":0.227402,"rel_strength_pct":{"SPY":0.233224,"IWM":0.225651}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.321208},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ea42f8838592","ts":"2026-09-21T18:01:19.908471+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7169,"target":8.91,"target_label":"ceiling","reward_risk":1.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.805,"vwap":8.7872,"ext_from_open_pct":3.35,"max_ext_allowed_pct":4.0,"volume_pace":0.464,"trend":"flat","recent_slope_pct":-0.0284,"volatility":"unknown"},"price":8.805,"volume":{"bars":271,"last_bar_volume":63751.0,"baseline_avg":41474.65,"bar_rvol":1.537108,"raw_accel":1.099006,"smooth_accel":0.235888,"accel_momentum":0.678053,"rvol_3bar":[0.239718,0.729322,1.537108],"trend_3bar":"ACCELERATING","projected_rvol":0.242849},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":13749.0,"sell_vol":37028.0,"unclassified_vol":0.0,"imbalance":-0.458456,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":1.058265},"context":{"vwap":8.787148,"price_vs_vwap_pct":0.203159,"ema9":8.805541,"ema20":8.804228,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.510067,"dist_to_hod_atr":4.893773,"atr":0.027586,"spread_atr":0.362502,"own_change_pct":0.113701,"rel_strength_pct":{"SPY":0.091057,"IWM":0.11195}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.704696},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0610eed8ff53","ts":"2026-09-21T18:01:40.677606+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7268,"target":8.91,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.815,"vwap":8.7872,"ext_from_open_pct":3.46,"max_ext_allowed_pct":3.0,"volume_pace":0.464,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"unknown"},"price":8.815,"volume":{"bars":271,"last_bar_volume":63751.0,"baseline_avg":41474.65,"bar_rvol":1.537108,"raw_accel":1.099006,"smooth_accel":0.235888,"accel_momentum":0.678053,"rvol_3bar":[0.239718,0.729322,1.537108],"trend_3bar":"ACCELERATING","projected_rvol":0.195105},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":3505.0,"sell_vol":1347.0,"unclassified_vol":0.0,"imbalance":0.444765,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":5.660784},"context":{"vwap":8.787148,"price_vs_vwap_pct":0.316962,"ema9":8.805541,"ema20":8.804228,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.39821,"dist_to_hod_atr":4.531271,"atr":0.027586,"spread_atr":0.362502,"own_change_pct":0.113701,"rel_strength_pct":{"SPY":0.091057,"IWM":0.11195}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.683652},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f4722dc96dbf","ts":"2026-09-21T18:02:01.435082+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.22x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.0433,"target":5.1483,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":66.2,"room_to_5d_high_atr":0.66},"price":5.13,"vwap":5.1084,"ext_from_open_pct":-0.97,"max_ext_allowed_pct":3.0,"volume_pace":0.218,"trend":"flat","recent_slope_pct":0.0285,"volatility":"high"},"price":5.13,"volume":{"bars":272,"last_bar_volume":2536.0,"baseline_avg":10408.0,"bar_rvol":0.243659,"raw_accel":-0.857616,"smooth_accel":-0.460027,"accel_momentum":0.06272,"rvol_3bar":[0.343249,1.842921,0.243659],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":534.0,"sell_vol":962.0,"unclassified_vol":0.0,"imbalance":-0.286096,"bid":5.12,"ask":5.13,"spread_pct":0.195122,"quote_size_imbalance":null,"quote_age_s":15.063344},"context":{"vwap":5.108368,"price_vs_vwap_pct":0.423459,"ema9":5.125378,"ema20":5.122265,"ema_stack":true,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.535509,"dist_to_hod_atr":6.831144,"atr":0.011711,"spread_atr":0.853893,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.045293,"IWM":-0.021293}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.06971},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"57db32e88843","ts":"2026-09-21T18:03:14.542654+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4412,"target":6.94,"target_label":"ceiling","reward_risk":2.05,"pos_in_5d_range_pct":110.5,"room_to_5d_high_atr":-0.28},"price":6.6045,"vwap":6.5892,"ext_from_open_pct":3.36,"max_ext_allowed_pct":4.0,"volume_pace":0.508,"trend":"flat","recent_slope_pct":0.0179,"volatility":"high"},"price":6.6045,"volume":{"bars":271,"last_bar_volume":1000.0,"baseline_avg":2444.2,"bar_rvol":0.409132,"raw_accel":0.636527,"smooth_accel":-0.592868,"accel_momentum":-1.373239,"rvol_3bar":[0.090282,0.053286,0.409132],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":22.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.58,"ask":6.62,"spread_pct":0.606061,"quote_size_imbalance":null,"quote_age_s":28.211756},"context":{"vwap":6.589192,"price_vs_vwap_pct":0.232314,"ema9":6.596124,"ema20":6.602273,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.834294,"dist_to_hod_atr":16.227693,"atr":0.020675,"spread_atr":1.934747,"own_change_pct":0.303951,"rel_strength_pct":{"SPY":0.266428,"IWM":0.286443}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.409132},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"80fc83590c7a","ts":"2026-09-21T18:03:14.542654+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.9385,"target":9.065,"target_label":"clear air (typical 60-min move)","reward_risk":0.46,"pos_in_5d_range_pct":126.8,"room_to_5d_high_atr":-0.85},"price":9.025,"vwap":9.0105,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":-0.0222,"volatility":"medium"},"price":9.025,"volume":{"bars":273,"last_bar_volume":11815.0,"baseline_avg":15478.35,"bar_rvol":0.763324,"raw_accel":1.309421,"smooth_accel":-0.695643,"accel_momentum":0.130264,"rvol_3bar":[0.589504,0.334261,0.763324],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":6839.0,"sell_vol":8633.0,"unclassified_vol":0.0,"imbalance":-0.115951,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.087629},"context":{"vwap":9.010447,"price_vs_vwap_pct":0.161513,"ema9":9.039685,"ema20":9.022418,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.148972,"dist_to_hod_atr":3.865756,"atr":0.027136,"spread_atr":0.368518,"own_change_pct":-0.016582,"rel_strength_pct":{"SPY":-0.054105,"IWM":-0.034091}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.088509},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"574a62e35ff0","ts":"2026-09-21T18:03:24.931234+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7242,"target":8.91,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8123,"vwap":8.7872,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":0.461,"trend":"flat","recent_slope_pct":0.0108,"volatility":"unknown"},"price":8.8123,"volume":{"bars":273,"last_bar_volume":12364.0,"baseline_avg":36063.55,"bar_rvol":0.342839,"raw_accel":0.371357,"smooth_accel":0.431181,"accel_momentum":-0.650958,"rvol_3bar":[1.537108,0.173203,0.342839],"trend_3bar":"MIXED","projected_rvol":0.380777},"flow":{"window_s":30,"trades":170,"trade_rate":5.666667,"buy_vol":4177.0,"sell_vol":1839.0,"unclassified_vol":0.0,"imbalance":0.38863,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.415385},"context":{"vwap":8.787173,"price_vs_vwap_pct":0.285948,"ema9":8.809926,"ema20":8.806649,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.428412,"dist_to_hod_atr":4.937654,"atr":0.025862,"spread_atr":0.38666,"own_change_pct":0.055587,"rel_strength_pct":{"SPY":0.018064,"IWM":0.038079}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.133238},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5b25d8aa0bd4","ts":"2026-09-21T18:03:30.071756+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7268,"target":8.91,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.815,"vwap":8.7872,"ext_from_open_pct":3.46,"max_ext_allowed_pct":3.0,"volume_pace":0.461,"trend":"flat","recent_slope_pct":0.0169,"volatility":"unknown"},"price":8.815,"volume":{"bars":273,"last_bar_volume":12364.0,"baseline_avg":36063.55,"bar_rvol":0.342839,"raw_accel":0.371357,"smooth_accel":0.431181,"accel_momentum":-0.650958,"rvol_3bar":[1.537108,0.173203,0.342839],"trend_3bar":"MIXED","projected_rvol":0.414221},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":4054.0,"sell_vol":3433.0,"unclassified_vol":0.0,"imbalance":0.082944,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.065042},"context":{"vwap":8.787173,"price_vs_vwap_pct":0.316675,"ema9":8.809926,"ema20":8.806649,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.39821,"dist_to_hod_atr":4.833255,"atr":0.025862,"spread_atr":0.38666,"own_change_pct":0.055587,"rel_strength_pct":{"SPY":0.018064,"IWM":0.038079}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.028436},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"17f8936df5d8","ts":"2026-09-21T18:03:40.355984+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.7455,"target":12.09,"target_label":"clear air (typical 60-min move)","reward_risk":0.68,"pos_in_5d_range_pct":124.2,"room_to_5d_high_atr":-1.08},"price":11.95,"vwap":11.6313,"ext_from_open_pct":2.4,"max_ext_allowed_pct":3.0,"volume_pace":0.207,"trend":"flat","recent_slope_pct":0.1007,"volatility":"high"},"price":11.95,"volume":{"bars":273,"last_bar_volume":6818.0,"baseline_avg":5988.55,"bar_rvol":1.138506,"raw_accel":-0.020262,"smooth_accel":0.855498,"accel_momentum":0.328185,"rvol_3bar":[0.779176,1.162264,1.138506],"trend_3bar":"MIXED","projected_rvol":3.671643},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":9045.0,"sell_vol":3874.0,"unclassified_vol":0.0,"imbalance":0.400263,"bid":11.94,"ask":11.96,"spread_pct":0.167364,"quote_size_imbalance":null,"quote_age_s":0.62294},"context":{"vwap":11.629781,"price_vs_vwap_pct":2.753438,"ema9":11.895432,"ema20":11.891371,"ema_stack":true,"ema_warm":true,"hod":12.0,"dist_to_hod_pct":-0.416667,"dist_to_hod_atr":1.359415,"atr":0.036781,"spread_atr":0.543766,"own_change_pct":0.42123,"rel_strength_pct":{"SPY":0.383707,"IWM":0.403722}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.455702},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"81fb3dd1992b","ts":"2026-09-21T18:03:45.462327+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4317,"target":6.94,"target_label":"ceiling","reward_risk":2.11,"pos_in_5d_range_pct":109.9,"room_to_5d_high_atr":-0.27},"price":6.595,"vwap":6.5892,"ext_from_open_pct":3.21,"max_ext_allowed_pct":3.0,"volume_pace":0.507,"trend":"flat","recent_slope_pct":-0.0109,"volatility":"high"},"price":6.595,"volume":{"bars":271,"last_bar_volume":1000.0,"baseline_avg":2444.2,"bar_rvol":0.409132,"raw_accel":0.636527,"smooth_accel":-0.592868,"accel_momentum":-1.373239,"rvol_3bar":[0.090282,0.053286,0.409132],"trend_3bar":"MIXED","projected_rvol":0.227864},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":0.0,"sell_vol":400.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.58,"ask":6.61,"spread_pct":0.45489,"quote_size_imbalance":null,"quote_age_s":0.162288},"context":{"vwap":6.589192,"price_vs_vwap_pct":0.088138,"ema9":6.596124,"ema20":6.602273,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.971182,"dist_to_hod_atr":16.687195,"atr":0.020675,"spread_atr":1.45106,"own_change_pct":0.303951,"rel_strength_pct":{"SPY":0.266428,"IWM":0.286443}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.409132},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b47264807af7","ts":"2026-09-21T18:04:00.936919+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 1738.3s, plan says WATCH; stop 10.81, target 11.04 (ceiling), R:R 0.81; selling not fading: red-bar volume 0.90x the advance (max 0.7); no reclaim yet (needs a close > 10.95); R:R 0.81 < 2.0 at 1","plan":{"state":"WATCH","setup":"","stop":10.806,"target":11.04,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":106.2,"room_to_5d_high_atr":-0.15},"price":10.935,"vwap":10.86,"ext_from_open_pct":-0.41,"max_ext_allowed_pct":4.0,"volume_pace":0.502,"trend":"flat","recent_slope_pct":-0.0155,"volatility":"medium"},"price":10.935,"volume":{"bars":274,"last_bar_volume":63867.0,"baseline_avg":81190.2,"bar_rvol":0.786634,"raw_accel":0.608133,"smooth_accel":-0.344665,"accel_momentum":-0.130518,"rvol_3bar":[1.272334,0.487708,0.786634],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":36123.0,"sell_vol":6962.0,"unclassified_vol":0.0,"imbalance":0.676825,"bid":10.93,"ask":10.94,"spread_pct":0.091449,"quote_size_imbalance":null,"quote_age_s":0.929695},"context":{"vwap":10.860033,"price_vs_vwap_pct":0.6903,"ema9":10.939385,"ema20":10.936425,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.659247,"dist_to_hod_atr":6.697368,"atr":0.027548,"spread_atr":0.363001,"own_change_pct":-0.066697,"rel_strength_pct":{"SPY":-0.081575,"IWM":-0.085955}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.532414},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"838d26a47692","ts":"2026-09-21T18:04:11.340745+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7318,"target":8.91,"target_label":"ceiling","reward_risk":1.02,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.82,"vwap":8.7872,"ext_from_open_pct":3.52,"max_ext_allowed_pct":4.0,"volume_pace":0.46,"trend":"flat","recent_slope_pct":0.034,"volatility":"unknown"},"price":8.82,"volume":{"bars":274,"last_bar_volume":9804.0,"baseline_avg":33746.4,"bar_rvol":0.29052,"raw_accel":-0.207053,"smooth_accel":-0.724647,"accel_momentum":-1.155828,"rvol_3bar":[0.173203,0.342839,0.29052],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":13663.0,"sell_vol":3963.0,"unclassified_vol":0.0,"imbalance":0.550323,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.041768},"context":{"vwap":8.787186,"price_vs_vwap_pct":0.373429,"ema9":8.810941,"ema20":8.807444,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.342282,"dist_to_hod_atr":4.83297,"atr":0.024829,"spread_atr":0.402748,"own_change_pct":0.056754,"rel_strength_pct":{"SPY":0.041876,"IWM":0.037496}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.15988},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1698d8d20ebf","ts":"2026-09-21T18:04:21.732676+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.728,"target":8.91,"target_label":"ceiling","reward_risk":1.06,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8162,"vwap":8.7873,"ext_from_open_pct":3.48,"max_ext_allowed_pct":3.0,"volume_pace":0.461,"trend":"flat","recent_slope_pct":0.0254,"volatility":"unknown"},"price":8.8162,"volume":{"bars":274,"last_bar_volume":9804.0,"baseline_avg":33746.4,"bar_rvol":0.29052,"raw_accel":-0.207053,"smooth_accel":-0.724647,"accel_momentum":-1.155828,"rvol_3bar":[0.173203,0.342839,0.29052],"trend_3bar":"MIXED","projected_rvol":7.12302},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":62297.0,"sell_vol":26344.0,"unclassified_vol":0.0,"imbalance":0.405602,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":4.27198},"context":{"vwap":8.787186,"price_vs_vwap_pct":0.330184,"ema9":8.810941,"ema20":8.807444,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.384787,"dist_to_hod_atr":4.986014,"atr":0.024829,"spread_atr":0.402748,"own_change_pct":0.056754,"rel_strength_pct":{"SPY":0.041876,"IWM":0.037496}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.117836},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"464b9ce71815","ts":"2026-09-21T18:04:42.579758+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.01","plan":{"state":"PASS","setup":"","stop":8.9235,"target":9.07,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":9.0105,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":3.0,"volume_pace":0.791,"trend":"flat","recent_slope_pct":-0.1263,"volatility":"medium"},"price":9.01,"volume":{"bars":274,"last_bar_volume":12091.0,"baseline_avg":15925.7,"bar_rvol":0.759213,"raw_accel":0.02336,"smooth_accel":-0.668725,"accel_momentum":0.026918,"rvol_3bar":[0.334261,0.763324,0.759213],"trend_3bar":"MIXED","projected_rvol":0.202444},"flow":{"window_s":30,"trades":158,"trade_rate":5.266667,"buy_vol":590.0,"sell_vol":1193.0,"unclassified_vol":0.0,"imbalance":-0.338194,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.698629},"context":{"vwap":9.010488,"price_vs_vwap_pct":-0.005417,"ema9":9.036408,"ema20":9.022502,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.313267,"dist_to_hod_atr":4.452943,"atr":0.026926,"spread_atr":0.371388,"own_change_pct":-0.350083,"rel_strength_pct":{"SPY":-0.364961,"IWM":-0.369341}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.256761},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3c2c449ce5bf","ts":"2026-09-21T18:04:47.833993+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8399,"vwap":8.7875,"ext_from_open_pct":3.75,"max_ext_allowed_pct":4.0,"volume_pace":0.462,"trend":"flat","recent_slope_pct":0.0791,"volatility":"unknown"},"price":8.8399,"volume":{"bars":274,"last_bar_volume":9804.0,"baseline_avg":33746.4,"bar_rvol":0.29052,"raw_accel":-0.207053,"smooth_accel":-0.724647,"accel_momentum":-1.155828,"rvol_3bar":[0.173203,0.342839,0.29052],"trend_3bar":"MIXED","projected_rvol":5.527445},"flow":{"window_s":30,"trades":117,"trade_rate":3.9,"buy_vol":34137.0,"sell_vol":36028.0,"unclassified_vol":0.0,"imbalance":-0.026951,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.860864},"context":{"vwap":8.787186,"price_vs_vwap_pct":0.599895,"ema9":8.810941,"ema20":8.807444,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.119687,"dist_to_hod_atr":4.031503,"atr":0.024829,"spread_atr":0.402748,"own_change_pct":0.056754,"rel_strength_pct":{"SPY":0.041876,"IWM":0.037496}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.00783},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8fca6a5e0eb3","ts":"2026-09-21T18:05:14.124955+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.91,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7875,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.461,"trend":"flat","recent_slope_pct":0.0482,"volatility":"unknown"},"price":8.835,"volume":{"bars":275,"last_bar_volume":149653.0,"baseline_avg":32244.85,"bar_rvol":4.641144,"raw_accel":14.264484,"smooth_accel":0.705656,"accel_momentum":1.430303,"rvol_3bar":[0.342839,0.29052,4.641144],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":15171.0,"sell_vol":2044.0,"unclassified_vol":0.0,"imbalance":0.762533,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.994666},"context":{"vwap":8.787448,"price_vs_vwap_pct":0.541132,"ema9":8.813233,"ema20":8.808869,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":4.157441,"atr":0.025256,"spread_atr":0.395947,"own_change_pct":0.083948,"rel_strength_pct":{"SPY":0.047073,"IWM":0.073444}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.539024},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dbefa561e235","ts":"2026-09-21T18:05:29.660528+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4279,"target":6.94,"target_label":"ceiling","reward_risk":2.14,"pos_in_5d_range_pct":109.7,"room_to_5d_high_atr":-0.26},"price":6.5912,"vwap":6.5892,"ext_from_open_pct":3.15,"max_ext_allowed_pct":4.0,"volume_pace":0.506,"trend":"flat","recent_slope_pct":-0.0494,"volatility":"high"},"price":6.5912,"volume":{"bars":273,"last_bar_volume":6406.0,"baseline_avg":2511.6,"bar_rvol":2.550565,"raw_accel":9.202262,"smooth_accel":1.332539,"accel_momentum":1.857119,"rvol_3bar":[0.409132,0.169277,2.550565],"trend_3bar":"MIXED","projected_rvol":0.377742},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":276.0,"sell_vol":193.0,"unclassified_vol":0.0,"imbalance":0.176972,"bid":6.59,"ask":6.63,"spread_pct":0.605144,"quote_size_imbalance":null,"quote_age_s":0.269477},"context":{"vwap":6.589197,"price_vs_vwap_pct":0.030399,"ema9":6.595719,"ema20":6.600954,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-5.025937,"dist_to_hod_atr":17.900779,"atr":0.019485,"spread_atr":2.052842,"own_change_pct":-0.054557,"rel_strength_pct":{"SPY":-0.091431,"IWM":-0.065061}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.451379},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4ac16c884c75","ts":"2026-09-21T18:05:50.452806+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4467,"target":6.94,"target_label":"ceiling","reward_risk":2.02,"pos_in_5d_range_pct":110.8,"room_to_5d_high_atr":-0.29},"price":6.61,"vwap":6.5892,"ext_from_open_pct":3.44,"max_ext_allowed_pct":3.0,"volume_pace":0.505,"trend":"flat","recent_slope_pct":0.0076,"volatility":"high"},"price":6.61,"volume":{"bars":273,"last_bar_volume":6406.0,"baseline_avg":2511.6,"bar_rvol":2.550565,"raw_accel":9.202262,"smooth_accel":1.332539,"accel_momentum":1.857119,"rvol_3bar":[0.409132,0.169277,2.550565],"trend_3bar":"MIXED","projected_rvol":0.222543},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":277.0,"sell_vol":192.0,"unclassified_vol":0.0,"imbalance":0.181237,"bid":6.59,"ask":6.63,"spread_pct":0.605144,"quote_size_imbalance":null,"quote_age_s":1.244083},"context":{"vwap":6.589197,"price_vs_vwap_pct":0.315714,"ema9":6.595719,"ema20":6.600954,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.755043,"dist_to_hod_atr":16.935943,"atr":0.019485,"spread_atr":2.052842,"own_change_pct":-0.054557,"rel_strength_pct":{"SPY":-0.091431,"IWM":-0.065061}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.462256},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ba768c4cdd05","ts":"2026-09-21T18:06:00.845454+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.22x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.0433,"target":5.1483,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":66.2,"room_to_5d_high_atr":0.66},"price":5.13,"vwap":5.1086,"ext_from_open_pct":-0.97,"max_ext_allowed_pct":4.0,"volume_pace":0.218,"trend":"flat","recent_slope_pct":0.0105,"volatility":"high"},"price":5.13,"volume":{"bars":276,"last_bar_volume":13561.0,"baseline_avg":12563.1,"bar_rvol":1.079431,"raw_accel":2.026333,"smooth_accel":2.944541,"accel_momentum":0.426493,"rvol_3bar":[7.532392,0.358824,1.079431],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":10906.0,"sell_vol":1490.0,"unclassified_vol":0.0,"imbalance":0.7596,"bid":5.12,"ask":5.13,"spread_pct":0.195122,"quote_size_imbalance":null,"quote_age_s":0.000484},"context":{"vwap":5.108553,"price_vs_vwap_pct":0.419816,"ema9":5.12559,"ema20":5.123413,"ema_stack":true,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.535509,"dist_to_hod_atr":6.745971,"atr":0.011859,"spread_atr":0.843246,"own_change_pct":0.097561,"rel_strength_pct":{"SPY":0.060046,"IWM":0.046784}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.819936},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e08807688e62","ts":"2026-09-21T18:06:06.102902+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.07,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0105,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":0.788,"trend":"flat","recent_slope_pct":-0.0747,"volatility":"medium"},"price":9.015,"volume":{"bars":276,"last_bar_volume":3500.0,"baseline_avg":16405.7,"bar_rvol":0.21334,"raw_accel":-0.373209,"smooth_accel":-0.182275,"accel_momentum":-0.949836,"rvol_3bar":[0.759213,0.343126,0.21334],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":709.0,"sell_vol":538.0,"unclassified_vol":0.0,"imbalance":0.137129,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":3.724445},"context":{"vwap":9.010509,"price_vs_vwap_pct":0.049838,"ema9":9.029137,"ema20":9.021385,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":4.076684,"atr":0.028185,"spread_atr":0.354803,"own_change_pct":-0.428582,"rel_strength_pct":{"SPY":-0.466098,"IWM":-0.479359}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.029255},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"32134afbdd2b","ts":"2026-09-21T18:06:06.102902+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7372,"target":8.91,"target_label":"ceiling","reward_risk":0.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8255,"vwap":8.7875,"ext_from_open_pct":3.59,"max_ext_allowed_pct":4.0,"volume_pace":0.461,"trend":"flat","recent_slope_pct":0.0354,"volatility":"unknown"},"price":8.8255,"volume":{"bars":276,"last_bar_volume":39368.0,"baseline_avg":36401.5,"bar_rvol":1.081494,"raw_accel":-0.736938,"smooth_accel":1.403358,"accel_momentum":0.697702,"rvol_3bar":[0.29052,4.641144,1.081494],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":13548.0,"sell_vol":6863.0,"unclassified_vol":0.0,"imbalance":0.327519,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.579924},"context":{"vwap":8.787531,"price_vs_vwap_pct":0.432077,"ema9":8.817586,"ema20":8.811357,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.280761,"dist_to_hod_atr":4.46858,"atr":0.025623,"spread_atr":0.390269,"own_change_pct":0.340716,"rel_strength_pct":{"SPY":0.3032,"IWM":0.289939}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.35421},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"10073a179d7d","ts":"2026-09-21T18:06:11.327627+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4467,"target":6.94,"target_label":"ceiling","reward_risk":2.02,"pos_in_5d_range_pct":110.8,"room_to_5d_high_atr":-0.29},"price":6.61,"vwap":6.5892,"ext_from_open_pct":3.44,"max_ext_allowed_pct":4.0,"volume_pace":0.505,"trend":"flat","recent_slope_pct":0.053,"volatility":"high"},"price":6.61,"volume":{"bars":274,"last_bar_volume":470.0,"baseline_avg":2825.7,"bar_rvol":0.16633,"raw_accel":-0.926631,"smooth_accel":4.327007,"accel_momentum":2.994469,"rvol_3bar":[0.169277,2.550565,0.16633],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":2.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.59,"ask":6.63,"spread_pct":0.605144,"quote_size_imbalance":null,"quote_age_s":0.945285},"context":{"vwap":6.589201,"price_vs_vwap_pct":0.315657,"ema9":6.598575,"ema20":6.601815,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.755043,"dist_to_hod_atr":16.376741,"atr":0.020151,"spread_atr":1.985059,"own_change_pct":0.151515,"rel_strength_pct":{"SPY":0.114,"IWM":0.100739}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.16633},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dc4c47f119d2","ts":"2026-09-21T18:06:11.327627+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.01","plan":{"state":"PASS","setup":"","stop":8.9235,"target":9.07,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":9.0105,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":4.0,"volume_pace":0.788,"trend":"flat","recent_slope_pct":-0.0858,"volatility":"medium"},"price":9.01,"volume":{"bars":276,"last_bar_volume":3500.0,"baseline_avg":16405.7,"bar_rvol":0.21334,"raw_accel":-0.373209,"smooth_accel":-0.182275,"accel_momentum":-0.949836,"rvol_3bar":[0.759213,0.343126,0.21334],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":709.0,"sell_vol":539.0,"unclassified_vol":0.0,"imbalance":0.136218,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":3.1635},"context":{"vwap":9.010509,"price_vs_vwap_pct":-0.005653,"ema9":9.029137,"ema20":9.021385,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.313267,"dist_to_hod_atr":4.254085,"atr":0.028185,"spread_atr":0.354803,"own_change_pct":-0.428582,"rel_strength_pct":{"SPY":-0.466098,"IWM":-0.479359}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.029061},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b563cc076a32","ts":"2026-09-21T18:06:16.505708+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.9335,"target":9.06,"target_label":"clear air (typical 60-min move)","reward_risk":0.46,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.02,"vwap":9.0105,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.788,"trend":"flat","recent_slope_pct":-0.0636,"volatility":"medium"},"price":9.02,"volume":{"bars":276,"last_bar_volume":3500.0,"baseline_avg":16405.7,"bar_rvol":0.21334,"raw_accel":-0.373209,"smooth_accel":-0.182275,"accel_momentum":-0.949836,"rvol_3bar":[0.759213,0.343126,0.21334],"trend_3bar":"DECELERATING","projected_rvol":0.096164},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":604.0,"sell_vol":537.0,"unclassified_vol":0.0,"imbalance":0.05872,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":8.341581},"context":{"vwap":9.010509,"price_vs_vwap_pct":0.105328,"ema9":9.029137,"ema20":9.021385,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.203737,"dist_to_hod_atr":3.899282,"atr":0.028185,"spread_atr":0.354803,"own_change_pct":-0.428582,"rel_strength_pct":{"SPY":-0.466098,"IWM":-0.479359}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.012527},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"553e79aaf9b1","ts":"2026-09-21T18:06:16.505708+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.91,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7875,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.461,"trend":"flat","recent_slope_pct":0.0569,"volatility":"unknown"},"price":8.835,"volume":{"bars":276,"last_bar_volume":39368.0,"baseline_avg":36401.5,"bar_rvol":1.081494,"raw_accel":-0.736938,"smooth_accel":1.403358,"accel_momentum":0.697702,"rvol_3bar":[0.29052,4.641144,1.081494],"trend_3bar":"MIXED","projected_rvol":0.106053},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":13127.0,"sell_vol":2941.0,"unclassified_vol":0.0,"imbalance":0.633931,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":1.237505},"context":{"vwap":8.787531,"price_vs_vwap_pct":0.540185,"ema9":8.817586,"ema20":8.811357,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":4.097824,"atr":0.025623,"spread_atr":0.390269,"own_change_pct":0.340716,"rel_strength_pct":{"SPY":0.3032,"IWM":0.289939}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.685592},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4fb340011ad4","ts":"2026-09-21T18:06:43.009125+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4267,"target":6.94,"target_label":"ceiling","reward_risk":2.14,"pos_in_5d_range_pct":109.7,"room_to_5d_high_atr":-0.26},"price":6.59,"vwap":6.5892,"ext_from_open_pct":3.13,"max_ext_allowed_pct":3.0,"volume_pace":0.504,"trend":"flat","recent_slope_pct":-0.0076,"volatility":"high"},"price":6.59,"volume":{"bars":274,"last_bar_volume":470.0,"baseline_avg":2825.7,"bar_rvol":0.16633,"raw_accel":-0.926631,"smooth_accel":4.327007,"accel_momentum":2.994469,"rvol_3bar":[0.169277,2.550565,0.16633],"trend_3bar":"MIXED","projected_rvol":0.012836},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.59,"ask":6.63,"spread_pct":0.605144,"quote_size_imbalance":null,"quote_age_s":6.049551},"context":{"vwap":6.589201,"price_vs_vwap_pct":0.01213,"ema9":6.598575,"ema20":6.601815,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-5.043228,"dist_to_hod_atr":17.369271,"atr":0.020151,"spread_atr":1.985059,"own_change_pct":0.151515,"rel_strength_pct":{"SPY":0.114,"IWM":0.100739}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.16633},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"172ca787ad86","ts":"2026-09-21T18:06:43.009125+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 26.5s, plan says PASS; stop 8.93, target 9.07 (ceiling), R:R 0.64; R:R 0.64 < 2.0 at 9.02; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.07,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0105,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":-0.0747,"volatility":"medium"},"price":9.015,"volume":{"bars":276,"last_bar_volume":3500.0,"baseline_avg":16405.7,"bar_rvol":0.21334,"raw_accel":-0.373209,"smooth_accel":-0.182275,"accel_momentum":-0.949836,"rvol_3bar":[0.759213,0.343126,0.21334],"trend_3bar":"DECELERATING","projected_rvol":0.114627},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":704.0,"sell_vol":210.0,"unclassified_vol":0.0,"imbalance":0.540481,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":2.881737},"context":{"vwap":9.010509,"price_vs_vwap_pct":0.049838,"ema9":9.029137,"ema20":9.021385,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":4.076684,"atr":0.028185,"spread_atr":0.354803,"own_change_pct":-0.428582,"rel_strength_pct":{"SPY":-0.466098,"IWM":-0.479359}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.115307},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"83829d467a62","ts":"2026-09-21T18:06:48.300708+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4717,"target":6.94,"target_label":"ceiling","reward_risk":1.87,"pos_in_5d_range_pct":112.2,"room_to_5d_high_atr":-0.33},"price":6.635,"vwap":6.5893,"ext_from_open_pct":3.83,"max_ext_allowed_pct":4.0,"volume_pace":0.505,"trend":"flat","recent_slope_pct":0.1287,"volatility":"high"},"price":6.635,"volume":{"bars":274,"last_bar_volume":470.0,"baseline_avg":2825.7,"bar_rvol":0.16633,"raw_accel":-0.926631,"smooth_accel":4.327007,"accel_momentum":2.994469,"rvol_3bar":[0.169277,2.550565,0.16633],"trend_3bar":"MIXED","projected_rvol":2.978826},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":5561.0,"sell_vol":1214.0,"unclassified_vol":0.0,"imbalance":0.641624,"bid":6.61,"ask":6.66,"spread_pct":0.75358,"quote_size_imbalance":null,"quote_age_s":0.590671},"context":{"vwap":6.589201,"price_vs_vwap_pct":0.695066,"ema9":6.598575,"ema20":6.601815,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.394813,"dist_to_hod_atr":15.136079,"atr":0.020151,"spread_atr":2.481324,"own_change_pct":0.151515,"rel_strength_pct":{"SPY":0.114,"IWM":0.100739}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.106722},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cbbe1c2c907e","ts":"2026-09-21T18:06:53.538219+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4517,"target":6.94,"target_label":"ceiling","reward_risk":1.99,"pos_in_5d_range_pct":111.1,"room_to_5d_high_atr":-0.3},"price":6.615,"vwap":6.5893,"ext_from_open_pct":3.52,"max_ext_allowed_pct":3.0,"volume_pace":0.505,"trend":"flat","recent_slope_pct":0.0682,"volatility":"high"},"price":6.615,"volume":{"bars":274,"last_bar_volume":470.0,"baseline_avg":2825.7,"bar_rvol":0.16633,"raw_accel":-0.926631,"smooth_accel":4.327007,"accel_momentum":2.994469,"rvol_3bar":[0.169277,2.550565,0.16633],"trend_3bar":"MIXED","projected_rvol":2.806397},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":5561.0,"sell_vol":1514.0,"unclassified_vol":0.0,"imbalance":0.572014,"bid":6.6,"ask":6.64,"spread_pct":0.60423,"quote_size_imbalance":null,"quote_age_s":1.617548},"context":{"vwap":6.589201,"price_vs_vwap_pct":0.391539,"ema9":6.598575,"ema20":6.601815,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.682997,"dist_to_hod_atr":16.128608,"atr":0.020151,"spread_atr":1.985059,"own_change_pct":0.151515,"rel_strength_pct":{"SPY":0.114,"IWM":0.100739}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.095143},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4133b5610513","ts":"2026-09-21T18:06:58.816862+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 42.3s, plan says WATCH; stop 8.93, target 9.06 (clear air (typical 60-min move)), R:R 0.46; R:R 0.46 < 2.0 at 9.02; breakout: 1-min close > 9.08 on >= 15225 sh","plan":{"state":"WATCH","setup":"","stop":8.9335,"target":9.06,"target_label":"clear air (typical 60-min move)","reward_risk":0.46,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.02,"vwap":9.0105,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":-0.0636,"volatility":"medium"},"price":9.02,"volume":{"bars":276,"last_bar_volume":3500.0,"baseline_avg":16405.7,"bar_rvol":0.21334,"raw_accel":-0.373209,"smooth_accel":-0.182275,"accel_momentum":-0.949836,"rvol_3bar":[0.759213,0.343126,0.21334],"trend_3bar":"DECELERATING","projected_rvol":0.098307},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":710.0,"sell_vol":224.0,"unclassified_vol":0.0,"imbalance":0.520343,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.384067},"context":{"vwap":9.010509,"price_vs_vwap_pct":0.105328,"ema9":9.029137,"ema20":9.021385,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.203737,"dist_to_hod_atr":3.899282,"atr":0.028185,"spread_atr":0.354803,"own_change_pct":-0.428582,"rel_strength_pct":{"SPY":-0.466098,"IWM":-0.479359}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.11101},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a731d5351d12","ts":"2026-09-21T18:07:04.108946+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4567,"target":6.94,"target_label":"ceiling","reward_risk":1.96,"pos_in_5d_range_pct":111.4,"room_to_5d_high_atr":-0.31},"price":6.62,"vwap":6.5893,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.505,"trend":"flat","recent_slope_pct":0.1059,"volatility":"high"},"price":6.62,"volume":{"bars":275,"last_bar_volume":7076.0,"baseline_avg":1789.4,"bar_rvol":3.954398,"raw_accel":14.055319,"smooth_accel":7.960822,"accel_momentum":3.633815,"rvol_3bar":[2.550565,0.16633,3.954398],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":5896.0,"sell_vol":1514.0,"unclassified_vol":0.0,"imbalance":0.591363,"bid":6.6,"ask":6.64,"spread_pct":0.60423,"quote_size_imbalance":null,"quote_age_s":3.434909},"context":{"vwap":6.589282,"price_vs_vwap_pct":0.466184,"ema9":6.60186,"ema20":6.603071,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.610951,"dist_to_hod_atr":14.360959,"atr":0.022283,"spread_atr":1.79512,"own_change_pct":0.1514,"rel_strength_pct":{"SPY":0.122297,"IWM":0.072618}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.338485},"shadow":{"decision":"FAIL","failed":["spread"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a6fb2a38a9f4","ts":"2026-09-21T18:07:04.108946+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 1921.5s, plan says PASS; stop 10.80, target 11.03 (ceiling), R:R 0.73; R:R 0.73 < 2.0 at 10.93; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.8032,"target":11.0268,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":106.0,"room_to_5d_high_atr":-0.14},"price":10.9322,"vwap":10.8602,"ext_from_open_pct":-0.44,"max_ext_allowed_pct":3.0,"volume_pace":0.498,"trend":"flat","recent_slope_pct":-0.0128,"volatility":"medium"},"price":10.9322,"volume":{"bars":277,"last_bar_volume":19342.0,"baseline_avg":73357.2,"bar_rvol":0.263669,"raw_accel":-0.556722,"smooth_accel":-0.48731,"accel_momentum":-0.189003,"rvol_3bar":[0.539507,0.602201,0.263669],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":4092.0,"sell_vol":10880.0,"unclassified_vol":0.0,"imbalance":-0.45338,"bid":10.93,"ask":10.94,"spread_pct":0.091449,"quote_size_imbalance":null,"quote_age_s":0.338913},"context":{"vwap":10.860176,"price_vs_vwap_pct":0.663191,"ema9":10.937629,"ema20":10.93629,"ema_stack":false,"ema_warm":true,"hod":11.1195,"dist_to_hod_pct":-1.684428,"dist_to_hod_atr":7.562349,"atr":0.024767,"spread_atr":0.403756,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.029104,"IWM":-0.078783}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.119542},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0be49f7b4797","ts":"2026-09-21T18:07:04.108946+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.435,"target":7.775,"target_label":"range_20d_high","reward_risk":19.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.5,"vwap":6.3801,"ext_from_open_pct":3.34,"max_ext_allowed_pct":4.0,"volume_pace":1.174,"trend":"flat","recent_slope_pct":0.0317,"volatility":"unknown"},"price":6.5,"volume":{"bars":277,"last_bar_volume":23153.0,"baseline_avg":38830.3,"bar_rvol":0.596261,"raw_accel":1.191689,"smooth_accel":0.640699,"accel_momentum":0.522938,"rvol_3bar":[0.673677,0.263415,0.596261],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":6999.0,"sell_vol":3490.0,"unclassified_vol":0.0,"imbalance":0.334541,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.079501},"context":{"vwap":6.380052,"price_vs_vwap_pct":1.880045,"ema9":6.493239,"ema20":6.490204,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.15361,"dist_to_hod_atr":0.788853,"atr":0.012677,"spread_atr":0.788853,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.029104,"IWM":-0.078783}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.199474},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"53a902fd1eed","ts":"2026-09-21T18:07:04.108946+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7876,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.46,"trend":"flat","recent_slope_pct":0.0849,"volatility":"unknown"},"price":8.845,"volume":{"bars":277,"last_bar_volume":15772.0,"baseline_avg":36561.4,"bar_rvol":0.431384,"raw_accel":-0.59937,"smooth_accel":6.115562,"accel_momentum":4.712204,"rvol_3bar":[4.641144,1.081494,0.431384],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":12725.0,"sell_vol":5748.0,"unclassified_vol":0.0,"imbalance":0.377686,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.04016},"context":{"vwap":8.787565,"price_vs_vwap_pct":0.653597,"ema9":8.821549,"ema20":8.813838,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":3.764468,"atr":0.025236,"spread_atr":0.39626,"own_change_pct":0.254112,"rel_strength_pct":{"SPY":0.225009,"IWM":0.175329}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.162928},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"d57cd5a84c57","ts":"2026-09-21T18:07:09.480391+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.85,"vwap":8.7876,"ext_from_open_pct":3.87,"max_ext_allowed_pct":3.0,"volume_pace":0.46,"trend":"flat","recent_slope_pct":0.0962,"volatility":"unknown"},"price":8.85,"volume":{"bars":277,"last_bar_volume":15772.0,"baseline_avg":36561.4,"bar_rvol":0.431384,"raw_accel":-0.59937,"smooth_accel":6.115562,"accel_momentum":4.712204,"rvol_3bar":[4.641144,1.081494,0.431384],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":7692.0,"sell_vol":13480.0,"unclassified_vol":0.0,"imbalance":-0.27338,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.035569},"context":{"vwap":8.787565,"price_vs_vwap_pct":0.710495,"ema9":8.821549,"ema20":8.813838,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.006711,"dist_to_hod_atr":3.566338,"atr":0.025236,"spread_atr":0.39626,"own_change_pct":0.254112,"rel_strength_pct":{"SPY":0.225009,"IWM":0.175329}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.117932},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"fe027bf2c3b3","ts":"2026-09-21T18:07:20.033521+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4467,"target":6.94,"target_label":"ceiling","reward_risk":2.02,"pos_in_5d_range_pct":110.8,"room_to_5d_high_atr":-0.29},"price":6.61,"vwap":6.5893,"ext_from_open_pct":3.44,"max_ext_allowed_pct":3.0,"volume_pace":0.504,"trend":"flat","recent_slope_pct":0.0757,"volatility":"high"},"price":6.61,"volume":{"bars":275,"last_bar_volume":7076.0,"baseline_avg":1789.4,"bar_rvol":3.954398,"raw_accel":14.055319,"smooth_accel":7.960822,"accel_momentum":3.633815,"rvol_3bar":[2.550565,0.16633,3.954398],"trend_3bar":"MIXED","projected_rvol":1.230195},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":535.0,"sell_vol":500.0,"unclassified_vol":0.0,"imbalance":0.033816,"bid":6.61,"ask":6.64,"spread_pct":0.45283,"quote_size_imbalance":null,"quote_age_s":4.937636},"context":{"vwap":6.589282,"price_vs_vwap_pct":0.314422,"ema9":6.60186,"ema20":6.603071,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.755043,"dist_to_hod_atr":14.809739,"atr":0.022283,"spread_atr":1.34634,"own_change_pct":0.1514,"rel_strength_pct":{"SPY":0.122297,"IWM":0.072618}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.133724},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"15bf883b0e25","ts":"2026-09-21T18:07:30.452461+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7876,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.459,"trend":"flat","recent_slope_pct":0.1076,"volatility":"unknown"},"price":8.855,"volume":{"bars":277,"last_bar_volume":15772.0,"baseline_avg":36561.4,"bar_rvol":0.431384,"raw_accel":-0.59937,"smooth_accel":6.115562,"accel_momentum":4.712204,"rvol_3bar":[4.641144,1.081494,0.431384],"trend_3bar":"DECELERATING","projected_rvol":1.545881},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":14504.0,"sell_vol":14182.0,"unclassified_vol":0.0,"imbalance":0.011225,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.376322},"context":{"vwap":8.787565,"price_vs_vwap_pct":0.767394,"ema9":8.821549,"ema20":8.813838,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":3.368208,"atr":0.025236,"spread_atr":0.39626,"own_change_pct":0.254112,"rel_strength_pct":{"SPY":0.225009,"IWM":0.175329}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.004842},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"c925debdf387","ts":"2026-09-21T18:07:35.696483+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7418,"target":8.91,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8301,"vwap":8.7877,"ext_from_open_pct":3.64,"max_ext_allowed_pct":3.0,"volume_pace":0.46,"trend":"flat","recent_slope_pct":0.0512,"volatility":"unknown"},"price":8.8301,"volume":{"bars":277,"last_bar_volume":15772.0,"baseline_avg":36561.4,"bar_rvol":0.431384,"raw_accel":-0.59937,"smooth_accel":6.115562,"accel_momentum":4.712204,"rvol_3bar":[4.641144,1.081494,0.431384],"trend_3bar":"DECELERATING","projected_rvol":2.705466},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":14164.0,"sell_vol":34741.0,"unclassified_vol":0.0,"imbalance":-0.420755,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":2.400296},"context":{"vwap":8.787565,"price_vs_vwap_pct":0.484039,"ema9":8.821549,"ema20":8.813838,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.229306,"dist_to_hod_atr":4.354895,"atr":0.025236,"spread_atr":0.39626,"own_change_pct":0.254112,"rel_strength_pct":{"SPY":0.225009,"IWM":0.175329}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.181507},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b4633a3ae89a","ts":"2026-09-21T18:07:41.048803+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4296,"target":7.775,"target_label":"range_20d_high","reward_risk":19.72,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4945,"vwap":6.3802,"ext_from_open_pct":3.25,"max_ext_allowed_pct":3.0,"volume_pace":1.172,"trend":"flat","recent_slope_pct":0.0148,"volatility":"unknown"},"price":6.4945,"volume":{"bars":277,"last_bar_volume":23153.0,"baseline_avg":38830.3,"bar_rvol":0.596261,"raw_accel":1.191689,"smooth_accel":0.640699,"accel_momentum":0.522938,"rvol_3bar":[0.673677,0.263415,0.596261],"trend_3bar":"MIXED","projected_rvol":1.05501},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":19586.0,"sell_vol":2706.0,"unclassified_vol":0.0,"imbalance":0.757222,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.177493},"context":{"vwap":6.380052,"price_vs_vwap_pct":1.793839,"ema9":6.493239,"ema20":6.490204,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.238095,"dist_to_hod_atr":1.222722,"atr":0.012677,"spread_atr":0.788853,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.029104,"IWM":-0.078783}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.451502},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"54f4080b05cc","ts":"2026-09-21T18:07:56.989975+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.91,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7877,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":0.46,"trend":"flat","recent_slope_pct":0.0623,"volatility":"unknown"},"price":8.835,"volume":{"bars":277,"last_bar_volume":15772.0,"baseline_avg":36561.4,"bar_rvol":0.431384,"raw_accel":-0.59937,"smooth_accel":6.115562,"accel_momentum":4.712204,"rvol_3bar":[4.641144,1.081494,0.431384],"trend_3bar":"DECELERATING","projected_rvol":1.921173},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":10391.0,"sell_vol":27753.0,"unclassified_vol":0.0,"imbalance":-0.45517,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.672547},"context":{"vwap":8.787565,"price_vs_vwap_pct":0.539799,"ema9":8.821549,"ema20":8.813838,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":4.160728,"atr":0.025236,"spread_atr":0.39626,"own_change_pct":0.254112,"rel_strength_pct":{"SPY":0.225009,"IWM":0.175329}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.196353},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ca7225211adc","ts":"2026-09-21T18:08:02.295798+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6989,"target":8.82,"target_label":"prev_day_high","reward_risk":0.11,"pos_in_5d_range_pct":85.3,"room_to_5d_high_atr":0.25},"price":8.8078,"vwap":8.707,"ext_from_open_pct":1.01,"max_ext_allowed_pct":4.0,"volume_pace":0.559,"trend":"flat","recent_slope_pct":-0.0149,"volatility":"medium"},"price":8.8078,"volume":{"bars":278,"last_bar_volume":3768.0,"baseline_avg":8101.4,"bar_rvol":0.465105,"raw_accel":-0.773326,"smooth_accel":0.158712,"accel_momentum":0.319146,"rvol_3bar":[1.039252,2.211902,0.465105],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":2010.0,"sell_vol":365.0,"unclassified_vol":0.0,"imbalance":0.692632,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.604255},"context":{"vwap":8.706958,"price_vs_vwap_pct":1.15818,"ema9":8.812019,"ema20":8.811151,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.934726,"dist_to_hod_atr":12.581652,"atr":0.021166,"spread_atr":0.472462,"own_change_pct":-0.169972,"rel_strength_pct":{"SPY":-0.189373,"IWM":-0.259248}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.322146},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"18210ea1e3aa","ts":"2026-09-21T18:08:02.295798+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7878,"ext_from_open_pct":3.81,"max_ext_allowed_pct":3.0,"volume_pace":0.46,"trend":"flat","recent_slope_pct":0.0625,"volatility":"unknown"},"price":8.845,"volume":{"bars":278,"last_bar_volume":80757.0,"baseline_avg":35520.45,"bar_rvol":2.273535,"raw_accel":4.120276,"smooth_accel":-0.209078,"accel_momentum":-6.32464,"rvol_3bar":[1.081494,0.431384,2.273535],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":8614.0,"sell_vol":13410.0,"unclassified_vol":0.0,"imbalance":-0.217762,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.716276},"context":{"vwap":8.787775,"price_vs_vwap_pct":0.651187,"ema9":8.826239,"ema20":8.816805,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":3.637183,"atr":0.026119,"spread_atr":0.382861,"own_change_pct":0.284584,"rel_strength_pct":{"SPY":0.265183,"IWM":0.195307}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.495091},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b90d50f05b35","ts":"2026-09-21T18:08:07.666726+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3803,"ext_from_open_pct":3.18,"max_ext_allowed_pct":4.0,"volume_pace":1.171,"trend":"flat","recent_slope_pct":-0.0059,"volatility":"unknown"},"price":6.49,"volume":{"bars":278,"last_bar_volume":30840.0,"baseline_avg":38267.9,"bar_rvol":0.805897,"raw_accel":0.332009,"smooth_accel":0.203613,"accel_momentum":-0.437085,"rvol_3bar":[0.263415,0.596261,0.805897],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":15657.0,"sell_vol":2337.0,"unclassified_vol":0.0,"imbalance":0.740247,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.147396},"context":{"vwap":6.380233,"price_vs_vwap_pct":1.720425,"ema9":6.493591,"ema20":6.490661,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.30722,"dist_to_hod_atr":1.601866,"atr":0.012485,"spread_atr":0.800933,"own_change_pct":0.016939,"rel_strength_pct":{"SPY":-0.002462,"IWM":-0.072337}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.596563},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"969f36268575","ts":"2026-09-21T18:08:18.245453+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.6961,"target":8.82,"target_label":"prev_day_high","reward_risk":0.14,"pos_in_5d_range_pct":84.9,"room_to_5d_high_atr":0.25},"price":8.805,"vwap":8.707,"ext_from_open_pct":0.97,"max_ext_allowed_pct":3.0,"volume_pace":0.559,"trend":"flat","recent_slope_pct":-0.0212,"volatility":"medium"},"price":8.805,"volume":{"bars":278,"last_bar_volume":3768.0,"baseline_avg":8101.4,"bar_rvol":0.465105,"raw_accel":-0.773326,"smooth_accel":0.158712,"accel_momentum":0.319146,"rvol_3bar":[1.039252,2.211902,0.465105],"trend_3bar":"MIXED","projected_rvol":1.346424},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":2840.0,"sell_vol":2529.0,"unclassified_vol":0.0,"imbalance":0.057925,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":0.532655},"context":{"vwap":8.706958,"price_vs_vwap_pct":1.126022,"ema9":8.812019,"ema20":8.811151,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.965583,"dist_to_hod_atr":12.713941,"atr":0.021166,"spread_atr":0.472462,"own_change_pct":-0.169972,"rel_strength_pct":{"SPY":-0.189373,"IWM":-0.259248}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.026941},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"92216799644b","ts":"2026-09-21T18:08:23.540841+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4467,"target":6.94,"target_label":"ceiling","reward_risk":2.02,"pos_in_5d_range_pct":110.8,"room_to_5d_high_atr":-0.29},"price":6.61,"vwap":6.5893,"ext_from_open_pct":3.44,"max_ext_allowed_pct":4.0,"volume_pace":0.502,"trend":"flat","recent_slope_pct":0.0454,"volatility":"high"},"price":6.61,"volume":{"bars":276,"last_bar_volume":992.0,"baseline_avg":1952.25,"bar_rvol":0.508132,"raw_accel":-0.859808,"smooth_accel":0.0907,"accel_momentum":-7.870122,"rvol_3bar":[0.16633,3.954398,0.508132],"trend_3bar":"MIXED","projected_rvol":0.097916},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":65.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":0.444444,"bid":6.61,"ask":6.64,"spread_pct":0.45283,"quote_size_imbalance":null,"quote_age_s":20.355842},"context":{"vwap":6.589295,"price_vs_vwap_pct":0.314218,"ema9":6.603488,"ema20":6.603731,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.755043,"dist_to_hod_atr":14.483928,"atr":0.022784,"spread_atr":1.316721,"own_change_pct":0.151515,"rel_strength_pct":{"SPY":0.132114,"IWM":0.062239}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.225836},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"463b3350f491","ts":"2026-09-21T18:08:28.858083+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4301,"target":7.775,"target_label":"range_20d_high","reward_risk":19.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.495,"vwap":6.3803,"ext_from_open_pct":3.26,"max_ext_allowed_pct":3.0,"volume_pace":1.17,"trend":"flat","recent_slope_pct":0.0095,"volatility":"unknown"},"price":6.495,"volume":{"bars":278,"last_bar_volume":30840.0,"baseline_avg":38267.9,"bar_rvol":0.805897,"raw_accel":0.332009,"smooth_accel":0.203613,"accel_momentum":-0.437085,"rvol_3bar":[0.263415,0.596261,0.805897],"trend_3bar":"ACCELERATING","projected_rvol":0.521199},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":6884.0,"sell_vol":2709.0,"unclassified_vol":0.0,"imbalance":0.435213,"bid":6.49,"ask":6.5,"spread_pct":0.153965,"quote_size_imbalance":null,"quote_age_s":0.169023},"context":{"vwap":6.380233,"price_vs_vwap_pct":1.798792,"ema9":6.493591,"ema20":6.490661,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.230415,"dist_to_hod_atr":1.201399,"atr":0.012485,"spread_atr":0.800933,"own_change_pct":0.016939,"rel_strength_pct":{"SPY":-0.002462,"IWM":-0.072337}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.350737},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0ebf7c4ec363","ts":"2026-09-21T18:08:34.259278+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8401,"vwap":8.7879,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":0.46,"trend":"flat","recent_slope_pct":0.0514,"volatility":"unknown"},"price":8.8401,"volume":{"bars":278,"last_bar_volume":80757.0,"baseline_avg":35520.45,"bar_rvol":2.273535,"raw_accel":4.120276,"smooth_accel":-0.209078,"accel_momentum":-6.32464,"rvol_3bar":[1.081494,0.431384,2.273535],"trend_3bar":"MIXED","projected_rvol":2.118654},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":12051.0,"sell_vol":24755.0,"unclassified_vol":0.0,"imbalance":-0.345161,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":4.252289},"context":{"vwap":8.787775,"price_vs_vwap_pct":0.595427,"ema9":8.826239,"ema20":8.816805,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.11745,"dist_to_hod_atr":3.824785,"atr":0.026119,"spread_atr":0.382861,"own_change_pct":0.284584,"rel_strength_pct":{"SPY":0.265183,"IWM":0.195307}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.784736},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0368f140fd6c","ts":"2026-09-21T18:08:39.531011+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4467,"target":6.94,"target_label":"ceiling","reward_risk":2.02,"pos_in_5d_range_pct":110.8,"room_to_5d_high_atr":-0.29},"price":6.61,"vwap":6.5893,"ext_from_open_pct":3.44,"max_ext_allowed_pct":3.0,"volume_pace":0.502,"trend":"flat","recent_slope_pct":0.0454,"volatility":"high"},"price":6.61,"volume":{"bars":276,"last_bar_volume":992.0,"baseline_avg":1952.25,"bar_rvol":0.508132,"raw_accel":-0.859808,"smooth_accel":0.0907,"accel_momentum":-7.870122,"rvol_3bar":[0.16633,3.954398,0.508132],"trend_3bar":"MIXED","projected_rvol":0.069971},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":20.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":0.333333,"bid":6.61,"ask":6.64,"spread_pct":0.45283,"quote_size_imbalance":null,"quote_age_s":4.793742},"context":{"vwap":6.589295,"price_vs_vwap_pct":0.314218,"ema9":6.603488,"ema20":6.603731,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.755043,"dist_to_hod_atr":14.483928,"atr":0.022784,"spread_atr":1.316721,"own_change_pct":0.151515,"rel_strength_pct":{"SPY":0.132114,"IWM":0.062239}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.169377},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6b6e55763089","ts":"2026-09-21T18:08:44.784814+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.84,"vwap":8.7879,"ext_from_open_pct":3.76,"max_ext_allowed_pct":3.0,"volume_pace":0.46,"trend":"flat","recent_slope_pct":0.0512,"volatility":"unknown"},"price":8.84,"volume":{"bars":278,"last_bar_volume":80757.0,"baseline_avg":35520.45,"bar_rvol":2.273535,"raw_accel":4.120276,"smooth_accel":-0.209078,"accel_momentum":-6.32464,"rvol_3bar":[1.081494,0.431384,2.273535],"trend_3bar":"MIXED","projected_rvol":2.654816},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":25175.0,"sell_vol":24930.0,"unclassified_vol":0.0,"imbalance":0.00489,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.341823},"context":{"vwap":8.787775,"price_vs_vwap_pct":0.594289,"ema9":8.826239,"ema20":8.816805,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.118568,"dist_to_hod_atr":3.828613,"atr":0.026119,"spread_atr":0.382861,"own_change_pct":0.284584,"rel_strength_pct":{"SPY":0.265183,"IWM":0.195307}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.011117},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a0c270e880ff","ts":"2026-09-21T18:08:55.103540+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.85,"vwap":8.788,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":0.46,"trend":"flat","recent_slope_pct":0.0738,"volatility":"unknown"},"price":8.85,"volume":{"bars":278,"last_bar_volume":80757.0,"baseline_avg":35520.45,"bar_rvol":2.273535,"raw_accel":4.120276,"smooth_accel":-0.209078,"accel_momentum":-6.32464,"rvol_3bar":[1.081494,0.431384,2.273535],"trend_3bar":"MIXED","projected_rvol":2.666537},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":29426.0,"sell_vol":15251.0,"unclassified_vol":0.0,"imbalance":0.317277,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":2.49381},"context":{"vwap":8.787775,"price_vs_vwap_pct":0.708084,"ema9":8.826239,"ema20":8.816805,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.006711,"dist_to_hod_atr":3.445752,"atr":0.026119,"spread_atr":0.382861,"own_change_pct":0.284584,"rel_strength_pct":{"SPY":0.265183,"IWM":0.195307}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.721341},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6671e80f65e7","ts":"2026-09-21T18:09:05.493775+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4617,"target":6.94,"target_label":"ceiling","reward_risk":1.93,"pos_in_5d_range_pct":111.6,"room_to_5d_high_atr":-0.31},"price":6.625,"vwap":6.5894,"ext_from_open_pct":3.68,"max_ext_allowed_pct":4.0,"volume_pace":0.502,"trend":"flat","recent_slope_pct":0.0831,"volatility":"high"},"price":6.625,"volume":{"bars":277,"last_bar_volume":3037.0,"baseline_avg":2000.3,"bar_rvol":1.518272,"raw_accel":2.061492,"smooth_accel":0.52165,"accel_momentum":0.43095,"rvol_3bar":[3.954398,0.508132,1.518272],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":2508.0,"sell_vol":1214.0,"unclassified_vol":0.0,"imbalance":0.347663,"bid":6.61,"ask":6.64,"spread_pct":0.45283,"quote_size_imbalance":null,"quote_age_s":3.247969},"context":{"vwap":6.58935,"price_vs_vwap_pct":0.541023,"ema9":6.610791,"ema20":6.607185,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.538905,"dist_to_hod_atr":13.519712,"atr":0.023299,"spread_atr":1.287592,"own_change_pct":0.682335,"rel_strength_pct":{"SPY":0.65323,"IWM":0.605318}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.527846},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"21342ddcb89f","ts":"2026-09-21T18:09:05.493775+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.8255,"target":12.1711,"target_label":"clear air (typical 60-min move)","reward_risk":0.69,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-1.17},"price":12.03,"vwap":11.6416,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.209,"trend":"flat","recent_slope_pct":0.179,"volatility":"high"},"price":12.03,"volume":{"bars":279,"last_bar_volume":29247.0,"baseline_avg":8696.35,"bar_rvol":3.363135,"raw_accel":-0.123002,"smooth_accel":1.255794,"accel_momentum":0.892366,"rvol_3bar":[1.236869,4.604594,3.363135],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":9166.0,"sell_vol":6018.0,"unclassified_vol":0.0,"imbalance":0.207323,"bid":12.01,"ask":12.05,"spread_pct":0.332502,"quote_size_imbalance":null,"quote_age_s":3.95755},"context":{"vwap":11.641319,"price_vs_vwap_pct":3.338808,"ema9":11.964534,"ema20":11.93239,"ema_stack":true,"ema_warm":true,"hod":12.05,"dist_to_hod_pct":-0.165975,"dist_to_hod_atr":0.477059,"atr":0.041924,"spread_atr":0.954117,"own_change_pct":0.669456,"rel_strength_pct":{"SPY":0.640351,"IWM":0.592439}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.697257},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3986123b85fe","ts":"2026-09-21T18:09:16.132778+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4467,"target":6.94,"target_label":"ceiling","reward_risk":2.02,"pos_in_5d_range_pct":110.8,"room_to_5d_high_atr":-0.29},"price":6.61,"vwap":6.5894,"ext_from_open_pct":3.44,"max_ext_allowed_pct":3.0,"volume_pace":0.502,"trend":"flat","recent_slope_pct":0.0378,"volatility":"high"},"price":6.61,"volume":{"bars":277,"last_bar_volume":3037.0,"baseline_avg":2000.3,"bar_rvol":1.518272,"raw_accel":2.061492,"smooth_accel":0.52165,"accel_momentum":0.43095,"rvol_3bar":[3.954398,0.508132,1.518272],"trend_3bar":"MIXED","projected_rvol":1.846274},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":15.0,"sell_vol":993.0,"unclassified_vol":0.0,"imbalance":-0.970238,"bid":6.61,"ask":6.64,"spread_pct":0.45283,"quote_size_imbalance":null,"quote_age_s":2.049944},"context":{"vwap":6.58935,"price_vs_vwap_pct":0.313383,"ema9":6.610791,"ema20":6.607185,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.755043,"dist_to_hod_atr":14.163508,"atr":0.023299,"spread_atr":1.287592,"own_change_pct":0.682335,"rel_strength_pct":{"SPY":0.65323,"IWM":0.605318}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.473086},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"eb1d2d1fd2fe","ts":"2026-09-21T18:09:16.132778+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8432,"vwap":8.788,"ext_from_open_pct":3.79,"max_ext_allowed_pct":3.0,"volume_pace":0.46,"trend":"flat","recent_slope_pct":0.0328,"volatility":"unknown"},"price":8.8432,"volume":{"bars":279,"last_bar_volume":89480.0,"baseline_avg":38173.3,"bar_rvol":2.344047,"raw_accel":0.108015,"smooth_accel":-0.064459,"accel_momentum":0.144619,"rvol_3bar":[0.431384,2.273535,2.344047],"trend_3bar":"ACCELERATING","projected_rvol":0.046278},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":15552.0,"sell_vol":4015.0,"unclassified_vol":0.0,"imbalance":0.589615,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.521508},"context":{"vwap":8.788004,"price_vs_vwap_pct":0.628078,"ema9":8.830991,"ema20":8.819967,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.082774,"dist_to_hod_atr":3.727701,"atr":0.025968,"spread_atr":0.385093,"own_change_pct":0.39705,"rel_strength_pct":{"SPY":0.367946,"IWM":0.320033}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.382086},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5e35787a4e04","ts":"2026-09-21T18:09:31.761448+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4702,"target":6.94,"target_label":"ceiling","reward_risk":1.88,"pos_in_5d_range_pct":112.1,"room_to_5d_high_atr":-0.33},"price":6.6335,"vwap":6.5894,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.502,"trend":"flat","recent_slope_pct":0.1087,"volatility":"high"},"price":6.6335,"volume":{"bars":277,"last_bar_volume":3037.0,"baseline_avg":2000.3,"bar_rvol":1.518272,"raw_accel":2.061492,"smooth_accel":0.52165,"accel_momentum":0.43095,"rvol_3bar":[3.954398,0.508132,1.518272],"trend_3bar":"MIXED","projected_rvol":2.832255},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1612.0,"sell_vol":1387.0,"unclassified_vol":0.0,"imbalance":0.075025,"bid":6.62,"ask":6.64,"spread_pct":0.301659,"quote_size_imbalance":null,"quote_age_s":1.59017},"context":{"vwap":6.58935,"price_vs_vwap_pct":0.670019,"ema9":6.610791,"ema20":6.607185,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.416427,"dist_to_hod_atr":13.154895,"atr":0.023299,"spread_atr":0.858394,"own_change_pct":0.682335,"rel_strength_pct":{"SPY":0.65323,"IWM":0.605318}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.113908},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7fb7a5e91740","ts":"2026-09-21T18:09:31.761448+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.695,"target":8.82,"target_label":"prev_day_high","reward_risk":0.15,"pos_in_5d_range_pct":84.8,"room_to_5d_high_atr":0.26},"price":8.8039,"vwap":8.7073,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":0.558,"trend":"flat","recent_slope_pct":-0.0258,"volatility":"medium"},"price":8.8039,"volume":{"bars":279,"last_bar_volume":5642.0,"baseline_avg":8088.05,"bar_rvol":0.697572,"raw_accel":0.497346,"smooth_accel":0.330182,"accel_momentum":0.171471,"rvol_3bar":[2.211902,0.465105,0.697572],"trend_3bar":"MIXED","projected_rvol":1.80779},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":1903.0,"sell_vol":5805.0,"unclassified_vol":0.0,"imbalance":-0.506227,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":0.047793},"context":{"vwap":8.707089,"price_vs_vwap_pct":1.111869,"ema9":8.810155,"ema20":8.810346,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-2.977706,"dist_to_hod_atr":12.864275,"atr":0.021004,"spread_atr":0.476102,"own_change_pct":-0.252691,"rel_strength_pct":{"SPY":-0.281796,"IWM":-0.329709}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.35313},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0bfa70d9c931","ts":"2026-09-21T18:10:03.210808+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.8055,"target":12.1522,"target_label":"clear air (typical 60-min move)","reward_risk":0.7,"pos_in_5d_range_pct":125.8,"room_to_5d_high_atr":-1.15},"price":12.01,"vwap":11.6436,"ext_from_open_pct":2.91,"max_ext_allowed_pct":4.0,"volume_pace":0.209,"trend":"flat","recent_slope_pct":0.0698,"volatility":"high"},"price":12.01,"volume":{"bars":280,"last_bar_volume":13568.0,"baseline_avg":9888.7,"bar_rvol":1.372071,"raw_accel":-0.536089,"smooth_accel":2.182916,"accel_momentum":0.927122,"rvol_3bar":[4.604594,3.363135,1.372071],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":13305.0,"sell_vol":1157.0,"unclassified_vol":0.0,"imbalance":0.839994,"bid":12.0,"ask":12.02,"spread_pct":0.166528,"quote_size_imbalance":null,"quote_age_s":2.368278},"context":{"vwap":11.642902,"price_vs_vwap_pct":3.152974,"ema9":11.974467,"ema20":11.940182,"ema_stack":true,"ema_warm":true,"hod":12.05,"dist_to_hod_pct":-0.33195,"dist_to_hod_atr":0.906139,"atr":0.044143,"spread_atr":0.45307,"own_change_pct":0.621441,"rel_strength_pct":{"SPY":0.621441,"IWM":0.542671}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.152532},"shadow":{"decision":"FAIL","failed":["not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"8616dec13179","ts":"2026-09-21T18:10:03.210808+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6911,"target":8.82,"target_label":"prev_day_high","reward_risk":0.18,"pos_in_5d_range_pct":84.2,"room_to_5d_high_atr":0.26},"price":8.8,"vwap":8.7073,"ext_from_open_pct":0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.557,"trend":"flat","recent_slope_pct":-0.0123,"volatility":"medium"},"price":8.8,"volume":{"bars":280,"last_bar_volume":9971.0,"baseline_avg":8237.25,"bar_rvol":1.210477,"raw_accel":0.767281,"smooth_accel":-0.234013,"accel_momentum":-0.564196,"rvol_3bar":[0.465105,0.697572,1.210477],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":788.0,"sell_vol":1498.0,"unclassified_vol":0.0,"imbalance":-0.310586,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":0.176848},"context":{"vwap":8.707317,"price_vs_vwap_pct":1.064422,"ema9":8.809964,"ema20":8.810237,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.020685,"dist_to_hod_atr":12.840523,"atr":0.021346,"spread_atr":0.468461,"own_change_pct":-0.035178,"rel_strength_pct":{"SPY":-0.035178,"IWM":-0.113947}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.375957},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bde188adc357","ts":"2026-09-21T18:10:19.283209+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4767,"target":6.94,"target_label":"ceiling","reward_risk":1.84,"pos_in_5d_range_pct":112.5,"room_to_5d_high_atr":-0.34},"price":6.64,"vwap":6.5894,"ext_from_open_pct":3.91,"max_ext_allowed_pct":3.0,"volume_pace":0.5,"trend":"flat","recent_slope_pct":0.1207,"volatility":"high"},"price":6.64,"volume":{"bars":278,"last_bar_volume":3499.0,"baseline_avg":2136.8,"bar_rvol":1.637495,"raw_accel":0.152124,"smooth_accel":-0.460436,"accel_momentum":-0.982086,"rvol_3bar":[0.508132,1.518272,1.637495],"trend_3bar":"ACCELERATING","projected_rvol":1.01931},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":426.0,"sell_vol":774.0,"unclassified_vol":0.0,"imbalance":-0.29,"bid":6.63,"ask":6.65,"spread_pct":0.301205,"quote_size_imbalance":null,"quote_age_s":7.595811},"context":{"vwap":6.589413,"price_vs_vwap_pct":0.7677,"ema9":6.616633,"ema20":6.61031,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.322767,"dist_to_hod_atr":12.61674,"atr":0.023778,"spread_atr":0.841116,"own_change_pct":0.682335,"rel_strength_pct":{"SPY":0.682335,"IWM":0.603566}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.474874},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b6ac5a271cb4","ts":"2026-09-21T18:10:29.843986+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.7755,"target":12.0,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":125.0,"room_to_5d_high_atr":-1.11},"price":11.98,"vwap":11.6445,"ext_from_open_pct":2.66,"max_ext_allowed_pct":3.0,"volume_pace":0.21,"trend":"flat","recent_slope_pct":0.0198,"volatility":"high"},"price":11.98,"volume":{"bars":280,"last_bar_volume":13568.0,"baseline_avg":9888.7,"bar_rvol":1.372071,"raw_accel":-0.536089,"smooth_accel":2.182916,"accel_momentum":0.927122,"rvol_3bar":[4.604594,3.363135,1.372071],"trend_3bar":"DECELERATING","projected_rvol":2.902227},"flow":{"window_s":30,"trades":126,"trade_rate":4.2,"buy_vol":10709.0,"sell_vol":3566.0,"unclassified_vol":0.0,"imbalance":0.500385,"bid":11.98,"ask":12.0,"spread_pct":0.166806,"quote_size_imbalance":null,"quote_age_s":2.386123},"context":{"vwap":11.642902,"price_vs_vwap_pct":2.895307,"ema9":11.974467,"ema20":11.940182,"ema_stack":true,"ema_warm":true,"hod":12.05,"dist_to_hod_pct":-0.580913,"dist_to_hod_atr":1.585744,"atr":0.044143,"spread_atr":0.45307,"own_change_pct":0.621441,"rel_strength_pct":{"SPY":0.621441,"IWM":0.542671}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.686564},"shadow":{"decision":"FAIL","failed":["not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"7986f55126b1","ts":"2026-09-21T18:10:50.797106+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6993,"target":10.02,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":132.2,"room_to_5d_high_atr":-0.75},"price":9.865,"vwap":9.8248,"ext_from_open_pct":-1.25,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.1378,"volatility":"high"},"price":9.865,"volume":{"bars":280,"last_bar_volume":3370.0,"baseline_avg":11299.3,"bar_rvol":0.298249,"raw_accel":-0.525218,"smooth_accel":-0.208448,"accel_momentum":-0.402144,"rvol_3bar":[0.595181,0.633852,0.298249],"trend_3bar":"MIXED","projected_rvol":6.384043},"flow":{"window_s":30,"trades":210,"trade_rate":7.0,"buy_vol":39553.0,"sell_vol":19104.0,"unclassified_vol":0.0,"imbalance":0.34862,"bid":9.86,"ask":9.87,"spread_pct":0.101368,"quote_size_imbalance":null,"quote_age_s":0.494703},"context":{"vwap":9.824701,"price_vs_vwap_pct":0.410176,"ema9":9.786253,"ema20":9.781048,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.519763,"dist_to_hod_atr":9.772759,"atr":0.026093,"spread_atr":0.383245,"own_change_pct":-0.05102,"rel_strength_pct":{"SPY":-0.05102,"IWM":-0.12979}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.103975},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"17185f609266","ts":"2026-09-21T18:10:55.952340+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4671,"target":6.94,"target_label":"ceiling","reward_risk":1.9,"pos_in_5d_range_pct":112.0,"room_to_5d_high_atr":-0.32},"price":6.6304,"vwap":6.5894,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":0.5,"trend":"flat","recent_slope_pct":0.0917,"volatility":"high"},"price":6.6304,"volume":{"bars":278,"last_bar_volume":3499.0,"baseline_avg":2136.8,"bar_rvol":1.637495,"raw_accel":0.152124,"smooth_accel":-0.460436,"accel_momentum":-0.982086,"rvol_3bar":[0.508132,1.518272,1.637495],"trend_3bar":"ACCELERATING","projected_rvol":0.736206},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":536.0,"sell_vol":231.0,"unclassified_vol":0.0,"imbalance":0.397653,"bid":6.64,"ask":6.68,"spread_pct":0.600601,"quote_size_imbalance":null,"quote_age_s":0.939966},"context":{"vwap":6.589413,"price_vs_vwap_pct":0.622011,"ema9":6.616633,"ema20":6.61031,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.461095,"dist_to_hod_atr":13.020476,"atr":0.023778,"spread_atr":1.682232,"own_change_pct":0.682335,"rel_strength_pct":{"SPY":0.682335,"IWM":0.603566}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.651155},"shadow":{"decision":"FAIL","failed":["vas","spread"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3be02603388a","ts":"2026-09-21T18:11:01.175225+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.82 below VWAP $9.82","plan":{"state":"PASS","setup":"","stop":9.657,"target":9.88,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":129.4,"room_to_5d_high_atr":-0.69},"price":9.8227,"vwap":9.8247,"ext_from_open_pct":-1.67,"max_ext_allowed_pct":4.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.0516,"volatility":"high"},"price":9.8227,"volume":{"bars":280,"last_bar_volume":3370.0,"baseline_avg":11299.3,"bar_rvol":0.298249,"raw_accel":-0.525218,"smooth_accel":-0.208448,"accel_momentum":-0.402144,"rvol_3bar":[0.595181,0.633852,0.298249],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":248,"trade_rate":8.266667,"buy_vol":42569.0,"sell_vol":26514.0,"unclassified_vol":0.0,"imbalance":0.232402,"bid":9.85,"ask":9.86,"spread_pct":0.101471,"quote_size_imbalance":null,"quote_age_s":0.331068},"context":{"vwap":9.824701,"price_vs_vwap_pct":-0.020372,"ema9":9.786253,"ema20":9.781048,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.937747,"dist_to_hod_atr":11.393887,"atr":0.026093,"spread_atr":0.383245,"own_change_pct":-0.05102,"rel_strength_pct":{"SPY":-0.03227,"IWM":-0.119271}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.069313},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f785456f0dc1","ts":"2026-09-21T18:11:06.435035+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4768,"target":6.94,"target_label":"ceiling","reward_risk":1.84,"pos_in_5d_range_pct":112.5,"room_to_5d_high_atr":-0.34},"price":6.6401,"vwap":6.5895,"ext_from_open_pct":3.91,"max_ext_allowed_pct":3.0,"volume_pace":0.499,"trend":"flat","recent_slope_pct":0.0763,"volatility":"high"},"price":6.6401,"volume":{"bars":279,"last_bar_volume":1467.0,"baseline_avg":2167.45,"bar_rvol":0.676832,"raw_accel":-0.580737,"smooth_accel":-0.062661,"accel_momentum":0.397775,"rvol_3bar":[1.518272,1.637495,0.676832],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":0.0,"sell_vol":1166.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.64,"ask":6.68,"spread_pct":0.600601,"quote_size_imbalance":null,"quote_age_s":2.425061},"context":{"vwap":6.589448,"price_vs_vwap_pct":0.768679,"ema9":6.619386,"ema20":6.612224,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.321326,"dist_to_hod_atr":12.040269,"atr":0.024908,"spread_atr":1.605905,"own_change_pct":0.308623,"rel_strength_pct":{"SPY":0.327374,"IWM":0.240372}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.676832},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"756315ab04fb","ts":"2026-09-21T18:11:11.631743+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7881,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":-0.0112,"volatility":"unknown"},"price":8.845,"volume":{"bars":281,"last_bar_volume":20690.0,"baseline_avg":40201.8,"bar_rvol":0.514654,"raw_accel":1.058614,"smooth_accel":-0.156641,"accel_momentum":-0.009585,"rvol_3bar":[2.344047,0.108707,0.514654],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":5732.0,"sell_vol":10724.0,"unclassified_vol":0.0,"imbalance":-0.303354,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.05949},"context":{"vwap":8.788066,"price_vs_vwap_pct":0.647855,"ema9":8.834254,"ema20":8.823611,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":3.766981,"atr":0.025219,"spread_atr":0.396524,"own_change_pct":0.057725,"rel_strength_pct":{"SPY":0.076476,"IWM":-0.010526}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.156122},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"20a2c319d8a1","ts":"2026-09-21T18:11:16.863078+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8433,"vwap":8.7881,"ext_from_open_pct":3.79,"max_ext_allowed_pct":3.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":-0.015,"volatility":"unknown"},"price":8.8433,"volume":{"bars":281,"last_bar_volume":20690.0,"baseline_avg":40201.8,"bar_rvol":0.514654,"raw_accel":1.058614,"smooth_accel":-0.156641,"accel_momentum":-0.009585,"rvol_3bar":[2.344047,0.108707,0.514654],"trend_3bar":"MIXED","projected_rvol":0.306582},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":4987.0,"sell_vol":2720.0,"unclassified_vol":0.0,"imbalance":0.294148,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.192568},"context":{"vwap":8.788066,"price_vs_vwap_pct":0.62851,"ema9":8.834254,"ema20":8.823611,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.081655,"dist_to_hod_atr":3.83439,"atr":0.025219,"spread_atr":0.396524,"own_change_pct":0.057725,"rel_strength_pct":{"SPY":0.076476,"IWM":-0.010526}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.151384},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"694398d6ef7a","ts":"2026-09-21T18:11:22.099561+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8466,"vwap":8.7881,"ext_from_open_pct":3.83,"max_ext_allowed_pct":4.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":-0.0076,"volatility":"unknown"},"price":8.8466,"volume":{"bars":281,"last_bar_volume":20690.0,"baseline_avg":40201.8,"bar_rvol":0.514654,"raw_accel":1.058614,"smooth_accel":-0.156641,"accel_momentum":-0.009585,"rvol_3bar":[2.344047,0.108707,0.514654],"trend_3bar":"MIXED","projected_rvol":0.310589},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":5960.0,"sell_vol":1745.0,"unclassified_vol":0.0,"imbalance":0.547047,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.674829},"context":{"vwap":8.788066,"price_vs_vwap_pct":0.666061,"ema9":8.834254,"ema20":8.823611,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.044743,"dist_to_hod_atr":3.703537,"atr":0.025219,"spread_atr":0.396524,"own_change_pct":0.057725,"rel_strength_pct":{"SPY":0.076476,"IWM":-0.010526}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.28154},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d0e90735259a","ts":"2026-09-21T18:11:27.331623+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6893,"target":10.02,"target_label":"premarket_high","reward_risk":1.0,"pos_in_5d_range_pct":131.5,"room_to_5d_high_atr":-0.74},"price":9.855,"vwap":9.8247,"ext_from_open_pct":-1.35,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":0.1607,"volatility":"high"},"price":9.855,"volume":{"bars":281,"last_bar_volume":71818.0,"baseline_avg":11020.35,"bar_rvol":6.516853,"raw_accel":20.310979,"smooth_accel":2.22412,"accel_momentum":2.432568,"rvol_3bar":[0.633852,0.298249,6.516853],"trend_3bar":"MIXED","projected_rvol":1.733642},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":5061.0,"sell_vol":3652.0,"unclassified_vol":0.0,"imbalance":0.161712,"bid":9.85,"ask":9.86,"spread_pct":0.101471,"quote_size_imbalance":null,"quote_age_s":0.818266},"context":{"vwap":9.8247,"price_vs_vwap_pct":0.308404,"ema9":9.793542,"ema20":9.785015,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.618577,"dist_to_hod_atr":8.661987,"atr":0.030593,"spread_atr":0.326867,"own_change_pct":0.4777,"rel_strength_pct":{"SPY":0.496451,"IWM":0.409449}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":1.053856},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"832ca7b53dc3","ts":"2026-09-21T18:11:27.331623+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8426,"vwap":8.7881,"ext_from_open_pct":3.79,"max_ext_allowed_pct":3.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":-0.0166,"volatility":"unknown"},"price":8.8426,"volume":{"bars":281,"last_bar_volume":20690.0,"baseline_avg":40201.8,"bar_rvol":0.514654,"raw_accel":1.058614,"smooth_accel":-0.156641,"accel_momentum":-0.009585,"rvol_3bar":[2.344047,0.108707,0.514654],"trend_3bar":"MIXED","projected_rvol":0.317261},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":3935.0,"sell_vol":2459.0,"unclassified_vol":0.0,"imbalance":0.230841,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.649547},"context":{"vwap":8.788066,"price_vs_vwap_pct":0.620545,"ema9":8.834254,"ema20":8.823611,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.089485,"dist_to_hod_atr":3.862147,"atr":0.025219,"spread_atr":0.396524,"own_change_pct":0.057725,"rel_strength_pct":{"SPY":0.076476,"IWM":-0.010526}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.118803},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8da1d6ee0429","ts":"2026-09-21T18:12:09.108074+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 352.6s, plan says PASS; stop 8.93, target 9.07 (ceiling), R:R 0.64; R:R 0.64 < 2.0 at 9.02; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.07,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0106,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.775,"trend":"flat","recent_slope_pct":-0.0351,"volatility":"medium"},"price":9.015,"volume":{"bars":282,"last_bar_volume":1641.0,"baseline_avg":15552.5,"bar_rvol":0.105514,"raw_accel":-0.577946,"smooth_accel":0.049655,"accel_momentum":-0.321503,"rvol_3bar":[0.42328,0.249513,0.105514],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1186.0,"sell_vol":692.0,"unclassified_vol":0.0,"imbalance":0.263046,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":2.149783},"context":{"vwap":9.010591,"price_vs_vwap_pct":0.048937,"ema9":9.027774,"ema20":9.023805,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":4.324467,"atr":0.02657,"spread_atr":0.376368,"own_change_pct":0.110865,"rel_strength_pct":{"SPY":0.121856,"IWM":0.060134}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.027755},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"c68082875b61","ts":"2026-09-21T18:12:09.108074+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0497,"target":12.34,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":66.5,"room_to_5d_high_atr":0.53},"price":12.225,"vwap":12.1817,"ext_from_open_pct":-0.61,"max_ext_allowed_pct":3.0,"volume_pace":0.604,"trend":"flat","recent_slope_pct":-0.0417,"volatility":"medium"},"price":12.225,"volume":{"bars":282,"last_bar_volume":4124.0,"baseline_avg":5658.5,"bar_rvol":0.728815,"raw_accel":1.91526,"smooth_accel":-0.509907,"accel_momentum":0.071264,"rvol_3bar":[0.250576,0.226411,0.728815],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":901.0,"sell_vol":1060.0,"unclassified_vol":0.0,"imbalance":-0.081081,"bid":12.22,"ask":12.23,"spread_pct":0.0818,"quote_size_imbalance":null,"quote_age_s":0.091618},"context":{"vwap":12.181646,"price_vs_vwap_pct":0.355893,"ema9":12.243144,"ema20":12.239753,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.121697,"dist_to_hod_atr":12.751738,"atr":0.020781,"spread_atr":0.481198,"own_change_pct":0.055578,"rel_strength_pct":{"SPY":0.06657,"IWM":0.004847}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.059093},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cea3a1408b3d","ts":"2026-09-21T18:12:30.088881+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.82 below VWAP $9.82","plan":{"state":"PASS","setup":"","stop":9.657,"target":9.88,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":129.4,"room_to_5d_high_atr":-0.69},"price":9.8227,"vwap":9.8247,"ext_from_open_pct":-1.67,"max_ext_allowed_pct":3.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":0.1175,"volatility":"high"},"price":9.8227,"volume":{"bars":282,"last_bar_volume":13361.0,"baseline_avg":13831.9,"bar_rvol":0.965956,"raw_accel":-0.81396,"smooth_accel":2.845943,"accel_momentum":0.621823,"rvol_3bar":[0.298249,6.516853,0.965956],"trend_3bar":"MIXED","projected_rvol":2.40152},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":10308.0,"sell_vol":6350.0,"unclassified_vol":0.0,"imbalance":0.237604,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":0.003049},"context":{"vwap":9.824726,"price_vs_vwap_pct":-0.020617,"ema9":9.805834,"ema20":9.79168,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.937747,"dist_to_hod_atr":9.17765,"atr":0.032394,"spread_atr":0.3087,"own_change_pct":0.562251,"rel_strength_pct":{"SPY":0.573242,"IWM":0.511519}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.229514},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"721731a87810","ts":"2026-09-21T18:12:35.231438+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 378.7s, plan says WATCH; stop 8.93, target 9.06 (clear air (typical 60-min move)), R:R 0.47; R:R 0.47 < 2.0 at 9.02; breakout: 1-min close > 9.08 on >= 14597 sh","plan":{"state":"WATCH","setup":"","stop":8.9337,"target":9.061,"target_label":"clear air (typical 60-min move)","reward_risk":0.47,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.0202,"vwap":9.0106,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.774,"trend":"flat","recent_slope_pct":-0.0236,"volatility":"medium"},"price":9.0202,"volume":{"bars":282,"last_bar_volume":1641.0,"baseline_avg":15552.5,"bar_rvol":0.105514,"raw_accel":-0.577946,"smooth_accel":0.049655,"accel_momentum":-0.321503,"rvol_3bar":[0.42328,0.249513,0.105514],"trend_3bar":"DECELERATING","projected_rvol":0.20882},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1029.0,"sell_vol":876.0,"unclassified_vol":0.0,"imbalance":0.080315,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":1.107655},"context":{"vwap":9.010591,"price_vs_vwap_pct":0.106646,"ema9":9.027774,"ema20":9.023805,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.201547,"dist_to_hod_atr":4.128756,"atr":0.02657,"spread_atr":0.376368,"own_change_pct":0.110865,"rel_strength_pct":{"SPY":0.121856,"IWM":0.060134}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.008474},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"4f653c940bcd","ts":"2026-09-21T18:12:35.231438+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6743,"target":10.02,"target_label":"premarket_high","reward_risk":1.09,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-0.72},"price":9.84,"vwap":9.8248,"ext_from_open_pct":-1.5,"max_ext_allowed_pct":3.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":0.1527,"volatility":"high"},"price":9.84,"volume":{"bars":282,"last_bar_volume":13361.0,"baseline_avg":13831.9,"bar_rvol":0.965956,"raw_accel":-0.81396,"smooth_accel":2.845943,"accel_momentum":0.621823,"rvol_3bar":[0.298249,6.516853,0.965956],"trend_3bar":"MIXED","projected_rvol":2.684204},"flow":{"window_s":30,"trades":136,"trade_rate":4.533333,"buy_vol":12383.0,"sell_vol":8717.0,"unclassified_vol":0.0,"imbalance":0.173744,"bid":9.83,"ask":9.84,"spread_pct":0.101678,"quote_size_imbalance":null,"quote_age_s":0.249269},"context":{"vwap":9.824726,"price_vs_vwap_pct":0.155469,"ema9":9.805834,"ema20":9.79168,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.766798,"dist_to_hod_atr":8.643599,"atr":0.032394,"spread_atr":0.3087,"own_change_pct":0.562251,"rel_strength_pct":{"SPY":0.573242,"IWM":0.511519}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.167829},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"176b4f97fbee","ts":"2026-09-21T18:12:35.231438+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7346,"target":8.91,"target_label":"ceiling","reward_risk":0.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8228,"vwap":8.7883,"ext_from_open_pct":3.55,"max_ext_allowed_pct":4.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":-0.0672,"volatility":"unknown"},"price":8.8228,"volume":{"bars":282,"last_bar_volume":27878.0,"baseline_avg":37139.15,"bar_rvol":0.750636,"raw_accel":0.347414,"smooth_accel":-0.715025,"accel_momentum":-0.558384,"rvol_3bar":[0.108707,0.514654,0.750636],"trend_3bar":"ACCELERATING","projected_rvol":3.545664},"flow":{"window_s":30,"trades":189,"trade_rate":6.3,"buy_vol":39982.0,"sell_vol":19564.0,"unclassified_vol":0.0,"imbalance":0.342895,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.148842},"context":{"vwap":8.788132,"price_vs_vwap_pct":0.394485,"ema9":8.834404,"ema20":8.824695,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.310962,"dist_to_hod_atr":4.716993,"atr":0.024846,"spread_atr":0.402474,"own_change_pct":-0.027157,"rel_strength_pct":{"SPY":-0.016166,"IWM":-0.077889}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.257389},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3fa6ba8fac74","ts":"2026-09-21T18:12:40.355817+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7367,"target":8.91,"target_label":"ceiling","reward_risk":0.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.825,"vwap":8.7883,"ext_from_open_pct":3.58,"max_ext_allowed_pct":3.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":-0.0622,"volatility":"unknown"},"price":8.825,"volume":{"bars":282,"last_bar_volume":27878.0,"baseline_avg":37139.15,"bar_rvol":0.750636,"raw_accel":0.347414,"smooth_accel":-0.715025,"accel_momentum":-0.558384,"rvol_3bar":[0.108707,0.514654,0.750636],"trend_3bar":"ACCELERATING","projected_rvol":3.10052},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":38323.0,"sell_vol":16766.0,"unclassified_vol":0.0,"imbalance":0.391312,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":0.46142},"context":{"vwap":8.788132,"price_vs_vwap_pct":0.419519,"ema9":8.834404,"ema20":8.824695,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.286353,"dist_to_hod_atr":4.628449,"atr":0.024846,"spread_atr":0.402474,"own_change_pct":-0.027157,"rel_strength_pct":{"SPY":-0.016166,"IWM":-0.077889}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.293733},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"af44fb6775af","ts":"2026-09-21T18:12:45.505494+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 389.0s, plan says PASS; stop 8.93, target 9.07 (ceiling), R:R 0.64; R:R 0.64 < 2.0 at 9.02; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.07,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0106,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":0.773,"trend":"flat","recent_slope_pct":-0.0351,"volatility":"medium"},"price":9.015,"volume":{"bars":282,"last_bar_volume":1641.0,"baseline_avg":15552.5,"bar_rvol":0.105514,"raw_accel":-0.577946,"smooth_accel":0.049655,"accel_momentum":-0.321503,"rvol_3bar":[0.42328,0.249513,0.105514],"trend_3bar":"DECELERATING","projected_rvol":0.202537},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":792.0,"sell_vol":286.0,"unclassified_vol":0.0,"imbalance":0.469388,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":1.51524},"context":{"vwap":9.010591,"price_vs_vwap_pct":0.048937,"ema9":9.027774,"ema20":9.023805,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":4.324467,"atr":0.02657,"spread_atr":0.376368,"own_change_pct":0.110865,"rel_strength_pct":{"SPY":0.121856,"IWM":0.060134}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.049527},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"bf4e325f5f2b","ts":"2026-09-21T18:12:45.505494+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7402,"target":8.91,"target_label":"ceiling","reward_risk":0.92,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8285,"vwap":8.7883,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":-0.0543,"volatility":"unknown"},"price":8.8285,"volume":{"bars":282,"last_bar_volume":27878.0,"baseline_avg":37139.15,"bar_rvol":0.750636,"raw_accel":0.347414,"smooth_accel":-0.715025,"accel_momentum":-0.558384,"rvol_3bar":[0.108707,0.514654,0.750636],"trend_3bar":"ACCELERATING","projected_rvol":3.393124},"flow":{"window_s":30,"trades":157,"trade_rate":5.233333,"buy_vol":36106.0,"sell_vol":26213.0,"unclassified_vol":0.0,"imbalance":0.158748,"bid":8.82,"ask":8.83,"spread_pct":0.113314,"quote_size_imbalance":null,"quote_age_s":4.315955},"context":{"vwap":8.788132,"price_vs_vwap_pct":0.459345,"ema9":8.834404,"ema20":8.824695,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.247204,"dist_to_hod_atr":4.487583,"atr":0.024846,"spread_atr":0.402474,"own_change_pct":-0.027157,"rel_strength_pct":{"SPY":-0.016166,"IWM":-0.077889}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.119162},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5323a766884e","ts":"2026-09-21T18:12:50.567080+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 394.1s, plan says WATCH; stop 8.93, target 9.06 (clear air (typical 60-min move)), R:R 0.47; R:R 0.47 < 2.0 at 9.02; breakout: 1-min close > 9.08 on >= 14597 sh","plan":{"state":"WATCH","setup":"","stop":8.9339,"target":9.0612,"target_label":"clear air (typical 60-min move)","reward_risk":0.47,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.0204,"vwap":9.0106,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.773,"trend":"flat","recent_slope_pct":-0.0232,"volatility":"medium"},"price":9.0204,"volume":{"bars":282,"last_bar_volume":1641.0,"baseline_avg":15552.5,"bar_rvol":0.105514,"raw_accel":-0.577946,"smooth_accel":0.049655,"accel_momentum":-0.321503,"rvol_3bar":[0.42328,0.249513,0.105514],"trend_3bar":"DECELERATING","projected_rvol":0.182569},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":796.0,"sell_vol":286.0,"unclassified_vol":0.0,"imbalance":0.471349,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":6.576826},"context":{"vwap":9.010591,"price_vs_vwap_pct":0.108866,"ema9":9.027774,"ema20":9.023805,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.199356,"dist_to_hod_atr":4.121229,"atr":0.02657,"spread_atr":0.376368,"own_change_pct":0.110865,"rel_strength_pct":{"SPY":0.121856,"IWM":0.060134}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.049734},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"eb1c3742de2b","ts":"2026-09-21T18:13:00.848547+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 820.9s, plan says WATCH; stop 8.63, target 8.76 (premarket_high), R:R 0.25; R:R 0.25 < 2.0 at 8.73; pullback: buy 8.70-8.72 holding + reclaim/fading selling/support; breakout: 1-min close > 8.75 ","plan":{"state":"WATCH","setup":"","stop":8.6331,"target":8.76,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":130.0,"room_to_5d_high_atr":-0.94},"price":8.735,"vwap":8.6388,"ext_from_open_pct":1.33,"max_ext_allowed_pct":3.0,"volume_pace":0.693,"trend":"flat","recent_slope_pct":0.0728,"volatility":"medium"},"price":8.735,"volume":{"bars":283,"last_bar_volume":1128.0,"baseline_avg":1315.0,"bar_rvol":0.857795,"raw_accel":-0.667747,"smooth_accel":0.992333,"accel_momentum":0.173405,"rvol_3bar":[0.711158,2.927481,0.857795],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":718.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.997218,"bid":8.73,"ask":8.74,"spread_pct":0.114482,"quote_size_imbalance":null,"quote_age_s":1.400948},"context":{"vwap":8.638811,"price_vs_vwap_pct":1.113453,"ema9":8.717715,"ema20":8.71066,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.383693,"dist_to_hod_atr":16.313715,"atr":0.013075,"spread_atr":0.764825,"own_change_pct":0.318124,"rel_strength_pct":{"SPY":0.330409,"IWM":0.309379}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.855409},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4113c7ca6e74","ts":"2026-09-21T18:13:05.991347+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.01 below VWAP $9.01","plan":{"state":"PASS","setup":"","stop":8.9235,"target":9.07,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":125.5,"room_to_5d_high_atr":-0.81},"price":9.01,"vwap":9.0106,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":4.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0536,"volatility":"medium"},"price":9.01,"volume":{"bars":283,"last_bar_volume":2699.0,"baseline_avg":11972.3,"bar_rvol":0.225437,"raw_accel":-0.098252,"smooth_accel":-0.49789,"accel_momentum":-0.547545,"rvol_3bar":[0.249513,0.105514,0.225437],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":305.0,"sell_vol":507.0,"unclassified_vol":0.0,"imbalance":-0.248768,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":22.001093},"context":{"vwap":9.010595,"price_vs_vwap_pct":-0.006605,"ema9":9.026219,"ema20":9.023443,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.313267,"dist_to_hod_atr":4.593785,"atr":0.0261,"spread_atr":0.383135,"own_change_pct":-0.00776,"rel_strength_pct":{"SPY":0.004525,"IWM":-0.016505}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.056082},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"75547d30bede","ts":"2026-09-21T18:13:05.991347+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.82 below VWAP $9.82","plan":{"state":"PASS","setup":"","stop":9.6585,"target":10.02,"target_label":"premarket_high","reward_risk":1.18,"pos_in_5d_range_pct":129.5,"room_to_5d_high_atr":-0.69},"price":9.8242,"vwap":9.8248,"ext_from_open_pct":-1.66,"max_ext_allowed_pct":4.0,"volume_pace":0.826,"trend":"flat","recent_slope_pct":0.0716,"volatility":"high"},"price":9.8242,"volume":{"bars":283,"last_bar_volume":24430.0,"baseline_avg":14334.45,"bar_rvol":1.704286,"raw_accel":0.828456,"smooth_accel":5.357831,"accel_momentum":2.511887,"rvol_3bar":[6.516853,0.965956,1.704286],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":3129.0,"sell_vol":522.0,"unclassified_vol":0.0,"imbalance":0.714051,"bid":9.83,"ask":9.84,"spread_pct":0.101678,"quote_size_imbalance":null,"quote_age_s":2.870281},"context":{"vwap":9.824757,"price_vs_vwap_pct":-0.005672,"ema9":9.811607,"ema20":9.795777,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.922925,"dist_to_hod_atr":9.125187,"atr":0.032416,"spread_atr":0.308492,"own_change_pct":0.456588,"rel_strength_pct":{"SPY":0.468873,"IWM":0.447844}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.216947},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2b045a8a85c5","ts":"2026-09-21T18:13:11.257752+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6693,"target":10.02,"target_label":"premarket_high","reward_risk":1.12,"pos_in_5d_range_pct":130.2,"room_to_5d_high_atr":-0.71},"price":9.835,"vwap":9.8248,"ext_from_open_pct":-1.55,"max_ext_allowed_pct":4.0,"volume_pace":0.826,"trend":"flat","recent_slope_pct":0.0936,"volatility":"high"},"price":9.835,"volume":{"bars":283,"last_bar_volume":24430.0,"baseline_avg":14334.45,"bar_rvol":1.704286,"raw_accel":0.828456,"smooth_accel":5.357831,"accel_momentum":2.511887,"rvol_3bar":[6.516853,0.965956,1.704286],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":3231.0,"sell_vol":535.0,"unclassified_vol":0.0,"imbalance":0.715879,"bid":9.83,"ask":9.84,"spread_pct":0.101678,"quote_size_imbalance":null,"quote_age_s":0.347943},"context":{"vwap":9.824757,"price_vs_vwap_pct":0.104254,"ema9":9.811607,"ema20":9.795777,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.816206,"dist_to_hod_atr":8.792016,"atr":0.032416,"spread_atr":0.308492,"own_change_pct":0.456588,"rel_strength_pct":{"SPY":0.468873,"IWM":0.447844}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.220062},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"591a26b0577b","ts":"2026-09-21T18:13:16.535469+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.9335,"target":9.0616,"target_label":"clear air (typical 60-min move)","reward_risk":0.48,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.02,"vwap":9.0106,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0315,"volatility":"medium"},"price":9.02,"volume":{"bars":283,"last_bar_volume":2699.0,"baseline_avg":11972.3,"bar_rvol":0.225437,"raw_accel":-0.098252,"smooth_accel":-0.49789,"accel_momentum":-0.547545,"rvol_3bar":[0.249513,0.105514,0.225437],"trend_3bar":"MIXED","projected_rvol":0.090621},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":359.0,"sell_vol":250.0,"unclassified_vol":0.0,"imbalance":0.178982,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":3.870739},"context":{"vwap":9.010595,"price_vs_vwap_pct":0.104375,"ema9":9.026219,"ema20":9.023443,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.203737,"dist_to_hod_atr":4.210651,"atr":0.0261,"spread_atr":0.383135,"own_change_pct":-0.00776,"rel_strength_pct":{"SPY":0.004525,"IWM":-0.016505}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.040349},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b69b8d59d879","ts":"2026-09-21T18:13:21.744616+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.2s / 18s","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.07,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0106,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0426,"volatility":"medium"},"price":9.015,"volume":{"bars":283,"last_bar_volume":2699.0,"baseline_avg":11972.3,"bar_rvol":0.225437,"raw_accel":-0.098252,"smooth_accel":-0.49789,"accel_momentum":-0.547545,"rvol_3bar":[0.249513,0.105514,0.225437],"trend_3bar":"MIXED","projected_rvol":0.081127},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":355.0,"sell_vol":303.0,"unclassified_vol":0.0,"imbalance":0.079027,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":9.079886},"context":{"vwap":9.010595,"price_vs_vwap_pct":0.048885,"ema9":9.026219,"ema20":9.023443,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":4.402218,"atr":0.0261,"spread_atr":0.383135,"own_change_pct":-0.00776,"rel_strength_pct":{"SPY":0.004525,"IWM":-0.016505}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.017816},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"269a449aa6a1","ts":"2026-09-21T18:13:21.744616+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.82 below VWAP $9.82","plan":{"state":"PASS","setup":"","stop":9.6588,"target":10.02,"target_label":"premarket_high","reward_risk":1.18,"pos_in_5d_range_pct":129.5,"room_to_5d_high_atr":-0.69},"price":9.8245,"vwap":9.8248,"ext_from_open_pct":-1.66,"max_ext_allowed_pct":4.0,"volume_pace":0.826,"trend":"flat","recent_slope_pct":0.0723,"volatility":"high"},"price":9.8245,"volume":{"bars":283,"last_bar_volume":24430.0,"baseline_avg":14334.45,"bar_rvol":1.704286,"raw_accel":0.828456,"smooth_accel":5.357831,"accel_momentum":2.511887,"rvol_3bar":[6.516853,0.965956,1.704286],"trend_3bar":"MIXED","projected_rvol":0.533595},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":3532.0,"sell_vol":351.0,"unclassified_vol":0.0,"imbalance":0.819212,"bid":9.83,"ask":9.84,"spread_pct":0.101678,"quote_size_imbalance":null,"quote_age_s":0.419345},"context":{"vwap":9.824757,"price_vs_vwap_pct":-0.002619,"ema9":9.811607,"ema20":9.795777,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.91996,"dist_to_hod_atr":9.115932,"atr":0.032416,"spread_atr":0.308492,"own_change_pct":0.456588,"rel_strength_pct":{"SPY":0.468873,"IWM":0.447844}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.396171},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a20d5ae37eaf","ts":"2026-09-21T18:13:27.017226+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6693,"target":10.02,"target_label":"premarket_high","reward_risk":1.12,"pos_in_5d_range_pct":130.2,"room_to_5d_high_atr":-0.71},"price":9.835,"vwap":9.8248,"ext_from_open_pct":-1.55,"max_ext_allowed_pct":4.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":0.0936,"volatility":"high"},"price":9.835,"volume":{"bars":283,"last_bar_volume":24430.0,"baseline_avg":14334.45,"bar_rvol":1.704286,"raw_accel":0.828456,"smooth_accel":5.357831,"accel_momentum":2.511887,"rvol_3bar":[6.516853,0.965956,1.704286],"trend_3bar":"MIXED","projected_rvol":0.684781},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":4067.0,"sell_vol":463.0,"unclassified_vol":0.0,"imbalance":0.795585,"bid":9.83,"ask":9.84,"spread_pct":0.101678,"quote_size_imbalance":null,"quote_age_s":0.532187},"context":{"vwap":9.824757,"price_vs_vwap_pct":0.104254,"ema9":9.811607,"ema20":9.795777,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.816206,"dist_to_hod_atr":8.792016,"atr":0.032416,"spread_atr":0.308492,"own_change_pct":0.456588,"rel_strength_pct":{"SPY":0.468873,"IWM":0.447844}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.355904},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cc49bf705836","ts":"2026-09-21T18:13:37.495291+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 21.0s, plan says WATCH; stop 8.94, target 9.06 (clear air (typical 60-min move)), R:R 0.48; R:R 0.48 < 2.0 at 9.02; breakout: 1-min close > 9.08 on >= 14542 sh","plan":{"state":"WATCH","setup":"","stop":8.9351,"target":9.0632,"target_label":"clear air (typical 60-min move)","reward_risk":0.48,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.84},"price":9.0216,"vwap":9.0106,"ext_from_open_pct":0.02,"max_ext_allowed_pct":4.0,"volume_pace":0.771,"trend":"flat","recent_slope_pct":-0.0279,"volatility":"medium"},"price":9.0216,"volume":{"bars":283,"last_bar_volume":2699.0,"baseline_avg":11972.3,"bar_rvol":0.225437,"raw_accel":-0.098252,"smooth_accel":-0.49789,"accel_momentum":-0.547545,"rvol_3bar":[0.249513,0.105514,0.225437],"trend_3bar":"MIXED","projected_rvol":0.548134},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":3983.0,"sell_vol":98.0,"unclassified_vol":0.0,"imbalance":0.951973,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.610141},"context":{"vwap":9.010595,"price_vs_vwap_pct":0.122132,"ema9":9.026219,"ema20":9.023443,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.186212,"dist_to_hod_atr":4.149349,"atr":0.0261,"spread_atr":0.383135,"own_change_pct":-0.00776,"rel_strength_pct":{"SPY":0.004525,"IWM":-0.016505}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.21461},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a5662bf99ac4","ts":"2026-09-21T18:13:42.692607+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 26.2s, plan says PASS; stop 8.93, target 9.07 (ceiling), R:R 0.64; R:R 0.64 < 2.0 at 9.02; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.9285,"target":9.07,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":9.015,"vwap":9.0106,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":0.771,"trend":"flat","recent_slope_pct":-0.0426,"volatility":"medium"},"price":9.015,"volume":{"bars":283,"last_bar_volume":2699.0,"baseline_avg":11972.3,"bar_rvol":0.225437,"raw_accel":-0.098252,"smooth_accel":-0.49789,"accel_momentum":-0.547545,"rvol_3bar":[0.249513,0.105514,0.225437],"trend_3bar":"MIXED","projected_rvol":0.498074},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":3842.0,"sell_vol":115.0,"unclassified_vol":0.0,"imbalance":0.941875,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.299437},"context":{"vwap":9.010595,"price_vs_vwap_pct":0.048885,"ema9":9.026219,"ema20":9.023443,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.258502,"dist_to_hod_atr":4.402218,"atr":0.0261,"spread_atr":0.383135,"own_change_pct":-0.00776,"rel_strength_pct":{"SPY":0.004525,"IWM":-0.016505}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.212334},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5731290a5255","ts":"2026-09-21T18:13:42.692607+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7482,"target":8.91,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8366,"vwap":8.7884,"ext_from_open_pct":3.72,"max_ext_allowed_pct":3.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":-0.0248,"volatility":"unknown"},"price":8.8366,"volume":{"bars":283,"last_bar_volume":105103.0,"baseline_avg":37519.1,"bar_rvol":2.80132,"raw_accel":2.770105,"smooth_accel":-0.120256,"accel_momentum":0.594768,"rvol_3bar":[0.514654,0.750636,2.80132],"trend_3bar":"ACCELERATING","projected_rvol":2.485834},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":31950.0,"sell_vol":17726.0,"unclassified_vol":0.0,"imbalance":0.286335,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.396323},"context":{"vwap":8.788299,"price_vs_vwap_pct":0.549608,"ema9":8.832523,"ema20":8.824724,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.1566,"dist_to_hod_atr":3.979083,"atr":0.025986,"spread_atr":0.384824,"own_change_pct":-0.226116,"rel_strength_pct":{"SPY":-0.213831,"IWM":-0.234861}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.802117},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c55e7d248277","ts":"2026-09-21T18:13:53.227987+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"held 36.7s, plan says WATCH; stop 8.94, target 9.07 (clear air (typical 60-min move)), R:R 0.48; R:R 0.48 < 2.0 at 9.03; breakout: 1-min close > 9.08 on >= 14542 sh","plan":{"state":"WATCH","setup":"","stop":8.9435,"target":9.0715,"target_label":"clear air (typical 60-min move)","reward_risk":0.48,"pos_in_5d_range_pct":127.3,"room_to_5d_high_atr":-0.87},"price":9.03,"vwap":9.0106,"ext_from_open_pct":0.11,"max_ext_allowed_pct":4.0,"volume_pace":0.771,"trend":"flat","recent_slope_pct":-0.0093,"volatility":"medium"},"price":9.03,"volume":{"bars":283,"last_bar_volume":2699.0,"baseline_avg":11972.3,"bar_rvol":0.225437,"raw_accel":-0.098252,"smooth_accel":-0.49789,"accel_momentum":-0.547545,"rvol_3bar":[0.249513,0.105514,0.225437],"trend_3bar":"MIXED","projected_rvol":0.531211},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":5214.0,"sell_vol":76.0,"unclassified_vol":0.0,"imbalance":0.971267,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":1.658722},"context":{"vwap":9.010595,"price_vs_vwap_pct":0.215356,"ema9":9.026219,"ema20":9.023443,"ema_stack":true,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.094207,"dist_to_hod_atr":3.827516,"atr":0.0261,"spread_atr":0.383135,"own_change_pct":-0.00776,"rel_strength_pct":{"SPY":0.004525,"IWM":-0.016505}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.218959},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5200ef725585","ts":"2026-09-21T18:13:53.227987+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4251,"target":7.775,"target_label":"range_20d_high","reward_risk":19.8,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.49,"vwap":6.3809,"ext_from_open_pct":3.18,"max_ext_allowed_pct":4.0,"volume_pace":1.153,"trend":"flat","recent_slope_pct":-0.0397,"volatility":"unknown"},"price":6.49,"volume":{"bars":283,"last_bar_volume":42625.0,"baseline_avg":26425.85,"bar_rvol":1.613004,"raw_accel":5.452016,"smooth_accel":-0.08517,"accel_momentum":0.256744,"rvol_3bar":[0.497937,0.164664,1.613004],"trend_3bar":"MIXED","projected_rvol":0.336259},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1436.0,"sell_vol":1649.0,"unclassified_vol":0.0,"imbalance":-0.069044,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.221704},"context":{"vwap":6.380822,"price_vs_vwap_pct":1.711035,"ema9":6.491579,"ema20":6.490969,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.30722,"dist_to_hod_atr":1.608992,"atr":0.01243,"spread_atr":0.804496,"own_change_pct":-0.230947,"rel_strength_pct":{"SPY":-0.218662,"IWM":-0.239692}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.111368},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"439f6d191f80","ts":"2026-09-21T18:13:58.415777+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3809,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.153,"trend":"flat","recent_slope_pct":-0.0706,"volatility":"unknown"},"price":6.48,"volume":{"bars":283,"last_bar_volume":42625.0,"baseline_avg":26425.85,"bar_rvol":1.613004,"raw_accel":5.452016,"smooth_accel":-0.08517,"accel_momentum":0.256744,"rvol_3bar":[0.497937,0.164664,1.613004],"trend_3bar":"MIXED","projected_rvol":0.368041},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1497.0,"sell_vol":3084.0,"unclassified_vol":0.0,"imbalance":-0.346431,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.09076},"context":{"vwap":6.380822,"price_vs_vwap_pct":1.554315,"ema9":6.491579,"ema20":6.490969,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.413489,"atr":0.01243,"spread_atr":0.804496,"own_change_pct":-0.230947,"rel_strength_pct":{"SPY":-0.218662,"IWM":-0.239692}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.558794},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4c6cd3da043e","ts":"2026-09-21T18:13:58.415777+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7885,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.458,"trend":"flat","recent_slope_pct":-0.0058,"volatility":"unknown"},"price":8.845,"volume":{"bars":283,"last_bar_volume":105103.0,"baseline_avg":37519.1,"bar_rvol":2.80132,"raw_accel":2.770105,"smooth_accel":-0.120256,"accel_momentum":0.594768,"rvol_3bar":[0.514654,0.750636,2.80132],"trend_3bar":"ACCELERATING","projected_rvol":2.814354},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":31555.0,"sell_vol":6835.0,"unclassified_vol":0.0,"imbalance":0.643918,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.031516},"context":{"vwap":8.788299,"price_vs_vwap_pct":0.64519,"ema9":8.832523,"ema20":8.824724,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":3.655831,"atr":0.025986,"spread_atr":0.384824,"own_change_pct":-0.226116,"rel_strength_pct":{"SPY":-0.213831,"IWM":-0.234861}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.803819},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"60e993c4232d","ts":"2026-09-21T18:14:08.868513+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0647,"target":12.34,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":67.9,"room_to_5d_high_atr":0.51},"price":12.24,"vwap":12.1817,"ext_from_open_pct":-0.49,"max_ext_allowed_pct":4.0,"volume_pace":0.6,"trend":"flat","recent_slope_pct":-0.0096,"volatility":"medium"},"price":12.24,"volume":{"bars":284,"last_bar_volume":2424.0,"baseline_avg":5734.0,"bar_rvol":0.422742,"raw_accel":-0.507217,"smooth_accel":0.780037,"accel_momentum":0.646225,"rvol_3bar":[0.728815,0.88629,0.422742],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":1791.0,"sell_vol":81.0,"unclassified_vol":0.0,"imbalance":0.913462,"bid":12.23,"ask":12.24,"spread_pct":0.081733,"quote_size_imbalance":null,"quote_age_s":2.106838},"context":{"vwap":12.18172,"price_vs_vwap_pct":0.478421,"ema9":12.239612,"ema20":12.238505,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.001601,"dist_to_hod_atr":12.023153,"atr":0.020793,"spread_atr":0.480926,"own_change_pct":-0.080001,"rel_strength_pct":{"SPY":-0.070949,"IWM":-0.10099}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.386158},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ea19d760a3b3","ts":"2026-09-21T18:14:19.669448+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6891,"target":8.82,"target_label":"prev_day_high","reward_risk":0.2,"pos_in_5d_range_pct":84.0,"room_to_5d_high_atr":0.27},"price":8.798,"vwap":8.7076,"ext_from_open_pct":0.89,"max_ext_allowed_pct":3.0,"volume_pace":0.55,"trend":"flat","recent_slope_pct":-0.0044,"volatility":"medium"},"price":8.798,"volume":{"bars":284,"last_bar_volume":3028.0,"baseline_avg":7949.7,"bar_rvol":0.380895,"raw_accel":-0.13683,"smooth_accel":-0.589108,"accel_momentum":0.06803,"rvol_3bar":[0.101048,0.438174,0.380895],"trend_3bar":"MIXED","projected_rvol":1.460802},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":980.0,"sell_vol":3684.0,"unclassified_vol":0.0,"imbalance":-0.57976,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":5.229552},"context":{"vwap":8.70752,"price_vs_vwap_pct":1.039104,"ema9":8.800258,"ema20":8.804828,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.042726,"dist_to_hod_atr":12.37102,"atr":0.022318,"spread_atr":0.448063,"own_change_pct":-0.113602,"rel_strength_pct":{"SPY":-0.104549,"IWM":-0.13459}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.220828},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8b4a37a88dc5","ts":"2026-09-21T18:14:24.947353+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4804,"target":6.94,"target_label":"ceiling","reward_risk":1.81,"pos_in_5d_range_pct":112.7,"room_to_5d_high_atr":-0.34},"price":6.6437,"vwap":6.5896,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":0.0114,"volatility":"high"},"price":6.6437,"volume":{"bars":282,"last_bar_volume":207.0,"baseline_avg":2383.1,"bar_rvol":0.086862,"raw_accel":-0.652553,"smooth_accel":-0.288892,"accel_momentum":-0.212244,"rvol_3bar":[2.311731,0.156328,0.086862],"trend_3bar":"DECELERATING","projected_rvol":0.839668},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":210.0,"sell_vol":622.0,"unclassified_vol":0.0,"imbalance":-0.495192,"bid":6.64,"ask":6.66,"spread_pct":0.300752,"quote_size_imbalance":null,"quote_age_s":0.505701},"context":{"vwap":6.589608,"price_vs_vwap_pct":0.820862,"ema9":6.634606,"ema20":6.622375,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.269452,"dist_to_hod_atr":12.524478,"atr":0.023658,"spread_atr":0.845392,"own_change_pct":0.01506,"rel_strength_pct":{"SPY":0.024112,"IWM":-0.005928}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.043013},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"104f3f91aecc","ts":"2026-09-21T18:14:30.262851+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4767,"target":6.94,"target_label":"ceiling","reward_risk":1.84,"pos_in_5d_range_pct":112.5,"room_to_5d_high_atr":-0.34},"price":6.64,"vwap":6.5896,"ext_from_open_pct":3.91,"max_ext_allowed_pct":3.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":0.0003,"volatility":"high"},"price":6.64,"volume":{"bars":282,"last_bar_volume":207.0,"baseline_avg":2383.1,"bar_rvol":0.086862,"raw_accel":-0.652553,"smooth_accel":-0.288892,"accel_momentum":-0.212244,"rvol_3bar":[2.311731,0.156328,0.086862],"trend_3bar":"DECELERATING","projected_rvol":1.066565},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":460.0,"sell_vol":822.0,"unclassified_vol":0.0,"imbalance":-0.282371,"bid":6.63,"ask":6.66,"spread_pct":0.451467,"quote_size_imbalance":null,"quote_age_s":0.508978},"context":{"vwap":6.589608,"price_vs_vwap_pct":0.764713,"ema9":6.634606,"ema20":6.622375,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.322767,"dist_to_hod_atr":12.680876,"atr":0.023658,"spread_atr":1.268088,"own_change_pct":0.01506,"rel_strength_pct":{"SPY":0.024112,"IWM":-0.005928}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.024527},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"5ffcd558d651","ts":"2026-09-21T18:14:35.608677+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7886,"ext_from_open_pct":3.81,"max_ext_allowed_pct":3.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":0.0224,"volatility":"unknown"},"price":8.845,"volume":{"bars":284,"last_bar_volume":102804.0,"baseline_avg":39710.7,"bar_rvol":2.588824,"raw_accel":-0.021874,"smooth_accel":1.057281,"accel_momentum":1.177537,"rvol_3bar":[0.750636,2.80132,2.588824],"trend_3bar":"MIXED","projected_rvol":0.769706},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":2313.0,"sell_vol":499.0,"unclassified_vol":0.0,"imbalance":0.645092,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":3.902548},"context":{"vwap":8.788536,"price_vs_vwap_pct":0.642469,"ema9":8.835018,"ema20":8.826655,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":3.679965,"atr":0.025815,"spread_atr":0.387365,"own_change_pct":-0.056497,"rel_strength_pct":{"SPY":-0.047445,"IWM":-0.077486}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.670031},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3853abdc4934","ts":"2026-09-21T18:14:40.794868+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.75,"target":8.91,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.84,"vwap":8.7886,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":0.0111,"volatility":"unknown"},"price":8.84,"volume":{"bars":284,"last_bar_volume":102804.0,"baseline_avg":39710.7,"bar_rvol":2.588824,"raw_accel":-0.021874,"smooth_accel":1.057281,"accel_momentum":1.177537,"rvol_3bar":[0.750636,2.80132,2.588824],"trend_3bar":"MIXED","projected_rvol":1.59997},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":21915.0,"sell_vol":5884.0,"unclassified_vol":0.0,"imbalance":0.576675,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":1.505642},"context":{"vwap":8.788536,"price_vs_vwap_pct":0.585577,"ema9":8.835018,"ema20":8.826655,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.118568,"dist_to_hod_atr":3.873647,"atr":0.025815,"spread_atr":0.387365,"own_change_pct":-0.056497,"rel_strength_pct":{"SPY":-0.047445,"IWM":-0.077486}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.492911},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f118e6556e7f","ts":"2026-09-21T18:15:06.883108+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6873,"target":8.82,"target_label":"prev_day_high","reward_risk":0.22,"pos_in_5d_range_pct":83.7,"room_to_5d_high_atr":0.27},"price":8.7962,"vwap":8.7076,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":0.549,"trend":"flat","recent_slope_pct":0.0084,"volatility":"medium"},"price":8.7962,"volume":{"bars":285,"last_bar_volume":4895.0,"baseline_avg":7959.1,"bar_rvol":0.615019,"raw_accel":0.616579,"smooth_accel":-0.127937,"accel_momentum":0.461171,"rvol_3bar":[0.438174,0.380895,0.615019],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":127.0,"sell_vol":1272.0,"unclassified_vol":0.0,"imbalance":-0.818442,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":18.636449},"context":{"vwap":8.70762,"price_vs_vwap_pct":1.017274,"ema9":8.799207,"ema20":8.803892,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.062563,"dist_to_hod_atr":12.609802,"atr":0.022038,"spread_atr":0.453753,"own_change_pct":-0.161195,"rel_strength_pct":{"SPY":-0.172835,"IWM":-0.18918}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.503357},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b12cd3f1add0","ts":"2026-09-21T18:15:22.481670+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.91,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7887,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":0.0113,"volatility":"unknown"},"price":8.835,"volume":{"bars":285,"last_bar_volume":62034.0,"baseline_avg":44495.15,"bar_rvol":1.394174,"raw_accel":-0.39658,"smooth_accel":4.092458,"accel_momentum":3.035177,"rvol_3bar":[2.80132,2.588824,1.394174],"trend_3bar":"DECELERATING","projected_rvol":0.689116},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":14146.0,"sell_vol":1953.0,"unclassified_vol":0.0,"imbalance":0.757376,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.006309},"context":{"vwap":8.78868,"price_vs_vwap_pct":0.52704,"ema9":8.835015,"ema20":8.82745,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":4.133846,"atr":0.0254,"spread_atr":0.3937,"own_change_pct":-0.056561,"rel_strength_pct":{"SPY":-0.068201,"IWM":-0.084546}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.055915},"shadow":{"decision":"FAIL","failed":["rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"63497d1d843b","ts":"2026-09-21T18:15:53.831368+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7483,"target":8.91,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8367,"vwap":8.7888,"ext_from_open_pct":3.72,"max_ext_allowed_pct":4.0,"volume_pace":0.457,"trend":"flat","recent_slope_pct":0.0152,"volatility":"unknown"},"price":8.8367,"volume":{"bars":285,"last_bar_volume":62034.0,"baseline_avg":44495.15,"bar_rvol":1.394174,"raw_accel":-0.39658,"smooth_accel":4.092458,"accel_momentum":3.035177,"rvol_3bar":[2.80132,2.588824,1.394174],"trend_3bar":"DECELERATING","projected_rvol":0.955197},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":13243.0,"sell_vol":13255.0,"unclassified_vol":0.0,"imbalance":-0.000453,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.261319},"context":{"vwap":8.78868,"price_vs_vwap_pct":0.546383,"ema9":8.835015,"ema20":8.82745,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.155481,"dist_to_hod_atr":4.066917,"atr":0.0254,"spread_atr":0.3937,"own_change_pct":-0.056561,"rel_strength_pct":{"SPY":-0.068201,"IWM":-0.084546}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.000631},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7d5bdcb1fc09","ts":"2026-09-21T18:16:09.579830+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.8011,"target":12.1506,"target_label":"clear air (typical 60-min move)","reward_risk":0.71,"pos_in_5d_range_pct":125.7,"room_to_5d_high_atr":-1.14},"price":12.0056,"vwap":11.6461,"ext_from_open_pct":2.88,"max_ext_allowed_pct":3.0,"volume_pace":0.206,"trend":"flat","recent_slope_pct":0.026,"volatility":"high"},"price":12.0056,"volume":{"bars":286,"last_bar_volume":1752.0,"baseline_avg":9240.7,"bar_rvol":0.189596,"raw_accel":-0.725607,"smooth_accel":-0.504423,"accel_momentum":0.224716,"rvol_3bar":[0.19868,0.703298,0.189596],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":20.0,"sell_vol":234.0,"unclassified_vol":0.0,"imbalance":-0.84252,"bid":11.95,"ask":11.97,"spread_pct":0.167224,"quote_size_imbalance":null,"quote_age_s":0.567762},"context":{"vwap":11.646044,"price_vs_vwap_pct":3.087366,"ema9":11.972583,"ema20":11.954521,"ema_stack":true,"ema_warm":true,"hod":12.05,"dist_to_hod_pct":-0.368465,"dist_to_hod_atr":1.071337,"atr":0.041444,"spread_atr":0.482584,"own_change_pct":0.083682,"rel_strength_pct":{"SPY":0.054581,"IWM":0.050454}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.159738},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"04066b79e1b6","ts":"2026-09-21T18:16:14.845108+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.91,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7888,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":0.0093,"volatility":"unknown"},"price":8.835,"volume":{"bars":286,"last_bar_volume":38257.0,"baseline_avg":45792.9,"bar_rvol":0.835435,"raw_accel":-0.38329,"smooth_accel":0.321622,"accel_momentum":-3.770836,"rvol_3bar":[2.588824,1.394174,0.835435],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":10193.0,"sell_vol":9947.0,"unclassified_vol":0.0,"imbalance":0.012214,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.634841},"context":{"vwap":8.788762,"price_vs_vwap_pct":0.526107,"ema9":8.834652,"ema20":8.827998,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":4.313368,"atr":0.024343,"spread_atr":0.410797,"own_change_pct":-0.078053,"rel_strength_pct":{"SPY":-0.107155,"IWM":-0.111281}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.010204},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"d23deb4e37c6","ts":"2026-09-21T18:16:20.098287+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.7655,"target":12.0,"target_label":"premarket_high","reward_risk":0.15,"pos_in_5d_range_pct":124.7,"room_to_5d_high_atr":-1.1},"price":11.97,"vwap":11.6461,"ext_from_open_pct":2.57,"max_ext_allowed_pct":3.0,"volume_pace":0.206,"trend":"flat","recent_slope_pct":-0.0334,"volatility":"high"},"price":11.97,"volume":{"bars":286,"last_bar_volume":1752.0,"baseline_avg":9240.7,"bar_rvol":0.189596,"raw_accel":-0.725607,"smooth_accel":-0.504423,"accel_momentum":0.224716,"rvol_3bar":[0.19868,0.703298,0.189596],"trend_3bar":"MIXED","projected_rvol":0.104026},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":63.0,"sell_vol":259.0,"unclassified_vol":0.0,"imbalance":-0.608696,"bid":11.95,"ask":11.97,"spread_pct":0.167224,"quote_size_imbalance":null,"quote_age_s":1.179259},"context":{"vwap":11.646044,"price_vs_vwap_pct":2.781683,"ema9":11.972583,"ema20":11.954521,"ema_stack":false,"ema_warm":true,"hod":12.05,"dist_to_hod_pct":-0.6639,"dist_to_hod_atr":1.930337,"atr":0.041444,"spread_atr":0.482584,"own_change_pct":0.083682,"rel_strength_pct":{"SPY":0.054581,"IWM":0.050454}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.115406},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2827829da06f","ts":"2026-09-21T18:16:25.292320+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.802,"target":12.1515,"target_label":"clear air (typical 60-min move)","reward_risk":0.71,"pos_in_5d_range_pct":125.7,"room_to_5d_high_atr":-1.15},"price":12.0065,"vwap":11.6461,"ext_from_open_pct":2.88,"max_ext_allowed_pct":3.0,"volume_pace":0.206,"trend":"flat","recent_slope_pct":0.0275,"volatility":"high"},"price":12.0065,"volume":{"bars":286,"last_bar_volume":1752.0,"baseline_avg":9240.7,"bar_rvol":0.189596,"raw_accel":-0.725607,"smooth_accel":-0.504423,"accel_momentum":0.224716,"rvol_3bar":[0.19868,0.703298,0.189596],"trend_3bar":"MIXED","projected_rvol":0.085487},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":74.0,"sell_vol":259.0,"unclassified_vol":0.0,"imbalance":-0.555556,"bid":11.95,"ask":11.97,"spread_pct":0.167224,"quote_size_imbalance":null,"quote_age_s":0.884753},"context":{"vwap":11.646044,"price_vs_vwap_pct":3.095094,"ema9":11.972583,"ema20":11.954521,"ema_stack":true,"ema_warm":true,"hod":12.05,"dist_to_hod_pct":-0.360996,"dist_to_hod_atr":1.049621,"atr":0.041444,"spread_atr":0.482584,"own_change_pct":0.083682,"rel_strength_pct":{"SPY":0.054581,"IWM":0.050454}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.105331},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8d33c43fb8d8","ts":"2026-09-21T18:16:30.450275+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.7555,"target":12.0,"target_label":"premarket_high","reward_risk":0.2,"pos_in_5d_range_pct":124.5,"room_to_5d_high_atr":-1.09},"price":11.96,"vwap":11.6461,"ext_from_open_pct":2.49,"max_ext_allowed_pct":3.0,"volume_pace":0.206,"trend":"flat","recent_slope_pct":-0.0501,"volatility":"high"},"price":11.96,"volume":{"bars":286,"last_bar_volume":1752.0,"baseline_avg":9240.7,"bar_rvol":0.189596,"raw_accel":-0.725607,"smooth_accel":-0.504423,"accel_momentum":0.224716,"rvol_3bar":[0.19868,0.703298,0.189596],"trend_3bar":"MIXED","projected_rvol":0.09233},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":92.0,"sell_vol":341.0,"unclassified_vol":0.0,"imbalance":-0.575058,"bid":11.95,"ask":11.97,"spread_pct":0.167224,"quote_size_imbalance":null,"quote_age_s":0.442374},"context":{"vwap":11.646044,"price_vs_vwap_pct":2.695817,"ema9":11.972583,"ema20":11.954521,"ema_stack":false,"ema_warm":true,"hod":12.05,"dist_to_hod_pct":-0.746888,"dist_to_hod_atr":2.171629,"atr":0.041444,"spread_atr":0.482584,"own_change_pct":0.083682,"rel_strength_pct":{"SPY":0.054581,"IWM":0.050454}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.109029},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bdc2d5335d79","ts":"2026-09-21T18:16:30.450275+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6811,"target":8.82,"target_label":"prev_day_high","reward_risk":0.28,"pos_in_5d_range_pct":82.9,"room_to_5d_high_atr":0.29},"price":8.79,"vwap":8.7078,"ext_from_open_pct":0.8,"max_ext_allowed_pct":3.0,"volume_pace":0.547,"trend":"flat","recent_slope_pct":0.0009,"volatility":"medium"},"price":8.79,"volume":{"bars":286,"last_bar_volume":3907.0,"baseline_avg":8122.0,"bar_rvol":0.481039,"raw_accel":-0.201839,"smooth_accel":0.780286,"accel_momentum":0.908223,"rvol_3bar":[0.380895,0.615019,0.481039],"trend_3bar":"MIXED","projected_rvol":1.762757},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":1512.0,"sell_vol":5754.0,"unclassified_vol":0.0,"imbalance":-0.583815,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":0.405757},"context":{"vwap":8.707698,"price_vs_vwap_pct":0.945162,"ema9":8.798065,"ema20":8.802903,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.130889,"dist_to_hod_atr":13.126761,"atr":0.021643,"spread_atr":0.462047,"own_change_pct":-0.060235,"rel_strength_pct":{"SPY":-0.089337,"IWM":-0.093463}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.280838},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"737f9918f8a3","ts":"2026-09-21T18:17:06.969732+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6814,"target":8.82,"target_label":"prev_day_high","reward_risk":0.27,"pos_in_5d_range_pct":82.9,"room_to_5d_high_atr":0.29},"price":8.7903,"vwap":8.7079,"ext_from_open_pct":0.81,"max_ext_allowed_pct":4.0,"volume_pace":0.546,"trend":"flat","recent_slope_pct":-0.0018,"volatility":"medium"},"price":8.7903,"volume":{"bars":287,"last_bar_volume":7562.0,"baseline_avg":7771.6,"bar_rvol":0.97303,"raw_accel":0.9355,"smooth_accel":1.222162,"accel_momentum":0.441876,"rvol_3bar":[0.615019,0.481039,0.97303],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":31.0,"sell_vol":479.0,"unclassified_vol":0.0,"imbalance":-0.878431,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":1.618268},"context":{"vwap":8.707848,"price_vs_vwap_pct":0.946865,"ema9":8.798092,"ema20":8.802455,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.127583,"dist_to_hod_atr":13.206295,"atr":0.02149,"spread_atr":0.465338,"own_change_pct":0.036384,"rel_strength_pct":{"SPY":0.037678,"IWM":0.024145}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.85474},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c0f4bc329f94","ts":"2026-09-21T18:17:43.576843+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6712,"target":8.82,"target_label":"prev_day_high","reward_risk":0.37,"pos_in_5d_range_pct":81.5,"room_to_5d_high_atr":0.31},"price":8.7801,"vwap":8.7079,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.545,"trend":"flat","recent_slope_pct":-0.025,"volatility":"medium"},"price":8.7801,"volume":{"bars":287,"last_bar_volume":7562.0,"baseline_avg":7771.6,"bar_rvol":0.97303,"raw_accel":0.9355,"smooth_accel":1.222162,"accel_momentum":0.441876,"rvol_3bar":[0.615019,0.481039,0.97303],"trend_3bar":"MIXED","projected_rvol":0.109667},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":70.0,"sell_vol":306.0,"unclassified_vol":0.0,"imbalance":-0.62766,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":1.203939},"context":{"vwap":8.707848,"price_vs_vwap_pct":0.829729,"ema9":8.798092,"ema20":8.802455,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.239991,"dist_to_hod_atr":13.68094,"atr":0.02149,"spread_atr":0.465338,"own_change_pct":0.036384,"rel_strength_pct":{"SPY":0.037678,"IWM":0.024145}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.610732},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aee066003598","ts":"2026-09-21T18:17:59.034763+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.91,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.789,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":-0.0267,"volatility":"unknown"},"price":8.835,"volume":{"bars":287,"last_bar_volume":42564.0,"baseline_avg":45376.05,"bar_rvol":0.938028,"raw_accel":0.112581,"smooth_accel":-0.39413,"accel_momentum":-0.715752,"rvol_3bar":[1.394174,0.835435,0.938028],"trend_3bar":"MIXED","projected_rvol":1.137121},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":16587.0,"sell_vol":28103.0,"unclassified_vol":0.0,"imbalance":-0.257686,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":3.121863},"context":{"vwap":8.788851,"price_vs_vwap_pct":0.52509,"ema9":8.834001,"ema20":8.828322,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":4.502876,"atr":0.023318,"spread_atr":0.428845,"own_change_pct":-0.040747,"rel_strength_pct":{"SPY":-0.039454,"IWM":-0.052986}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.241717},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"80b6d4e121a7","ts":"2026-09-21T18:18:14.553207+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7517,"target":8.91,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8401,"vwap":8.789,"ext_from_open_pct":3.76,"max_ext_allowed_pct":3.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":0.0192,"volatility":"unknown"},"price":8.8401,"volume":{"bars":288,"last_bar_volume":50769.0,"baseline_avg":46456.8,"bar_rvol":1.092822,"raw_accel":0.192769,"smooth_accel":-0.512523,"accel_momentum":-0.118393,"rvol_3bar":[0.835435,0.938028,1.092822],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":20998.0,"sell_vol":11854.0,"unclassified_vol":0.0,"imbalance":0.278339,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.263283},"context":{"vwap":8.788967,"price_vs_vwap_pct":0.581788,"ema9":8.835201,"ema20":8.829434,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.11745,"dist_to_hod_atr":4.396183,"atr":0.022724,"spread_atr":0.440058,"own_change_pct":0.169972,"rel_strength_pct":{"SPY":0.159625,"IWM":0.134996}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.304175},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1d9c9161688f","ts":"2026-09-21T18:18:35.411222+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.37,"target":12.0486,"target_label":"premarket_high","reward_risk":3.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.51,"vwap":11.3228,"ext_from_open_pct":-0.78,"max_ext_allowed_pct":3.0,"volume_pace":0.445,"trend":"flat","recent_slope_pct":0.1135,"volatility":"unknown"},"price":11.51,"volume":{"bars":262,"last_bar_volume":111.0,"baseline_avg":72.05,"bar_rvol":1.540597,"raw_accel":4.045455,"smooth_accel":-0.140704,"accel_momentum":0.621041,"rvol_3bar":[0.298977,0.206186,1.540597],"trend_3bar":"MIXED","projected_rvol":45.904595},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1541.0,"sell_vol":403.0,"unclassified_vol":0.0,"imbalance":0.585391,"bid":11.46,"ask":11.53,"spread_pct":0.60896,"quote_size_imbalance":null,"quote_age_s":0.864382},"context":{"vwap":11.320776,"price_vs_vwap_pct":1.671475,"ema9":11.448023,"ema20":11.440137,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-3.682008,"dist_to_hod_atr":9.155541,"atr":0.048058,"spread_atr":1.456563,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.010347,"IWM":-0.034976}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.901851},"shadow":{"decision":"FAIL","failed":["spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"57c0c487505a","ts":"2026-09-21T18:18:40.615435+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.946,"target":8.16,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.1,"vwap":8.0795,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.449,"trend":"flat","recent_slope_pct":0.0893,"volatility":"high"},"price":8.1,"volume":{"bars":288,"last_bar_volume":461.0,"baseline_avg":1592.35,"bar_rvol":0.289509,"raw_accel":-0.567542,"smooth_accel":-0.186745,"accel_momentum":-0.430859,"rvol_3bar":[0.522578,0.597735,0.289509],"trend_3bar":"MIXED","projected_rvol":2.13749},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":1749.0,"sell_vol":424.0,"unclassified_vol":0.0,"imbalance":0.609756,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":0.882086},"context":{"vwap":8.079542,"price_vs_vwap_pct":0.253206,"ema9":8.063705,"ema20":8.058668,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.327445,"dist_to_hod_atr":14.724038,"atr":0.018935,"spread_atr":0.528122,"own_change_pct":0.247052,"rel_strength_pct":{"SPY":0.236705,"IWM":0.212075}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.17653},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8620045e0214","ts":"2026-09-21T18:18:40.615435+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.91,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7891,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":0.0303,"volatility":"unknown"},"price":8.845,"volume":{"bars":288,"last_bar_volume":50769.0,"baseline_avg":46456.8,"bar_rvol":1.092822,"raw_accel":0.192769,"smooth_accel":-0.512523,"accel_momentum":-0.118393,"rvol_3bar":[0.835435,0.938028,1.092822],"trend_3bar":"ACCELERATING","projected_rvol":1.79517},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":19435.0,"sell_vol":15169.0,"unclassified_vol":0.0,"imbalance":0.123281,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.322385},"context":{"vwap":8.788967,"price_vs_vwap_pct":0.63754,"ema9":8.835201,"ema20":8.829434,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":4.180555,"atr":0.022724,"spread_atr":0.440058,"own_change_pct":0.169972,"rel_strength_pct":{"SPY":0.159625,"IWM":0.134996}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.134724},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"836df4dbee34","ts":"2026-09-21T18:19:06.659417+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6911,"target":8.82,"target_label":"prev_day_high","reward_risk":0.18,"pos_in_5d_range_pct":84.2,"room_to_5d_high_atr":0.26},"price":8.8,"vwap":8.708,"ext_from_open_pct":0.92,"max_ext_allowed_pct":4.0,"volume_pace":0.544,"trend":"flat","recent_slope_pct":0.0111,"volatility":"medium"},"price":8.8,"volume":{"bars":289,"last_bar_volume":4384.0,"baseline_avg":5923.3,"bar_rvol":0.740128,"raw_accel":-0.236769,"smooth_accel":0.495351,"accel_momentum":-0.010467,"rvol_3bar":[0.97303,0.837324,0.740128],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":2100.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":0.973684,"bid":8.79,"ask":8.8,"spread_pct":0.113701,"quote_size_imbalance":null,"quote_age_s":0.761594},"context":{"vwap":8.708039,"price_vs_vwap_pct":1.056044,"ema9":8.796131,"ema20":8.800646,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.020685,"dist_to_hod_atr":13.393171,"atr":0.020466,"spread_atr":0.488624,"own_change_pct":0.026158,"rel_strength_pct":{"SPY":0.005465,"IWM":-0.008816}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.720651},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"099adfd9f436","ts":"2026-09-21T18:19:11.954540+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.0464,"target":5.1483,"target_label":"premarket_high","reward_risk":0.18,"pos_in_5d_range_pct":66.6,"room_to_5d_high_atr":0.65},"price":5.1331,"vwap":5.1089,"ext_from_open_pct":-0.91,"max_ext_allowed_pct":3.0,"volume_pace":0.211,"trend":"flat","recent_slope_pct":-0.009,"volatility":"high"},"price":5.1331,"volume":{"bars":289,"last_bar_volume":18345.0,"baseline_avg":10125.05,"bar_rvol":1.811843,"raw_accel":2.883362,"smooth_accel":0.596047,"accel_momentum":-0.168794,"rvol_3bar":[0.318599,0.467299,1.811843],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":3789.0,"sell_vol":12059.0,"unclassified_vol":0.0,"imbalance":-0.521832,"bid":5.13,"ask":5.14,"spread_pct":0.194742,"quote_size_imbalance":null,"quote_age_s":12.840651},"context":{"vwap":5.108854,"price_vs_vwap_pct":0.474595,"ema9":5.133048,"ema20":5.130489,"ema_stack":true,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.476008,"dist_to_hod_atr":6.301415,"atr":0.012204,"spread_atr":0.81943,"own_change_pct":0.079925,"rel_strength_pct":{"SPY":0.059232,"IWM":0.044952}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.945478},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dc7334865f0e","ts":"2026-09-21T18:19:11.954540+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.9449,"target":8.16,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.0989,"vwap":8.0796,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.449,"trend":"flat","recent_slope_pct":0.078,"volatility":"high"},"price":8.0989,"volume":{"bars":289,"last_bar_volume":2310.0,"baseline_avg":1599.25,"bar_rvol":1.444427,"raw_accel":4.010846,"smooth_accel":0.023746,"accel_momentum":0.210491,"rvol_3bar":[0.597735,0.289509,1.444427],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":3508.0,"sell_vol":2223.0,"unclassified_vol":0.0,"imbalance":0.224219,"bid":8.12,"ask":8.13,"spread_pct":0.123077,"quote_size_imbalance":null,"quote_age_s":0.378824},"context":{"vwap":8.079544,"price_vs_vwap_pct":0.239573,"ema9":8.067704,"ema20":8.061052,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.340574,"dist_to_hod_atr":13.651028,"atr":0.020504,"spread_atr":0.487711,"own_change_pct":0.44234,"rel_strength_pct":{"SPY":0.421648,"IWM":0.407367}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.323868},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"af2c427a2992","ts":"2026-09-21T18:19:17.240810+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.3s / 18s","plan":{"state":"PASS","setup":"","stop":7.971,"target":8.45,"target_label":"premarket_high","reward_risk":2.11,"pos_in_5d_range_pct":121.6,"room_to_5d_high_atr":-0.68},"price":8.125,"vwap":8.0796,"ext_from_open_pct":-0.79,"max_ext_allowed_pct":3.0,"volume_pace":0.449,"trend":"flat","recent_slope_pct":0.1425,"volatility":"high"},"price":8.125,"volume":{"bars":289,"last_bar_volume":2310.0,"baseline_avg":1599.25,"bar_rvol":1.444427,"raw_accel":4.010846,"smooth_accel":0.023746,"accel_momentum":0.210491,"rvol_3bar":[0.597735,0.289509,1.444427],"trend_3bar":"MIXED","projected_rvol":13.889994},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":4160.0,"sell_vol":2226.0,"unclassified_vol":0.0,"imbalance":0.30285,"bid":8.12,"ask":8.13,"spread_pct":0.123077,"quote_size_imbalance":null,"quote_age_s":1.697837},"context":{"vwap":8.079544,"price_vs_vwap_pct":0.562611,"ema9":8.067704,"ema20":8.061052,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.029073,"dist_to_hod_atr":12.378103,"atr":0.020504,"spread_atr":0.487711,"own_change_pct":0.44234,"rel_strength_pct":{"SPY":0.421648,"IWM":0.407367}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.437445},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9f25b46841c1","ts":"2026-09-21T18:19:22.492285+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.5s / 18s","plan":{"state":"WATCH","setup":"","stop":7.9326,"target":8.16,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":119.6,"room_to_5d_high_atr":-0.62},"price":8.0866,"vwap":8.0796,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":3.0,"volume_pace":0.449,"trend":"flat","recent_slope_pct":0.0475,"volatility":"high"},"price":8.0866,"volume":{"bars":289,"last_bar_volume":2310.0,"baseline_avg":1599.25,"bar_rvol":1.444427,"raw_accel":4.010846,"smooth_accel":0.023746,"accel_momentum":0.210491,"rvol_3bar":[0.597735,0.289509,1.444427],"trend_3bar":"MIXED","projected_rvol":12.256613},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":4597.0,"sell_vol":2754.0,"unclassified_vol":0.0,"imbalance":0.250714,"bid":8.11,"ask":8.12,"spread_pct":0.123229,"quote_size_imbalance":null,"quote_age_s":2.833866},"context":{"vwap":8.079544,"price_vs_vwap_pct":0.087337,"ema9":8.067704,"ema20":8.061052,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.487373,"dist_to_hod_atr":14.250912,"atr":0.020504,"spread_atr":0.487711,"own_change_pct":0.44234,"rel_strength_pct":{"SPY":0.421648,"IWM":0.407367}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.362138},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e4acf603a51a","ts":"2026-09-21T18:19:43.662682+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.91,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7892,"ext_from_open_pct":3.81,"max_ext_allowed_pct":3.0,"volume_pace":0.454,"trend":"flat","recent_slope_pct":0.0347,"volatility":"unknown"},"price":8.845,"volume":{"bars":289,"last_bar_volume":70652.0,"baseline_avg":48143.7,"bar_rvol":1.467523,"raw_accel":0.391637,"smooth_accel":-0.19257,"accel_momentum":0.319953,"rvol_3bar":[0.938028,1.092822,1.467523],"trend_3bar":"ACCELERATING","projected_rvol":0.639994},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":11613.0,"sell_vol":3187.0,"unclassified_vol":0.0,"imbalance":0.569324,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.854656},"context":{"vwap":8.789135,"price_vs_vwap_pct":0.63561,"ema9":8.835861,"ema20":8.830297,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":4.265345,"atr":0.022273,"spread_atr":0.448984,"own_change_pct":-0.073488,"rel_strength_pct":{"SPY":-0.094181,"IWM":-0.108461}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.835497},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6168e6e3831e","ts":"2026-09-21T18:19:59.606945+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7694,"target":8.91,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.858,"vwap":8.7893,"ext_from_open_pct":3.97,"max_ext_allowed_pct":3.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":0.0641,"volatility":"unknown"},"price":8.858,"volume":{"bars":289,"last_bar_volume":70652.0,"baseline_avg":48143.7,"bar_rvol":1.467523,"raw_accel":0.391637,"smooth_accel":-0.19257,"accel_momentum":0.319953,"rvol_3bar":[0.938028,1.092822,1.467523],"trend_3bar":"ACCELERATING","projected_rvol":0.994745},"flow":{"window_s":30,"trades":109,"trade_rate":3.633333,"buy_vol":14660.0,"sell_vol":13078.0,"unclassified_vol":0.0,"imbalance":0.057034,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.077214},"context":{"vwap":8.789135,"price_vs_vwap_pct":0.78352,"ema9":8.835861,"ema20":8.830297,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.917226,"dist_to_hod_atr":3.681666,"atr":0.022273,"spread_atr":0.448984,"own_change_pct":-0.073488,"rel_strength_pct":{"SPY":-0.094181,"IWM":-0.108461}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.083698},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f1f3ddf07442","ts":"2026-09-21T18:20:04.809410+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7712,"target":9.21,"target_label":"prev_day_high","reward_risk":3.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8598,"vwap":8.7894,"ext_from_open_pct":3.99,"max_ext_allowed_pct":3.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":0.0812,"volatility":"unknown"},"price":8.8598,"volume":{"bars":290,"last_bar_volume":47836.0,"baseline_avg":51156.25,"bar_rvol":0.935096,"raw_accel":-0.322935,"smooth_accel":0.184817,"accel_momentum":0.377387,"rvol_3bar":[1.092822,1.467523,0.935096],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":32087.0,"sell_vol":23086.0,"unclassified_vol":0.0,"imbalance":0.163141,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.340119},"context":{"vwap":8.78927,"price_vs_vwap_pct":0.802458,"ema9":8.839689,"ema20":8.83265,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.897092,"dist_to_hod_atr":3.576447,"atr":0.022424,"spread_atr":0.445941,"own_change_pct":0.226372,"rel_strength_pct":{"SPY":0.218613,"IWM":0.18091}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.152553},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4038c95e057a","ts":"2026-09-21T18:20:15.269391+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.7905,"target":12.14,"target_label":"clear air (typical 60-min move)","reward_risk":0.71,"pos_in_5d_range_pct":125.4,"room_to_5d_high_atr":-1.13},"price":11.995,"vwap":11.6522,"ext_from_open_pct":2.78,"max_ext_allowed_pct":4.0,"volume_pace":0.207,"trend":"flat","recent_slope_pct":0.0668,"volatility":"high"},"price":11.995,"volume":{"bars":290,"last_bar_volume":707.0,"baseline_avg":10488.6,"bar_rvol":0.067407,"raw_accel":-0.977259,"smooth_accel":2.756143,"accel_momentum":-0.520003,"rvol_3bar":[0.998874,3.377899,0.067407],"trend_3bar":"MIXED","projected_rvol":7.032333},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":18068.0,"sell_vol":861.0,"unclassified_vol":0.0,"imbalance":0.909028,"bid":11.99,"ask":12.0,"spread_pct":0.083368,"quote_size_imbalance":null,"quote_age_s":3.578943},"context":{"vwap":11.650308,"price_vs_vwap_pct":2.958656,"ema9":11.967154,"ema20":11.957281,"ema_stack":true,"ema_warm":true,"hod":12.05,"dist_to_hod_pct":-0.456432,"dist_to_hod_atr":1.344963,"atr":0.040893,"spread_atr":0.244539,"own_change_pct":-0.083472,"rel_strength_pct":{"SPY":-0.091232,"IWM":-0.128935}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.061274},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"06a65b2d0325","ts":"2026-09-21T18:20:15.269391+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7562,"target":8.91,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8446,"vwap":8.7894,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":0.0468,"volatility":"unknown"},"price":8.8446,"volume":{"bars":290,"last_bar_volume":47836.0,"baseline_avg":51156.25,"bar_rvol":0.935096,"raw_accel":-0.322935,"smooth_accel":0.184817,"accel_momentum":0.377387,"rvol_3bar":[1.092822,1.467523,0.935096],"trend_3bar":"MIXED","projected_rvol":4.20002},"flow":{"window_s":30,"trades":184,"trade_rate":6.133333,"buy_vol":57945.0,"sell_vol":21439.0,"unclassified_vol":0.0,"imbalance":0.459866,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":2.351671},"context":{"vwap":8.78927,"price_vs_vwap_pct":0.62952,"ema9":8.839689,"ema20":8.83265,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.067114,"dist_to_hod_atr":4.254278,"atr":0.022424,"spread_atr":0.445941,"own_change_pct":0.226372,"rel_strength_pct":{"SPY":0.218613,"IWM":0.18091}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.430019},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"91f5a0d1f00d","ts":"2026-09-21T18:20:20.508168+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7764,"target":9.21,"target_label":"prev_day_high","reward_risk":3.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.7895,"ext_from_open_pct":4.05,"max_ext_allowed_pct":4.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":0.0929,"volatility":"unknown"},"price":8.865,"volume":{"bars":290,"last_bar_volume":47836.0,"baseline_avg":51156.25,"bar_rvol":0.935096,"raw_accel":-0.322935,"smooth_accel":0.184817,"accel_momentum":0.377387,"rvol_3bar":[1.092822,1.467523,0.935096],"trend_3bar":"MIXED","projected_rvol":4.366799},"flow":{"window_s":30,"trades":198,"trade_rate":6.6,"buy_vol":69524.0,"sell_vol":31292.0,"unclassified_vol":0.0,"imbalance":0.379226,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":2.348505},"context":{"vwap":8.78927,"price_vs_vwap_pct":0.861621,"ema9":8.839689,"ema20":8.83265,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.838926,"dist_to_hod_atr":3.344558,"atr":0.022424,"spread_atr":0.445941,"own_change_pct":0.226372,"rel_strength_pct":{"SPY":0.218613,"IWM":0.18091}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.354612},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"eed86b0c99b1","ts":"2026-09-21T18:20:31.098498+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.759,"target":8.91,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8475,"vwap":8.7896,"ext_from_open_pct":3.84,"max_ext_allowed_pct":4.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":0.0534,"volatility":"unknown"},"price":8.8475,"volume":{"bars":290,"last_bar_volume":47836.0,"baseline_avg":51156.25,"bar_rvol":0.935096,"raw_accel":-0.322935,"smooth_accel":0.184817,"accel_momentum":0.377387,"rvol_3bar":[1.092822,1.467523,0.935096],"trend_3bar":"MIXED","projected_rvol":3.717484},"flow":{"window_s":30,"trades":150,"trade_rate":5.0,"buy_vol":77561.0,"sell_vol":20963.0,"unclassified_vol":0.0,"imbalance":0.574459,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.710409},"context":{"vwap":8.78927,"price_vs_vwap_pct":0.662515,"ema9":8.839689,"ema20":8.83265,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.034676,"dist_to_hod_atr":4.124955,"atr":0.022424,"spread_atr":0.445941,"own_change_pct":0.226372,"rel_strength_pct":{"SPY":0.218613,"IWM":0.18091}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.537174},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4921df2373f1","ts":"2026-09-21T18:20:36.298848+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7813,"target":9.21,"target_label":"prev_day_high","reward_risk":3.83,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.87,"vwap":8.7896,"ext_from_open_pct":4.11,"max_ext_allowed_pct":4.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":0.1042,"volatility":"unknown"},"price":8.87,"volume":{"bars":290,"last_bar_volume":47836.0,"baseline_avg":51156.25,"bar_rvol":0.935096,"raw_accel":-0.322935,"smooth_accel":0.184817,"accel_momentum":0.377387,"rvol_3bar":[1.092822,1.467523,0.935096],"trend_3bar":"MIXED","projected_rvol":3.193235},"flow":{"window_s":30,"trades":135,"trade_rate":4.5,"buy_vol":60374.0,"sell_vol":11195.0,"unclassified_vol":0.0,"imbalance":0.687155,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.92285},"context":{"vwap":8.78927,"price_vs_vwap_pct":0.918509,"ema9":8.839689,"ema20":8.83265,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.782998,"dist_to_hod_atr":3.121588,"atr":0.022424,"spread_atr":0.445941,"own_change_pct":0.226372,"rel_strength_pct":{"SPY":0.218613,"IWM":0.18091}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.642556},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"40e246c72c4c","ts":"2026-09-21T18:20:46.823903+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7592,"target":8.91,"target_label":"ceiling","reward_risk":0.7,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8477,"vwap":8.7896,"ext_from_open_pct":3.85,"max_ext_allowed_pct":4.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":0.0538,"volatility":"unknown"},"price":8.8477,"volume":{"bars":290,"last_bar_volume":47836.0,"baseline_avg":51156.25,"bar_rvol":0.935096,"raw_accel":-0.322935,"smooth_accel":0.184817,"accel_momentum":0.377387,"rvol_3bar":[1.092822,1.467523,0.935096],"trend_3bar":"MIXED","projected_rvol":2.605715},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":35996.0,"sell_vol":13344.0,"unclassified_vol":0.0,"imbalance":0.4591,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.120139},"context":{"vwap":8.78927,"price_vs_vwap_pct":0.66479,"ema9":8.839689,"ema20":8.83265,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.032438,"dist_to_hod_atr":4.116036,"atr":0.022424,"spread_atr":0.445941,"own_change_pct":0.226372,"rel_strength_pct":{"SPY":0.218613,"IWM":0.18091}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.429303},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"481c12c28554","ts":"2026-09-21T18:20:52.068616+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4811,"target":6.94,"target_label":"ceiling","reward_risk":1.81,"pos_in_5d_range_pct":112.8,"room_to_5d_high_atr":-0.34},"price":6.6444,"vwap":6.5901,"ext_from_open_pct":3.98,"max_ext_allowed_pct":4.0,"volume_pace":0.489,"trend":"flat","recent_slope_pct":0.0584,"volatility":"high"},"price":6.6444,"volume":{"bars":288,"last_bar_volume":5770.0,"baseline_avg":2477.75,"bar_rvol":2.328726,"raw_accel":2.781127,"smooth_accel":-0.344491,"accel_momentum":-0.152477,"rvol_3bar":[0.586447,0.634736,2.328726],"trend_3bar":"ACCELERATING","projected_rvol":0.330199},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":692.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.61,"ask":6.65,"spread_pct":0.603318,"quote_size_imbalance":null,"quote_age_s":2.270771},"context":{"vwap":6.590084,"price_vs_vwap_pct":0.824214,"ema9":6.630757,"ema20":6.6262,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.259366,"dist_to_hod_atr":13.93311,"atr":0.021216,"spread_atr":1.885401,"own_change_pct":-0.300752,"rel_strength_pct":{"SPY":-0.308511,"IWM":-0.346214}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.328726},"shadow":{"decision":"FAIL","failed":["vas","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"04640a556025","ts":"2026-09-21T18:20:52.068616+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7025,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7601,"vwap":5.7593,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":1.008,"trend":"flat","recent_slope_pct":-0.0604,"volatility":"unknown"},"price":5.7601,"volume":{"bars":290,"last_bar_volume":15971.0,"baseline_avg":30095.65,"bar_rvol":0.530675,"raw_accel":-0.818493,"smooth_accel":1.613025,"accel_momentum":0.653639,"rvol_3bar":[0.212529,2.97576,0.530675],"trend_3bar":"MIXED","projected_rvol":0.549559},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":4631.0,"sell_vol":2480.0,"unclassified_vol":0.0,"imbalance":0.302489,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":4.21142},"context":{"vwap":5.759303,"price_vs_vwap_pct":0.013843,"ema9":5.770617,"ema20":5.771046,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.872232,"dist_to_hod_atr":7.884865,"atr":0.013938,"spread_atr":0.717458,"own_change_pct":-0.346021,"rel_strength_pct":{"SPY":-0.35378,"IWM":-0.391483}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.160523},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bcd49fbbc164","ts":"2026-09-21T18:20:52.068616+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7781,"target":9.21,"target_label":"prev_day_high","reward_risk":3.87,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8668,"vwap":8.7896,"ext_from_open_pct":4.07,"max_ext_allowed_pct":3.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":0.097,"volatility":"unknown"},"price":8.8668,"volume":{"bars":290,"last_bar_volume":47836.0,"baseline_avg":51156.25,"bar_rvol":0.935096,"raw_accel":-0.322935,"smooth_accel":0.184817,"accel_momentum":0.377387,"rvol_3bar":[1.092822,1.467523,0.935096],"trend_3bar":"MIXED","projected_rvol":2.352214},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":24639.0,"sell_vol":3318.0,"unclassified_vol":0.0,"imbalance":0.762635,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.046948},"context":{"vwap":8.78927,"price_vs_vwap_pct":0.882101,"ema9":8.839689,"ema20":8.83265,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.818792,"dist_to_hod_atr":3.264289,"atr":0.022424,"spread_atr":0.445941,"own_change_pct":0.226372,"rel_strength_pct":{"SPY":0.218613,"IWM":0.18091}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.713137},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a3fa936f1d0d","ts":"2026-09-21T18:20:57.286961+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.7073,"target":6.07,"target_label":"range_20d_high","reward_risk":5.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.765,"vwap":5.7593,"ext_from_open_pct":4.06,"max_ext_allowed_pct":3.0,"volume_pace":1.008,"trend":"flat","recent_slope_pct":-0.0434,"volatility":"unknown"},"price":5.765,"volume":{"bars":290,"last_bar_volume":15971.0,"baseline_avg":30095.65,"bar_rvol":0.530675,"raw_accel":-0.818493,"smooth_accel":1.613025,"accel_momentum":0.653639,"rvol_3bar":[0.212529,2.97576,0.530675],"trend_3bar":"MIXED","projected_rvol":0.560366},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":5766.0,"sell_vol":2334.0,"unclassified_vol":0.0,"imbalance":0.423704,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.786299},"context":{"vwap":5.759303,"price_vs_vwap_pct":0.098922,"ema9":5.770617,"ema20":5.771046,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.788756,"dist_to_hod_atr":7.533311,"atr":0.013938,"spread_atr":0.717458,"own_change_pct":-0.346021,"rel_strength_pct":{"SPY":-0.35378,"IWM":-0.391483}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.224849},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ef3ae42313d1","ts":"2026-09-21T18:21:18.264144+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7593,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":1.007,"trend":"flat","recent_slope_pct":-0.0434,"volatility":"unknown"},"price":5.76,"volume":{"bars":291,"last_bar_volume":16629.0,"baseline_avg":28390.05,"bar_rvol":0.585733,"raw_accel":0.0412,"smooth_accel":3.119108,"accel_momentum":1.506083,"rvol_3bar":[2.97576,0.530675,0.585733],"trend_3bar":"MIXED","projected_rvol":0.42872},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":5236.0,"sell_vol":2011.0,"unclassified_vol":0.0,"imbalance":0.445012,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.724381},"context":{"vwap":5.759309,"price_vs_vwap_pct":0.011999,"ema9":5.770494,"ema20":5.770946,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":7.93834,"atr":0.013857,"spread_atr":0.721667,"own_change_pct":-0.17301,"rel_strength_pct":{"SPY":-0.171717,"IWM":-0.221961}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.260658},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f06b9862b5f6","ts":"2026-09-21T18:21:23.622726+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.7172,"target":6.07,"target_label":"range_20d_high","reward_risk":5.11,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.775,"vwap":5.7593,"ext_from_open_pct":4.24,"max_ext_allowed_pct":3.0,"volume_pace":1.007,"trend":"flat","recent_slope_pct":0.0087,"volatility":"unknown"},"price":5.775,"volume":{"bars":291,"last_bar_volume":16629.0,"baseline_avg":28390.05,"bar_rvol":0.585733,"raw_accel":0.0412,"smooth_accel":3.119108,"accel_momentum":1.506083,"rvol_3bar":[2.97576,0.530675,0.585733],"trend_3bar":"MIXED","projected_rvol":1.462133},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":13513.0,"sell_vol":4923.0,"unclassified_vol":0.0,"imbalance":0.465936,"bid":5.77,"ask":5.78,"spread_pct":0.17316,"quote_size_imbalance":null,"quote_age_s":0.137909},"context":{"vwap":5.759309,"price_vs_vwap_pct":0.272447,"ema9":5.770494,"ema20":5.770946,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.618399,"dist_to_hod_atr":6.855839,"atr":0.013857,"spread_atr":0.721667,"own_change_pct":-0.17301,"rel_strength_pct":{"SPY":-0.171717,"IWM":-0.221961}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.272914},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0090bc1b3a97","ts":"2026-09-21T18:21:39.615500+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4687,"target":6.94,"target_label":"ceiling","reward_risk":1.89,"pos_in_5d_range_pct":112.0,"room_to_5d_high_atr":-0.32},"price":6.632,"vwap":6.5901,"ext_from_open_pct":3.79,"max_ext_allowed_pct":3.0,"volume_pace":0.487,"trend":"flat","recent_slope_pct":0.0661,"volatility":"high"},"price":6.632,"volume":{"bars":289,"last_bar_volume":712.0,"baseline_avg":2616.95,"bar_rvol":0.272072,"raw_accel":-0.876603,"smooth_accel":0.302326,"accel_momentum":0.646817,"rvol_3bar":[0.634736,2.328726,0.272072],"trend_3bar":"MIXED","projected_rvol":0.003472},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":4.815101},"context":{"vwap":6.590096,"price_vs_vwap_pct":0.635856,"ema9":6.632605,"ema20":6.627515,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.43804,"dist_to_hod_atr":13.900554,"atr":0.022157,"spread_atr":1.35395,"own_change_pct":-0.052683,"rel_strength_pct":{"SPY":-0.05139,"IWM":-0.101634}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.272072},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b88ea2eeef82","ts":"2026-09-21T18:22:00.557498+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.0433,"target":5.1483,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":66.2,"room_to_5d_high_atr":0.66},"price":5.13,"vwap":5.1089,"ext_from_open_pct":-0.97,"max_ext_allowed_pct":3.0,"volume_pace":0.209,"trend":"flat","recent_slope_pct":-0.0152,"volatility":"high"},"price":5.13,"volume":{"bars":292,"last_bar_volume":3923.0,"baseline_avg":10300.6,"bar_rvol":0.380852,"raw_accel":-0.443309,"smooth_accel":-0.508616,"accel_momentum":-1.013195,"rvol_3bar":[0.202376,0.650164,0.380852],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":2030.0,"sell_vol":458.0,"unclassified_vol":0.0,"imbalance":0.631833,"bid":5.13,"ask":5.14,"spread_pct":0.194742,"quote_size_imbalance":null,"quote_age_s":0.926956},"context":{"vwap":5.1089,"price_vs_vwap_pct":0.413013,"ema9":5.133542,"ema20":5.131417,"ema_stack":false,"ema_warm":true,"hod":5.21,"dist_to_hod_pct":-1.535509,"dist_to_hod_atr":6.800216,"atr":0.011764,"spread_atr":0.850027,"own_change_pct":-0.021423,"rel_strength_pct":{"SPY":-0.052461,"IWM":-0.086108}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.240635},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7c0d29feb7de","ts":"2026-09-21T18:22:05.839220+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4767,"target":6.94,"target_label":"ceiling","reward_risk":1.84,"pos_in_5d_range_pct":112.5,"room_to_5d_high_atr":-0.34},"price":6.64,"vwap":6.5901,"ext_from_open_pct":3.91,"max_ext_allowed_pct":4.0,"volume_pace":0.486,"trend":"flat","recent_slope_pct":0.0633,"volatility":"high"},"price":6.64,"volume":{"bars":290,"last_bar_volume":6.0,"baseline_avg":2640.8,"bar_rvol":0.002272,"raw_accel":-0.991573,"smooth_accel":-0.111841,"accel_momentum":-0.414167,"rvol_3bar":[2.328726,0.272072,0.002272],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":8.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":2.642687},"context":{"vwap":6.590097,"price_vs_vwap_pct":0.757249,"ema9":6.632484,"ema20":6.627942,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.322767,"dist_to_hod_atr":14.186981,"atr":0.021146,"spread_atr":1.418698,"own_change_pct":0.030166,"rel_strength_pct":{"SPY":-0.000873,"IWM":-0.034519}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.002272},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"10061dcfebe5","ts":"2026-09-21T18:22:05.839220+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7652,"target":8.91,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8537,"vwap":8.7898,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":0.0513,"volatility":"unknown"},"price":8.8537,"volume":{"bars":292,"last_bar_volume":40050.0,"baseline_avg":55209.9,"bar_rvol":0.725413,"raw_accel":-0.685537,"smooth_accel":0.312596,"accel_momentum":-0.555692,"rvol_3bar":[0.935096,2.447844,0.725413],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":9630.0,"sell_vol":2633.0,"unclassified_vol":0.0,"imbalance":0.570578,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.015206},"context":{"vwap":8.789811,"price_vs_vwap_pct":0.726847,"ema9":8.850249,"ema20":8.839236,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.965324,"dist_to_hod_atr":3.788361,"atr":0.02278,"spread_atr":0.438976,"own_change_pct":0.437077,"rel_strength_pct":{"SPY":0.406038,"IWM":0.372391}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.413905},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ce793039e812","ts":"2026-09-21T18:22:21.734447+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6842,"target":10.02,"target_label":"premarket_high","reward_risk":1.03,"pos_in_5d_range_pct":131.2,"room_to_5d_high_atr":-0.73},"price":9.8499,"vwap":9.8253,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":3.0,"volume_pace":0.814,"trend":"flat","recent_slope_pct":-0.0159,"volatility":"high"},"price":9.8499,"volume":{"bars":292,"last_bar_volume":3218.0,"baseline_avg":17250.5,"bar_rvol":0.186545,"raw_accel":-0.805747,"smooth_accel":-0.486659,"accel_momentum":-1.43784,"rvol_3bar":[1.281615,0.992776,0.186545],"trend_3bar":"DECELERATING","projected_rvol":1.041314},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":3861.0,"sell_vol":2746.0,"unclassified_vol":0.0,"imbalance":0.16876,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":0.24836},"context":{"vwap":9.825257,"price_vs_vwap_pct":0.250816,"ema9":9.849958,"ema20":9.830432,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.668972,"dist_to_hod_atr":9.301674,"atr":0.029038,"spread_atr":0.344379,"own_change_pct":0.163452,"rel_strength_pct":{"SPY":0.132413,"IWM":0.098766}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.031481},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"476d7b3b22e6","ts":"2026-09-21T18:22:21.734447+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7764,"target":9.21,"target_label":"prev_day_high","reward_risk":3.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.7899,"ext_from_open_pct":4.05,"max_ext_allowed_pct":4.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":0.0768,"volatility":"unknown"},"price":8.865,"volume":{"bars":292,"last_bar_volume":40050.0,"baseline_avg":55209.9,"bar_rvol":0.725413,"raw_accel":-0.685537,"smooth_accel":0.312596,"accel_momentum":-0.555692,"rvol_3bar":[0.935096,2.447844,0.725413],"trend_3bar":"MIXED","projected_rvol":1.012837},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":20160.0,"sell_vol":773.0,"unclassified_vol":0.0,"imbalance":0.926145,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.30873},"context":{"vwap":8.789811,"price_vs_vwap_pct":0.855405,"ema9":8.850249,"ema20":8.839236,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.838926,"dist_to_hod_atr":3.292319,"atr":0.02278,"spread_atr":0.438976,"own_change_pct":0.437077,"rel_strength_pct":{"SPY":0.406038,"IWM":0.372391}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.671838},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1fdd83c702fe","ts":"2026-09-21T18:22:27.072820+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4675,"target":6.94,"target_label":"ceiling","reward_risk":1.89,"pos_in_5d_range_pct":112.0,"room_to_5d_high_atr":-0.32},"price":6.6308,"vwap":6.5901,"ext_from_open_pct":3.77,"max_ext_allowed_pct":3.0,"volume_pace":0.486,"trend":"flat","recent_slope_pct":0.0356,"volatility":"high"},"price":6.6308,"volume":{"bars":290,"last_bar_volume":6.0,"baseline_avg":2640.8,"bar_rvol":0.002272,"raw_accel":-0.991573,"smooth_accel":-0.111841,"accel_momentum":-0.414167,"rvol_3bar":[2.328726,0.272072,0.002272],"trend_3bar":"DECELERATING","projected_rvol":0.090637},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":8.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-0.851852,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":15.414862},"context":{"vwap":6.590097,"price_vs_vwap_pct":0.617645,"ema9":6.632484,"ema20":6.627942,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.455331,"dist_to_hod_atr":14.622049,"atr":0.021146,"spread_atr":1.418698,"own_change_pct":0.030166,"rel_strength_pct":{"SPY":-0.000873,"IWM":-0.034519}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.001935},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"006d950a6589","ts":"2026-09-21T18:22:27.072820+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0561,"target":12.34,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":67.1,"room_to_5d_high_atr":0.53},"price":12.2314,"vwap":12.1827,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.594,"trend":"flat","recent_slope_pct":-0.0176,"volatility":"medium"},"price":12.2314,"volume":{"bars":292,"last_bar_volume":6982.0,"baseline_avg":6822.05,"bar_rvol":1.023446,"raw_accel":-0.011888,"smooth_accel":0.41754,"accel_momentum":1.19496,"rvol_3bar":[0.630391,1.06467,1.023446],"trend_3bar":"MIXED","projected_rvol":2.57358},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":1499.0,"sell_vol":6526.0,"unclassified_vol":0.0,"imbalance":-0.626417,"bid":12.22,"ask":12.23,"spread_pct":0.0818,"quote_size_imbalance":null,"quote_age_s":0.887876},"context":{"vwap":12.182606,"price_vs_vwap_pct":0.400519,"ema9":12.239625,"ema20":12.238675,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.070456,"dist_to_hod_atr":12.023998,"atr":0.021507,"spread_atr":0.464965,"own_change_pct":-0.014712,"rel_strength_pct":{"SPY":-0.045751,"IWM":-0.079397}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.641104},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"680dcae0b873","ts":"2026-09-21T18:22:47.812623+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4089,"target":7.775,"target_label":"range_20d_high","reward_risk":20.1,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4736,"vwap":6.3818,"ext_from_open_pct":2.92,"max_ext_allowed_pct":3.0,"volume_pace":1.128,"trend":"flat","recent_slope_pct":-0.0389,"volatility":"unknown"},"price":6.4736,"volume":{"bars":292,"last_bar_volume":20294.0,"baseline_avg":16388.85,"bar_rvol":1.238281,"raw_accel":0.676774,"smooth_accel":0.003797,"accel_momentum":0.152854,"rvol_3bar":[0.644206,0.739455,1.238281],"trend_3bar":"ACCELERATING","projected_rvol":5.087788},"flow":{"window_s":30,"trades":199,"trade_rate":6.633333,"buy_vol":34221.0,"sell_vol":26550.0,"unclassified_vol":0.0,"imbalance":0.126228,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.456795},"context":{"vwap":6.381432,"price_vs_vwap_pct":1.444318,"ema9":6.484985,"ema20":6.486977,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.55914,"dist_to_hod_atr":3.093122,"atr":0.011768,"spread_atr":0.849759,"own_change_pct":-0.104828,"rel_strength_pct":{"SPY":-0.135867,"IWM":-0.169514}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.156306},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c0853533bcf9","ts":"2026-09-21T18:22:52.974402+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7616,"target":8.91,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8501,"vwap":8.79,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":0.0431,"volatility":"unknown"},"price":8.8501,"volume":{"bars":292,"last_bar_volume":40050.0,"baseline_avg":55209.9,"bar_rvol":0.725413,"raw_accel":-0.685537,"smooth_accel":0.312596,"accel_momentum":-0.555692,"rvol_3bar":[0.935096,2.447844,0.725413],"trend_3bar":"MIXED","projected_rvol":1.09139},"flow":{"window_s":30,"trades":148,"trade_rate":4.933333,"buy_vol":13419.0,"sell_vol":19515.0,"unclassified_vol":0.0,"imbalance":-0.185097,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.932784},"context":{"vwap":8.789811,"price_vs_vwap_pct":0.685891,"ema9":8.850249,"ema20":8.839236,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.005593,"dist_to_hod_atr":3.946393,"atr":0.02278,"spread_atr":0.438976,"own_change_pct":0.437077,"rel_strength_pct":{"SPY":0.406038,"IWM":0.372391}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.134272},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6c34f47fa419","ts":"2026-09-21T18:23:08.573489+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6893,"target":10.02,"target_label":"premarket_high","reward_risk":1.0,"pos_in_5d_range_pct":131.5,"room_to_5d_high_atr":-0.74},"price":9.855,"vwap":9.8253,"ext_from_open_pct":-1.35,"max_ext_allowed_pct":4.0,"volume_pace":0.813,"trend":"flat","recent_slope_pct":-0.0051,"volatility":"high"},"price":9.855,"volume":{"bars":293,"last_bar_volume":10235.0,"baseline_avg":16390.05,"bar_rvol":0.624464,"raw_accel":1.497857,"smooth_accel":-0.648115,"accel_momentum":-0.161456,"rvol_3bar":[0.992776,0.186545,0.624464],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":577.0,"sell_vol":1182.0,"unclassified_vol":0.0,"imbalance":-0.343945,"bid":9.85,"ask":9.86,"spread_pct":0.101471,"quote_size_imbalance":null,"quote_age_s":2.088189},"context":{"vwap":9.825288,"price_vs_vwap_pct":0.302405,"ema9":9.850967,"ema20":9.832772,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.618577,"dist_to_hod_atr":9.305447,"atr":0.028478,"spread_atr":0.351149,"own_change_pct":0.042636,"rel_strength_pct":{"SPY":-0.016204,"IWM":-0.016802}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.214782},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7eb29fcc8fda","ts":"2026-09-21T18:23:19.031220+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3818,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.127,"trend":"flat","recent_slope_pct":-0.0211,"volatility":"unknown"},"price":6.48,"volume":{"bars":293,"last_bar_volume":67954.0,"baseline_avg":16917.2,"bar_rvol":4.016859,"raw_accel":2.348477,"smooth_accel":1.308087,"accel_momentum":1.30429,"rvol_3bar":[0.739455,1.238281,4.016859],"trend_3bar":"ACCELERATING","projected_rvol":0.958271},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1485.0,"sell_vol":5165.0,"unclassified_vol":0.0,"imbalance":-0.553383,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.225695},"context":{"vwap":6.381774,"price_vs_vwap_pct":1.539164,"ema9":6.484248,"ema20":6.486436,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.479564,"atr":0.012099,"spread_atr":0.826521,"own_change_pct":-0.121741,"rel_strength_pct":{"SPY":-0.180581,"IWM":-0.181179}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.222863},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"38c8de37c127","ts":"2026-09-21T18:23:19.031220+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7764,"target":9.21,"target_label":"prev_day_high","reward_risk":3.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.7903,"ext_from_open_pct":4.05,"max_ext_allowed_pct":4.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":0.0138,"volatility":"unknown"},"price":8.865,"volume":{"bars":293,"last_bar_volume":70177.0,"baseline_avg":56881.75,"bar_rvol":1.233735,"raw_accel":0.752235,"smooth_accel":0.403706,"accel_momentum":0.09111,"rvol_3bar":[2.447844,0.725413,1.233735],"trend_3bar":"MIXED","projected_rvol":4.126171},"flow":{"window_s":30,"trades":200,"trade_rate":6.666667,"buy_vol":79596.0,"sell_vol":12871.0,"unclassified_vol":0.0,"imbalance":0.721609,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.616049},"context":{"vwap":8.79003,"price_vs_vwap_pct":0.852894,"ema9":8.852199,"ema20":8.841213,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.838926,"dist_to_hod_atr":3.269563,"atr":0.022939,"spread_atr":0.435942,"own_change_pct":0.226244,"rel_strength_pct":{"SPY":0.167404,"IWM":0.166806}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.890274},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"668879ae03eb","ts":"2026-09-21T18:23:24.265569+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7697,"target":9.21,"target_label":"prev_day_high","reward_risk":3.97,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8583,"vwap":8.7903,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":-0.0014,"volatility":"unknown"},"price":8.8583,"volume":{"bars":293,"last_bar_volume":70177.0,"baseline_avg":56881.75,"bar_rvol":1.233735,"raw_accel":0.752235,"smooth_accel":0.403706,"accel_momentum":0.09111,"rvol_3bar":[2.447844,0.725413,1.233735],"trend_3bar":"MIXED","projected_rvol":4.081164},"flow":{"window_s":30,"trades":244,"trade_rate":8.133333,"buy_vol":91952.0,"sell_vol":18910.0,"unclassified_vol":0.0,"imbalance":0.658855,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.493383},"context":{"vwap":8.79003,"price_vs_vwap_pct":0.776671,"ema9":8.852199,"ema20":8.841213,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.91387,"dist_to_hod_atr":3.561644,"atr":0.022939,"spread_atr":0.435942,"own_change_pct":0.226244,"rel_strength_pct":{"SPY":0.167404,"IWM":0.166806}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.812853},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"346f3aa2a8b8","ts":"2026-09-21T18:23:29.484057+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6365,"target":11.45,"target_label":"range_20d_high","reward_risk":17.41,"pos_in_5d_range_pct":116.2,"room_to_5d_high_atr":-0.17},"price":9.735,"vwap":9.7004,"ext_from_open_pct":0.46,"max_ext_allowed_pct":3.0,"volume_pace":0.572,"trend":"flat","recent_slope_pct":-0.0212,"volatility":"medium"},"price":9.735,"volume":{"bars":293,"last_bar_volume":2332.0,"baseline_avg":6393.3,"bar_rvol":0.364757,"raw_accel":0.386445,"smooth_accel":-0.549856,"accel_momentum":-1.213925,"rvol_3bar":[0.4959,0.226253,0.364757],"trend_3bar":"MIXED","projected_rvol":3.275006},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":207.0,"sell_vol":10082.0,"unclassified_vol":0.0,"imbalance":-0.959763,"bid":9.73,"ask":9.74,"spread_pct":0.102722,"quote_size_imbalance":null,"quote_age_s":1.353611},"context":{"vwap":9.700265,"price_vs_vwap_pct":0.358084,"ema9":9.740947,"ema20":9.741662,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-0.966429,"dist_to_hod_atr":6.74095,"atr":0.014093,"spread_atr":0.709574,"own_change_pct":0.111986,"rel_strength_pct":{"SPY":0.053146,"IWM":0.052547}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.35008},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"97b9e2e3bd00","ts":"2026-09-21T18:23:29.484057+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3818,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.126,"trend":"flat","recent_slope_pct":-0.0366,"volatility":"unknown"},"price":6.475,"volume":{"bars":293,"last_bar_volume":67954.0,"baseline_avg":16917.2,"bar_rvol":4.016859,"raw_accel":2.348477,"smooth_accel":1.308087,"accel_momentum":1.30429,"rvol_3bar":[0.739455,1.238281,4.016859],"trend_3bar":"ACCELERATING","projected_rvol":1.002751},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":1196.0,"sell_vol":7140.0,"unclassified_vol":0.0,"imbalance":-0.713052,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.692461},"context":{"vwap":6.381774,"price_vs_vwap_pct":1.460816,"ema9":6.484248,"ema20":6.486436,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.537634,"dist_to_hod_atr":2.892825,"atr":0.012099,"spread_atr":0.826521,"own_change_pct":-0.121741,"rel_strength_pct":{"SPY":-0.180581,"IWM":-0.181179}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.864228},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"82a4eddc96cb","ts":"2026-09-21T18:23:34.681500+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.4s / 18s","plan":{"state":"WATCH","setup":"","stop":8.7695,"target":8.91,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8581,"vwap":8.7904,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":-0.0018,"volatility":"unknown"},"price":8.8581,"volume":{"bars":293,"last_bar_volume":70177.0,"baseline_avg":56881.75,"bar_rvol":1.233735,"raw_accel":0.752235,"smooth_accel":0.403706,"accel_momentum":0.09111,"rvol_3bar":[2.447844,0.725413,1.233735],"trend_3bar":"MIXED","projected_rvol":3.4004},"flow":{"window_s":30,"trades":231,"trade_rate":7.7,"buy_vol":62670.0,"sell_vol":28939.0,"unclassified_vol":0.0,"imbalance":0.368206,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.026338},"context":{"vwap":8.79003,"price_vs_vwap_pct":0.774396,"ema9":8.852199,"ema20":8.841213,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.916107,"dist_to_hod_atr":3.570362,"atr":0.022939,"spread_atr":0.435942,"own_change_pct":0.226244,"rel_strength_pct":{"SPY":0.167404,"IWM":0.166806}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.454269},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1240e6a8f5e5","ts":"2026-09-21T18:23:39.889892+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7698,"target":9.21,"target_label":"prev_day_high","reward_risk":3.97,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8584,"vwap":8.7904,"ext_from_open_pct":3.97,"max_ext_allowed_pct":3.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":-0.0011,"volatility":"unknown"},"price":8.8584,"volume":{"bars":293,"last_bar_volume":70177.0,"baseline_avg":56881.75,"bar_rvol":1.233735,"raw_accel":0.752235,"smooth_accel":0.403706,"accel_momentum":0.09111,"rvol_3bar":[2.447844,0.725413,1.233735],"trend_3bar":"MIXED","projected_rvol":2.988594},"flow":{"window_s":30,"trades":231,"trade_rate":7.7,"buy_vol":63656.0,"sell_vol":29140.0,"unclassified_vol":0.0,"imbalance":0.371956,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.836793},"context":{"vwap":8.79003,"price_vs_vwap_pct":0.777809,"ema9":8.852199,"ema20":8.841213,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.912752,"dist_to_hod_atr":3.557284,"atr":0.022939,"spread_atr":0.435942,"own_change_pct":0.226244,"rel_strength_pct":{"SPY":0.167404,"IWM":0.166806}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.458895},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d6c362ba3cfa","ts":"2026-09-21T18:24:00.645579+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6761,"target":8.82,"target_label":"prev_day_high","reward_risk":0.32,"pos_in_5d_range_pct":82.2,"room_to_5d_high_atr":0.3},"price":8.785,"vwap":8.7085,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.538,"trend":"flat","recent_slope_pct":-0.0341,"volatility":"medium"},"price":8.785,"volume":{"bars":294,"last_bar_volume":6791.0,"baseline_avg":5431.8,"bar_rvol":1.25023,"raw_accel":-0.10633,"smooth_accel":0.378697,"accel_momentum":0.620238,"rvol_3bar":[0.317562,1.342307,1.25023],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":165.0,"sell_vol":6021.0,"unclassified_vol":0.0,"imbalance":-0.946654,"bid":8.78,"ask":8.79,"spread_pct":0.11383,"quote_size_imbalance":null,"quote_age_s":0.167078},"context":{"vwap":8.708479,"price_vs_vwap_pct":0.878697,"ema9":8.791951,"ema20":8.796749,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.185991,"dist_to_hod_atr":16.235446,"atr":0.017807,"spread_atr":0.561586,"own_change_pct":-0.113701,"rel_strength_pct":{"SPY":-0.17318,"IWM":-0.159151}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.183535},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3b35a7fdb9ed","ts":"2026-09-21T18:24:00.645579+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7593,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":1.002,"trend":"flat","recent_slope_pct":0.0028,"volatility":"unknown"},"price":5.76,"volume":{"bars":293,"last_bar_volume":9105.0,"baseline_avg":26003.1,"bar_rvol":0.350151,"raw_accel":-0.598332,"smooth_accel":-0.561826,"accel_momentum":-0.069408,"rvol_3bar":[0.585733,0.890691,0.350151],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":2392.0,"sell_vol":3093.0,"unclassified_vol":0.0,"imbalance":-0.127803,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.307906},"context":{"vwap":5.759326,"price_vs_vwap_pct":0.011699,"ema9":5.77094,"ema20":5.771091,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":7.823501,"atr":0.01406,"spread_atr":0.711227,"own_change_pct":-0.058874,"rel_strength_pct":{"SPY":-0.118354,"IWM":-0.104324}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.04475},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c6990a6ce95f","ts":"2026-09-21T18:24:00.645579+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4167,"target":7.775,"target_label":"range_20d_high","reward_risk":19.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4815,"vwap":6.3818,"ext_from_open_pct":3.04,"max_ext_allowed_pct":3.0,"volume_pace":1.124,"trend":"flat","recent_slope_pct":-0.0085,"volatility":"unknown"},"price":6.4815,"volume":{"bars":294,"last_bar_volume":13846.0,"baseline_avg":19363.95,"bar_rvol":0.71504,"raw_accel":-0.796245,"smooth_accel":1.810107,"accel_momentum":0.50202,"rvol_3bar":[1.238281,4.016859,0.71504],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":1373.0,"sell_vol":4054.0,"unclassified_vol":0.0,"imbalance":-0.494011,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.638293},"context":{"vwap":6.381841,"price_vs_vwap_pct":1.561605,"ema9":6.483699,"ema20":6.485966,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.437788,"dist_to_hod_atr":2.355571,"atr":0.012099,"spread_atr":0.826516,"own_change_pct":-0.033931,"rel_strength_pct":{"SPY":-0.09341,"IWM":-0.079381}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.353238},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"45b370996ad6","ts":"2026-09-21T18:24:05.927311+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":13.335,"target":14.0107,"target_label":"premarket_high","reward_risk":2.24,"pos_in_5d_range_pct":108.8,"room_to_5d_high_atr":-0.27},"price":13.5434,"vwap":13.5292,"ext_from_open_pct":-2.64,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":0.0678,"volatility":"high"},"price":13.5434,"volume":{"bars":294,"last_bar_volume":169577.0,"baseline_avg":77482.6,"bar_rvol":2.188582,"raw_accel":0.826984,"smooth_accel":0.0325,"accel_momentum":0.163211,"rvol_3bar":[1.777197,1.24451,2.188582],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":114,"trade_rate":3.8,"buy_vol":21612.0,"sell_vol":22395.0,"unclassified_vol":0.0,"imbalance":-0.017793,"bid":13.55,"ask":13.56,"spread_pct":0.073774,"quote_size_imbalance":null,"quote_age_s":1.470965},"context":{"vwap":13.529164,"price_vs_vwap_pct":0.105224,"ema9":13.511395,"ema20":13.485497,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-3.123033,"dist_to_hod_atr":10.645945,"atr":0.041011,"spread_atr":0.243837,"own_change_pct":0.444609,"rel_strength_pct":{"SPY":0.38513,"IWM":0.399159}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.038941},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"18d9d5fa4afb","ts":"2026-09-21T18:24:05.927311+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.6465,"target":11.45,"target_label":"range_20d_high","reward_risk":17.31,"pos_in_5d_range_pct":118.7,"room_to_5d_high_atr":-0.19},"price":9.745,"vwap":9.7008,"ext_from_open_pct":0.57,"max_ext_allowed_pct":3.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":-0.0094,"volatility":"medium"},"price":9.745,"volume":{"bars":294,"last_bar_volume":27333.0,"baseline_avg":6456.35,"bar_rvol":4.233507,"raw_accel":10.72084,"smooth_accel":1.153249,"accel_momentum":1.703105,"rvol_3bar":[0.226253,0.364757,4.233507],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":6050.0,"sell_vol":20534.0,"unclassified_vol":0.0,"imbalance":-0.544839,"bid":9.74,"ask":9.75,"spread_pct":0.102617,"quote_size_imbalance":null,"quote_age_s":0.446485},"context":{"vwap":9.700618,"price_vs_vwap_pct":0.457519,"ema9":9.739758,"ema20":9.741027,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-0.8647,"dist_to_hod_atr":6.006806,"atr":0.014151,"spread_atr":0.706683,"own_change_pct":0.020549,"rel_strength_pct":{"SPY":-0.038931,"IWM":-0.024901}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.306579},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4f674a47f344","ts":"2026-09-21T18:24:05.927311+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7123,"target":6.07,"target_label":"range_20d_high","reward_risk":5.2,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.77,"vwap":5.7593,"ext_from_open_pct":4.15,"max_ext_allowed_pct":4.0,"volume_pace":1.002,"trend":"flat","recent_slope_pct":-0.0206,"volatility":"unknown"},"price":5.77,"volume":{"bars":294,"last_bar_volume":59679.0,"baseline_avg":23444.25,"bar_rvol":2.545571,"raw_accel":5.55453,"smooth_accel":-0.241635,"accel_momentum":0.320191,"rvol_3bar":[0.890691,0.350151,2.545571],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":3016.0,"sell_vol":2434.0,"unclassified_vol":0.0,"imbalance":0.106789,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.104026},"context":{"vwap":5.759346,"price_vs_vwap_pct":0.18499,"ema9":5.768752,"ema20":5.770035,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.703578,"dist_to_hod_atr":6.903945,"atr":0.014484,"spread_atr":0.690394,"own_change_pct":-0.08673,"rel_strength_pct":{"SPY":-0.146209,"IWM":-0.13218}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.271839},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"60ba91dec472","ts":"2026-09-21T18:24:16.505606+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4717,"target":6.9195,"target_label":"ceiling","reward_risk":1.74,"pos_in_5d_range_pct":112.2,"room_to_5d_high_atr":-0.33},"price":6.635,"vwap":6.5901,"ext_from_open_pct":3.83,"max_ext_allowed_pct":4.0,"volume_pace":0.483,"trend":"flat","recent_slope_pct":-0.016,"volatility":"high"},"price":6.635,"volume":{"bars":292,"last_bar_volume":145.0,"baseline_avg":2590.1,"bar_rvol":0.055982,"raw_accel":-0.77607,"smooth_accel":-0.966783,"accel_momentum":-0.062806,"rvol_3bar":[0.002272,0.043654,0.055982],"trend_3bar":"ACCELERATING","projected_rvol":0.710156},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":501.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.980237,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":12.60031},"context":{"vwap":6.590102,"price_vs_vwap_pct":0.681297,"ema9":6.63267,"ema20":6.628879,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.394813,"dist_to_hod_atr":15.120018,"atr":0.020172,"spread_atr":1.487215,"own_change_pct":0.172205,"rel_strength_pct":{"SPY":0.112726,"IWM":0.126756}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.054876},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a4868f1cc71c","ts":"2026-09-21T18:24:37.604859+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6793,"target":10.02,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":130.9,"room_to_5d_high_atr":-0.72},"price":9.845,"vwap":9.8253,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":3.0,"volume_pace":0.809,"trend":"flat","recent_slope_pct":-0.0163,"volatility":"high"},"price":9.845,"volume":{"bars":294,"last_bar_volume":1644.0,"baseline_avg":16723.65,"bar_rvol":0.098304,"raw_accel":-0.839375,"smooth_accel":-0.835986,"accel_momentum":-0.187871,"rvol_3bar":[0.186545,0.624464,0.098304],"trend_3bar":"MIXED","projected_rvol":1.085435},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":4095.0,"sell_vol":7247.0,"unclassified_vol":0.0,"imbalance":-0.277905,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":0.010906},"context":{"vwap":9.825293,"price_vs_vwap_pct":0.20057,"ema9":9.852773,"ema20":9.835365,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.717391,"dist_to_hod_atr":9.971167,"atr":0.02758,"spread_atr":0.362588,"own_change_pct":-0.008113,"rel_strength_pct":{"SPY":-0.067592,"IWM":-0.053563}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.027319},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a9968fd2c59d","ts":"2026-09-21T18:24:48.144774+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4717,"target":6.9195,"target_label":"ceiling","reward_risk":1.74,"pos_in_5d_range_pct":112.2,"room_to_5d_high_atr":-0.33},"price":6.635,"vwap":6.5901,"ext_from_open_pct":3.83,"max_ext_allowed_pct":3.0,"volume_pace":0.482,"trend":"flat","recent_slope_pct":-0.016,"volatility":"high"},"price":6.635,"volume":{"bars":292,"last_bar_volume":145.0,"baseline_avg":2590.1,"bar_rvol":0.055982,"raw_accel":-0.77607,"smooth_accel":-0.966783,"accel_momentum":-0.062806,"rvol_3bar":[0.002272,0.043654,0.055982],"trend_3bar":"ACCELERATING","projected_rvol":0.248276},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":0.128686},"context":{"vwap":6.590102,"price_vs_vwap_pct":0.681297,"ema9":6.63267,"ema20":6.628879,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.394813,"dist_to_hod_atr":15.120018,"atr":0.020172,"spread_atr":1.487215,"own_change_pct":0.172205,"rel_strength_pct":{"SPY":0.112726,"IWM":0.126756}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.055982},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d392ac5a68ed","ts":"2026-09-21T18:25:03.816821+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.94,"target":12.3053,"target_label":"clear air (typical 60-min move)","reward_risk":0.66,"pos_in_5d_range_pct":129.9,"room_to_5d_high_atr":-1.33},"price":12.16,"vwap":11.6579,"ext_from_open_pct":4.2,"max_ext_allowed_pct":4.0,"volume_pace":0.207,"trend":"flat","recent_slope_pct":0.2893,"volatility":"high"},"price":12.16,"volume":{"bars":295,"last_bar_volume":22969.0,"baseline_avg":10592.3,"bar_rvol":2.168462,"raw_accel":1.748803,"smooth_accel":0.191775,"accel_momentum":0.928775,"rvol_3bar":[0.21205,0.760826,2.168462],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":5890.0,"sell_vol":847.0,"unclassified_vol":0.0,"imbalance":0.748553,"bid":12.15,"ask":12.18,"spread_pct":0.246609,"quote_size_imbalance":null,"quote_age_s":0.600307},"context":{"vwap":11.657886,"price_vs_vwap_pct":4.307076,"ema9":12.046847,"ema20":12.004412,"ema_stack":true,"ema_warm":true,"hod":12.16,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.045342,"spread_atr":0.661643,"own_change_pct":1.587302,"rel_strength_pct":{"SPY":1.523939,"IWM":1.559337}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.623208},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0aef9c992f4d","ts":"2026-09-21T18:25:03.816821+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6793,"target":10.02,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":130.9,"room_to_5d_high_atr":-0.72},"price":9.845,"vwap":9.8253,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":3.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":-0.045,"volatility":"high"},"price":9.845,"volume":{"bars":295,"last_bar_volume":12686.0,"baseline_avg":16472.75,"bar_rvol":0.77012,"raw_accel":2.080481,"smooth_accel":-0.396571,"accel_momentum":0.439415,"rvol_3bar":[0.624464,0.098304,0.77012],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1256.0,"sell_vol":1014.0,"unclassified_vol":0.0,"imbalance":0.106608,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":0.372007},"context":{"vwap":9.825327,"price_vs_vwap_pct":0.200232,"ema9":9.852779,"ema20":9.837025,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.717391,"dist_to_hod_atr":10.149374,"atr":0.027095,"spread_atr":0.369068,"own_change_pct":-0.073022,"rel_strength_pct":{"SPY":-0.136385,"IWM":-0.100987}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.082101},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2d866d1df456","ts":"2026-09-21T18:25:03.816821+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.0381,"target":12.34,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":65.5,"room_to_5d_high_atr":0.55},"price":12.2134,"vwap":12.1828,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":-0.0515,"volatility":"medium"},"price":12.2134,"volume":{"bars":295,"last_bar_volume":661.0,"baseline_avg":7186.25,"bar_rvol":0.091981,"raw_accel":-0.954862,"smooth_accel":0.304188,"accel_momentum":-1.078014,"rvol_3bar":[1.215001,2.055125,0.091981],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":116.0,"sell_vol":476.0,"unclassified_vol":0.0,"imbalance":-0.608108,"bid":12.21,"ask":12.22,"spread_pct":0.081867,"quote_size_imbalance":null,"quote_age_s":0.372406},"context":{"vwap":12.182804,"price_vs_vwap_pct":0.251138,"ema9":12.229803,"ema20":12.233928,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.214572,"dist_to_hod_atr":12.566845,"atr":0.02201,"spread_atr":0.454333,"own_change_pct":-0.367047,"rel_strength_pct":{"SPY":-0.43041,"IWM":-0.395012}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.055935},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8a8cd9d0f8ef","ts":"2026-09-21T18:25:03.816821+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3819,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.121,"trend":"flat","recent_slope_pct":-0.0174,"volatility":"unknown"},"price":6.475,"volume":{"bars":295,"last_bar_volume":10728.0,"baseline_avg":19655.4,"bar_rvol":0.545804,"raw_accel":-0.225191,"smooth_accel":1.121083,"accel_momentum":-0.689024,"rvol_3bar":[4.016859,0.71504,0.545804],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":2292.0,"sell_vol":2419.0,"unclassified_vol":0.0,"imbalance":-0.026958,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.450958},"context":{"vwap":6.381892,"price_vs_vwap_pct":1.458938,"ema9":6.482959,"ema20":6.485398,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.537634,"dist_to_hod_atr":2.903072,"atr":0.012056,"spread_atr":0.829449,"own_change_pct":-0.077101,"rel_strength_pct":{"SPY":-0.140463,"IWM":-0.105065}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.014714},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"0a0665c75a3e","ts":"2026-09-21T18:25:09.153858+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4162,"target":7.775,"target_label":"range_20d_high","reward_risk":19.97,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.481,"vwap":6.3819,"ext_from_open_pct":3.04,"max_ext_allowed_pct":3.0,"volume_pace":1.121,"trend":"flat","recent_slope_pct":0.0011,"volatility":"unknown"},"price":6.481,"volume":{"bars":295,"last_bar_volume":10728.0,"baseline_avg":19655.4,"bar_rvol":0.545804,"raw_accel":-0.225191,"smooth_accel":1.121083,"accel_momentum":-0.689024,"rvol_3bar":[4.016859,0.71504,0.545804],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2617.0,"sell_vol":2384.0,"unclassified_vol":0.0,"imbalance":0.046591,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.242677},"context":{"vwap":6.381892,"price_vs_vwap_pct":1.552954,"ema9":6.482959,"ema20":6.485398,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.445469,"dist_to_hod_atr":2.405402,"atr":0.012056,"spread_atr":0.829449,"own_change_pct":-0.077101,"rel_strength_pct":{"SPY":-0.140463,"IWM":-0.105065}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.025429},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b54d62e84533","ts":"2026-09-21T18:25:09.153858+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7686,"target":8.91,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8572,"vwap":8.7907,"ext_from_open_pct":3.96,"max_ext_allowed_pct":3.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":-0.028,"volatility":"unknown"},"price":8.8572,"volume":{"bars":295,"last_bar_volume":57323.0,"baseline_avg":66515.35,"bar_rvol":0.861801,"raw_accel":-0.603748,"smooth_accel":0.264428,"accel_momentum":0.227649,"rvol_3bar":[1.233735,2.420231,0.861801],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":173,"trade_rate":5.766667,"buy_vol":34299.0,"sell_vol":36334.0,"unclassified_vol":0.0,"imbalance":-0.028811,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.072641},"context":{"vwap":8.790679,"price_vs_vwap_pct":0.756724,"ema9":8.856751,"ema20":8.845551,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.926174,"dist_to_hod_atr":3.622205,"atr":0.022859,"spread_atr":0.437464,"own_change_pct":0.0655,"rel_strength_pct":{"SPY":0.002137,"IWM":0.037536}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.024829},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1b473f5cf897","ts":"2026-09-21T18:25:14.336496+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.3949,"target":11.57,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.51,"vwap":11.3234,"ext_from_open_pct":-0.78,"max_ext_allowed_pct":3.0,"volume_pace":0.437,"trend":"flat","recent_slope_pct":-0.0512,"volatility":"unknown"},"price":11.51,"volume":{"bars":269,"last_bar_volume":8.0,"baseline_avg":171.4,"bar_rvol":0.046674,"raw_accel":-0.92,"smooth_accel":-0.679412,"accel_momentum":0.266403,"rvol_3bar":[0.005484,0.589971,0.046674],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":11.53,"ask":11.57,"spread_pct":0.34632,"quote_size_imbalance":null,"quote_age_s":86.624731},"context":{"vwap":11.32336,"price_vs_vwap_pct":1.648271,"ema9":11.520668,"ema20":11.490114,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-3.682008,"dist_to_hod_atr":10.77413,"atr":0.040839,"spread_atr":0.979466,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.063362,"IWM":-0.027964}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.046674},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c4adcde7cd2c","ts":"2026-09-21T18:25:14.336496+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.267,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.204,"trend":"flat","recent_slope_pct":0.0242,"volatility":"medium"},"price":5.29,"volume":{"bars":294,"last_bar_volume":253.0,"baseline_avg":793.1,"bar_rvol":0.319001,"raw_accel":-0.23565,"smooth_accel":-0.734099,"accel_momentum":0.060965,"rvol_3bar":[0.774806,0.406659,0.319001],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":450.0,"sell_vol":39.0,"unclassified_vol":0.0,"imbalance":0.840491,"bid":5.28,"ask":5.29,"spread_pct":0.189215,"quote_size_imbalance":null,"quote_age_s":16.24944},"context":{"vwap":5.267023,"price_vs_vwap_pct":0.436238,"ema9":5.281497,"ema20":5.277817,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.634065,"atr":0.006474,"spread_atr":1.544688,"own_change_pct":-0.011353,"rel_strength_pct":{"SPY":-0.074715,"IWM":-0.039317}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.268118},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"37c7d7074ac9","ts":"2026-09-21T18:25:14.336496+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4053,"target":6.51,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.382,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.121,"trend":"flat","recent_slope_pct":-0.0329,"volatility":"unknown"},"price":6.47,"volume":{"bars":295,"last_bar_volume":10728.0,"baseline_avg":19655.4,"bar_rvol":0.545804,"raw_accel":-0.225191,"smooth_accel":1.121083,"accel_momentum":-0.689024,"rvol_3bar":[4.016859,0.71504,0.545804],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":8194.0,"sell_vol":10008.0,"unclassified_vol":0.0,"imbalance":-0.099659,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.12094},"context":{"vwap":6.381892,"price_vs_vwap_pct":1.380591,"ema9":6.482959,"ema20":6.485398,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.614439,"dist_to_hod_atr":3.317796,"atr":0.012056,"spread_atr":0.829449,"own_change_pct":-0.077101,"rel_strength_pct":{"SPY":-0.140463,"IWM":-0.105065}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.054395},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"9b8e6c48e3fa","ts":"2026-09-21T18:25:14.336496+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7908,"ext_from_open_pct":3.93,"max_ext_allowed_pct":3.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":-0.0329,"volatility":"unknown"},"price":8.855,"volume":{"bars":295,"last_bar_volume":57323.0,"baseline_avg":66515.35,"bar_rvol":0.861801,"raw_accel":-0.603748,"smooth_accel":0.264428,"accel_momentum":0.227649,"rvol_3bar":[1.233735,2.420231,0.861801],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":171,"trade_rate":5.7,"buy_vol":17314.0,"sell_vol":46182.0,"unclassified_vol":0.0,"imbalance":-0.454643,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.132048},"context":{"vwap":8.790679,"price_vs_vwap_pct":0.731697,"ema9":8.856751,"ema20":8.845551,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":3.718447,"atr":0.022859,"spread_atr":0.437464,"own_change_pct":0.0655,"rel_strength_pct":{"SPY":0.002137,"IWM":0.037536}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.391812},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f8c73f7e58b1","ts":"2026-09-21T18:25:19.579793+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.227,"target":5.315,"target_label":"prev_day_high","reward_risk":0.52,"pos_in_5d_range_pct":95.9,"room_to_5d_high_atr":0.13},"price":5.2847,"vwap":5.267,"ext_from_open_pct":-0.66,"max_ext_allowed_pct":4.0,"volume_pace":0.204,"trend":"flat","recent_slope_pct":0.0042,"volatility":"medium"},"price":5.2847,"volume":{"bars":294,"last_bar_volume":253.0,"baseline_avg":793.1,"bar_rvol":0.319001,"raw_accel":-0.23565,"smooth_accel":-0.734099,"accel_momentum":0.060965,"rvol_3bar":[0.774806,0.406659,0.319001],"trend_3bar":"DECELERATING","projected_rvol":1.074138},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":450.0,"sell_vol":55.0,"unclassified_vol":0.0,"imbalance":0.782178,"bid":5.28,"ask":5.29,"spread_pct":0.189215,"quote_size_imbalance":null,"quote_age_s":21.492737},"context":{"vwap":5.267023,"price_vs_vwap_pct":0.335612,"ema9":5.281497,"ema20":5.277817,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.663534,"dist_to_hod_atr":5.45275,"atr":0.006474,"spread_atr":1.544688,"own_change_pct":-0.011353,"rel_strength_pct":{"SPY":-0.074715,"IWM":-0.039317}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.249516},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"efd4f1a3f22c","ts":"2026-09-21T18:25:24.869522+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4818,"target":6.9195,"target_label":"ceiling","reward_risk":1.68,"pos_in_5d_range_pct":112.8,"room_to_5d_high_atr":-0.34},"price":6.6451,"vwap":6.5901,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.481,"trend":"flat","recent_slope_pct":0.0395,"volatility":"high"},"price":6.6451,"volume":{"bars":293,"last_bar_volume":516.0,"baseline_avg":2576.25,"bar_rvol":0.200291,"raw_accel":-0.198836,"smooth_accel":-0.880395,"accel_momentum":0.086389,"rvol_3bar":[0.043654,0.055982,0.200291],"trend_3bar":"ACCELERATING","projected_rvol":0.014047},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":15.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":13.249327},"context":{"vwap":6.590113,"price_vs_vwap_pct":0.834385,"ema9":6.633136,"ema20":6.629462,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.24928,"dist_to_hod_atr":14.727373,"atr":0.020024,"spread_atr":1.498207,"own_change_pct":0.075415,"rel_strength_pct":{"SPY":0.012052,"IWM":0.047451}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.200291},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f0ba6e49d798","ts":"2026-09-21T18:25:35.500351+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4567,"target":6.9195,"target_label":"ceiling","reward_risk":1.83,"pos_in_5d_range_pct":111.4,"room_to_5d_high_atr":-0.31},"price":6.62,"vwap":6.5901,"ext_from_open_pct":3.6,"max_ext_allowed_pct":3.0,"volume_pace":0.481,"trend":"flat","recent_slope_pct":-0.0362,"volatility":"high"},"price":6.62,"volume":{"bars":293,"last_bar_volume":516.0,"baseline_avg":2576.25,"bar_rvol":0.200291,"raw_accel":-0.198836,"smooth_accel":-0.880395,"accel_momentum":0.086389,"rvol_3bar":[0.043654,0.055982,0.200291],"trend_3bar":"ACCELERATING","projected_rvol":0.68753},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":145.0,"sell_vol":903.0,"unclassified_vol":0.0,"imbalance":-0.723282,"bid":6.61,"ask":6.63,"spread_pct":0.302115,"quote_size_imbalance":null,"quote_age_s":0.224471},"context":{"vwap":6.590113,"price_vs_vwap_pct":0.453512,"ema9":6.633136,"ema20":6.629462,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.610951,"dist_to_hod_atr":15.980872,"atr":0.020024,"spread_atr":0.998805,"own_change_pct":0.075415,"rel_strength_pct":{"SPY":0.012052,"IWM":0.047451}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.144867},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"acfa107534ab","ts":"2026-09-21T18:25:35.500351+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7655,"target":8.91,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.854,"vwap":8.7908,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":-0.0352,"volatility":"unknown"},"price":8.854,"volume":{"bars":295,"last_bar_volume":57323.0,"baseline_avg":66515.35,"bar_rvol":0.861801,"raw_accel":-0.603748,"smooth_accel":0.264428,"accel_momentum":0.227649,"rvol_3bar":[1.233735,2.420231,0.861801],"trend_3bar":"MIXED","projected_rvol":1.1075},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":11831.0,"sell_vol":25696.0,"unclassified_vol":0.0,"imbalance":-0.369467,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.453968},"context":{"vwap":8.790679,"price_vs_vwap_pct":0.720321,"ema9":8.856751,"ema20":8.845551,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.961969,"dist_to_hod_atr":3.762193,"atr":0.022859,"spread_atr":0.437464,"own_change_pct":0.0655,"rel_strength_pct":{"SPY":0.002137,"IWM":0.037536}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.318407},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"403151ede1bf","ts":"2026-09-21T18:25:40.768916+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.3s / 18s","plan":{"state":"WATCH","setup":"","stop":8.7693,"target":8.91,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8579,"vwap":8.7908,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":-0.0264,"volatility":"unknown"},"price":8.8579,"volume":{"bars":295,"last_bar_volume":57323.0,"baseline_avg":66515.35,"bar_rvol":0.861801,"raw_accel":-0.603748,"smooth_accel":0.264428,"accel_momentum":0.227649,"rvol_3bar":[1.233735,2.420231,0.861801],"trend_3bar":"MIXED","projected_rvol":1.131539},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":17835.0,"sell_vol":15660.0,"unclassified_vol":0.0,"imbalance":0.064935,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.532105},"context":{"vwap":8.790679,"price_vs_vwap_pct":0.764687,"ema9":8.856751,"ema20":8.845551,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.918345,"dist_to_hod_atr":3.591582,"atr":0.022859,"spread_atr":0.437464,"own_change_pct":0.0655,"rel_strength_pct":{"SPY":0.002137,"IWM":0.037536}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.055961},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d566b91ef08f","ts":"2026-09-21T18:25:46.093482+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.6s / 18s","plan":{"state":"PASS","setup":"","stop":8.7709,"target":9.21,"target_label":"prev_day_high","reward_risk":3.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8595,"vwap":8.7908,"ext_from_open_pct":3.98,"max_ext_allowed_pct":4.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":-0.0228,"volatility":"unknown"},"price":8.8595,"volume":{"bars":295,"last_bar_volume":57323.0,"baseline_avg":66515.35,"bar_rvol":0.861801,"raw_accel":-0.603748,"smooth_accel":0.264428,"accel_momentum":0.227649,"rvol_3bar":[1.233735,2.420231,0.861801],"trend_3bar":"MIXED","projected_rvol":1.00799},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":17931.0,"sell_vol":6232.0,"unclassified_vol":0.0,"imbalance":0.48417,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":2.370802},"context":{"vwap":8.790679,"price_vs_vwap_pct":0.782888,"ema9":8.856751,"ema20":8.845551,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.900447,"dist_to_hod_atr":3.521588,"atr":0.022859,"spread_atr":0.437464,"own_change_pct":0.0655,"rel_strength_pct":{"SPY":0.002137,"IWM":0.037536}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.417258},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b63458fd7181","ts":"2026-09-21T18:25:51.263625+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.415,"target":7.775,"target_label":"range_20d_high","reward_risk":19.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4798,"vwap":6.382,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.12,"trend":"flat","recent_slope_pct":-0.0026,"volatility":"unknown"},"price":6.4798,"volume":{"bars":295,"last_bar_volume":10728.0,"baseline_avg":19655.4,"bar_rvol":0.545804,"raw_accel":-0.225191,"smooth_accel":1.121083,"accel_momentum":-0.689024,"rvol_3bar":[4.016859,0.71504,0.545804],"trend_3bar":"DECELERATING","projected_rvol":1.817375},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":12264.0,"sell_vol":1293.0,"unclassified_vol":0.0,"imbalance":0.80925,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":1.127337},"context":{"vwap":6.381892,"price_vs_vwap_pct":1.534151,"ema9":6.482959,"ema20":6.485398,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.463902,"dist_to_hod_atr":2.504936,"atr":0.012056,"spread_atr":0.829449,"own_change_pct":-0.077101,"rel_strength_pct":{"SPY":-0.140463,"IWM":-0.105065}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.441692},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"d4138456b9d2","ts":"2026-09-21T18:25:56.466657+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.382,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.119,"trend":"flat","recent_slope_pct":-0.0174,"volatility":"unknown"},"price":6.475,"volume":{"bars":295,"last_bar_volume":10728.0,"baseline_avg":19655.4,"bar_rvol":0.545804,"raw_accel":-0.225191,"smooth_accel":1.121083,"accel_momentum":-0.689024,"rvol_3bar":[4.016859,0.71504,0.545804],"trend_3bar":"DECELERATING","projected_rvol":1.654835},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":8716.0,"sell_vol":1090.0,"unclassified_vol":0.0,"imbalance":0.777687,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":6.330369},"context":{"vwap":6.381892,"price_vs_vwap_pct":1.458938,"ema9":6.482959,"ema20":6.485398,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.537634,"dist_to_hod_atr":2.903072,"atr":0.012056,"spread_atr":0.829449,"own_change_pct":-0.077101,"rel_strength_pct":{"SPY":-0.140463,"IWM":-0.105065}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.424465},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7b7803f03961","ts":"2026-09-21T18:25:56.466657+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7695,"target":8.91,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8581,"vwap":8.7908,"ext_from_open_pct":3.97,"max_ext_allowed_pct":3.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":-0.0259,"volatility":"unknown"},"price":8.8581,"volume":{"bars":295,"last_bar_volume":57323.0,"baseline_avg":66515.35,"bar_rvol":0.861801,"raw_accel":-0.603748,"smooth_accel":0.264428,"accel_momentum":0.227649,"rvol_3bar":[1.233735,2.420231,0.861801],"trend_3bar":"MIXED","projected_rvol":0.867691},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":13104.0,"sell_vol":1875.0,"unclassified_vol":0.0,"imbalance":0.74965,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.135251},"context":{"vwap":8.790679,"price_vs_vwap_pct":0.766962,"ema9":8.856751,"ema20":8.845551,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.916107,"dist_to_hod_atr":3.582833,"atr":0.022859,"spread_atr":0.437464,"own_change_pct":0.0655,"rel_strength_pct":{"SPY":0.002137,"IWM":0.037536}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.646049},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"96bd048167b4","ts":"2026-09-21T18:26:01.731236+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7661,"target":8.91,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8546,"vwap":8.7909,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.456,"trend":"flat","recent_slope_pct":-0.029,"volatility":"unknown"},"price":8.8546,"volume":{"bars":296,"last_bar_volume":59670.0,"baseline_avg":61898.85,"bar_rvol":0.963992,"raw_accel":0.040943,"smooth_accel":0.101306,"accel_momentum":-0.163122,"rvol_3bar":[2.420231,0.861801,0.963992],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":13016.0,"sell_vol":3807.0,"unclassified_vol":0.0,"imbalance":0.547405,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.723333},"context":{"vwap":8.790856,"price_vs_vwap_pct":0.725118,"ema9":8.856401,"ema20":8.846451,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.955257,"dist_to_hod_atr":3.83,"atr":0.022298,"spread_atr":0.448478,"own_change_pct":-0.144342,"rel_strength_pct":{"SPY":-0.202529,"IWM":-0.135605}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.527694},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0029651d22f3","ts":"2026-09-21T18:26:07.085593+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.53 below VWAP $13.53","plan":{"state":"PASS","setup":"","stop":13.3166,"target":14.0107,"target_label":"premarket_high","reward_risk":2.33,"pos_in_5d_range_pct":108.1,"room_to_5d_high_atr":-0.25},"price":13.525,"vwap":13.5292,"ext_from_open_pct":-2.77,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":-0.0295,"volatility":"high"},"price":13.525,"volume":{"bars":296,"last_bar_volume":69194.0,"baseline_avg":86909.85,"bar_rvol":0.796158,"raw_accel":-0.398642,"smooth_accel":0.118256,"accel_momentum":0.154497,"rvol_3bar":[2.188582,1.35949,0.796158],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":215,"trade_rate":7.166667,"buy_vol":40832.0,"sell_vol":28449.0,"unclassified_vol":0.0,"imbalance":0.178736,"bid":13.52,"ask":13.53,"spread_pct":0.073937,"quote_size_imbalance":null,"quote_age_s":0.080829},"context":{"vwap":13.529222,"price_vs_vwap_pct":-0.03121,"ema9":13.524293,"ema20":13.496722,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-3.254649,"dist_to_hod_atr":10.710838,"atr":0.04248,"spread_atr":0.235403,"own_change_pct":0.221976,"rel_strength_pct":{"SPY":0.163789,"IWM":0.230713}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.142302},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"d32667fc119c","ts":"2026-09-21T18:26:17.581141+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":13.3216,"target":14.0107,"target_label":"premarket_high","reward_risk":2.31,"pos_in_5d_range_pct":108.3,"room_to_5d_high_atr":-0.25},"price":13.53,"vwap":13.5292,"ext_from_open_pct":-2.73,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":-0.0222,"volatility":"high"},"price":13.53,"volume":{"bars":296,"last_bar_volume":69194.0,"baseline_avg":86909.85,"bar_rvol":0.796158,"raw_accel":-0.398642,"smooth_accel":0.118256,"accel_momentum":0.154497,"rvol_3bar":[2.188582,1.35949,0.796158],"trend_3bar":"DECELERATING","projected_rvol":3.240879},"flow":{"window_s":30,"trades":204,"trade_rate":6.8,"buy_vol":61236.0,"sell_vol":30369.0,"unclassified_vol":0.0,"imbalance":0.336958,"bid":13.53,"ask":13.54,"spread_pct":0.073883,"quote_size_imbalance":null,"quote_age_s":0.628313},"context":{"vwap":13.529222,"price_vs_vwap_pct":0.005747,"ema9":13.524293,"ema20":13.496722,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-3.218884,"dist_to_hod_atr":10.593137,"atr":0.04248,"spread_atr":0.235403,"own_change_pct":0.221976,"rel_strength_pct":{"SPY":0.163789,"IWM":0.230713}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.268272},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"bdb682a76846","ts":"2026-09-21T18:26:22.789260+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.53 below VWAP $13.53","plan":{"state":"PASS","setup":"","stop":13.3204,"target":14.0107,"target_label":"premarket_high","reward_risk":2.31,"pos_in_5d_range_pct":108.2,"room_to_5d_high_atr":-0.25},"price":13.5288,"vwap":13.5292,"ext_from_open_pct":-2.74,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":-0.0239,"volatility":"high"},"price":13.5288,"volume":{"bars":296,"last_bar_volume":69194.0,"baseline_avg":86909.85,"bar_rvol":0.796158,"raw_accel":-0.398642,"smooth_accel":0.118256,"accel_momentum":0.154497,"rvol_3bar":[2.188582,1.35949,0.796158],"trend_3bar":"DECELERATING","projected_rvol":2.747667},"flow":{"window_s":30,"trades":228,"trade_rate":7.6,"buy_vol":64075.0,"sell_vol":34579.0,"unclassified_vol":0.0,"imbalance":0.298984,"bid":13.52,"ask":13.53,"spread_pct":0.073937,"quote_size_imbalance":null,"quote_age_s":0.02106},"context":{"vwap":13.529222,"price_vs_vwap_pct":-0.003122,"ema9":13.524293,"ema20":13.496722,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-3.227468,"dist_to_hod_atr":10.621385,"atr":0.04248,"spread_atr":0.235403,"own_change_pct":0.221976,"rel_strength_pct":{"SPY":0.163789,"IWM":0.230713}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.238039},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"93020ad9ff39","ts":"2026-09-21T18:26:28.093617+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.9464,"target":8.16,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.1004,"vwap":8.0799,"ext_from_open_pct":-1.09,"max_ext_allowed_pct":3.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.0109,"volatility":"high"},"price":8.1004,"volume":{"bars":296,"last_bar_volume":726.0,"baseline_avg":2646.65,"bar_rvol":0.274309,"raw_accel":-0.365939,"smooth_accel":1.072094,"accel_momentum":0.000224,"rvol_3bar":[7.893786,0.411463,0.274309],"trend_3bar":"DECELERATING","projected_rvol":0.204159},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":243.0,"sell_vol":11.0,"unclassified_vol":0.0,"imbalance":0.913386,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":24.069955},"context":{"vwap":8.079862,"price_vs_vwap_pct":0.254187,"ema9":8.088806,"ema20":8.078007,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.322672,"dist_to_hod_atr":13.690699,"atr":0.020335,"spread_atr":0.491764,"own_change_pct":-0.027177,"rel_strength_pct":{"SPY":-0.085363,"IWM":-0.01844}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.25055},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"958d3fa93696","ts":"2026-09-21T18:26:28.093617+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":13.3224,"target":14.0107,"target_label":"premarket_high","reward_risk":2.3,"pos_in_5d_range_pct":108.3,"room_to_5d_high_atr":-0.25},"price":13.5308,"vwap":13.5292,"ext_from_open_pct":-2.73,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":-0.021,"volatility":"high"},"price":13.5308,"volume":{"bars":296,"last_bar_volume":69194.0,"baseline_avg":86909.85,"bar_rvol":0.796158,"raw_accel":-0.398642,"smooth_accel":0.118256,"accel_momentum":0.154497,"rvol_3bar":[2.188582,1.35949,0.796158],"trend_3bar":"DECELERATING","projected_rvol":2.381779},"flow":{"window_s":30,"trades":206,"trade_rate":6.866667,"buy_vol":63886.0,"sell_vol":36603.0,"unclassified_vol":0.0,"imbalance":0.271502,"bid":13.53,"ask":13.54,"spread_pct":0.073883,"quote_size_imbalance":null,"quote_age_s":0.615592},"context":{"vwap":13.529222,"price_vs_vwap_pct":0.01166,"ema9":13.524293,"ema20":13.496722,"ema_stack":true,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-3.213162,"dist_to_hod_atr":10.574304,"atr":0.04248,"spread_atr":0.235403,"own_change_pct":0.221976,"rel_strength_pct":{"SPY":0.163789,"IWM":0.230713}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.216159},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"ca842d00a44c","ts":"2026-09-21T18:26:33.223675+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.9397,"target":8.16,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":120.0,"room_to_5d_high_atr":-0.63},"price":8.0937,"vwap":8.0799,"ext_from_open_pct":-1.18,"max_ext_allowed_pct":3.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"high"},"price":8.0937,"volume":{"bars":296,"last_bar_volume":726.0,"baseline_avg":2646.65,"bar_rvol":0.274309,"raw_accel":-0.365939,"smooth_accel":1.072094,"accel_momentum":0.000224,"rvol_3bar":[7.893786,0.411463,0.274309],"trend_3bar":"DECELERATING","projected_rvol":0.402586},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":469.0,"sell_vol":121.0,"unclassified_vol":0.0,"imbalance":0.589831,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":2.656887},"context":{"vwap":8.079862,"price_vs_vwap_pct":0.171265,"ema9":8.088806,"ema20":8.078007,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.402635,"dist_to_hod_atr":14.02018,"atr":0.020335,"spread_atr":0.491764,"own_change_pct":-0.027177,"rel_strength_pct":{"SPY":-0.085363,"IWM":-0.01844}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.161796},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"dcb6becbc540","ts":"2026-09-21T18:26:33.223675+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7909,"ext_from_open_pct":3.93,"max_ext_allowed_pct":3.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":-0.0281,"volatility":"unknown"},"price":8.855,"volume":{"bars":296,"last_bar_volume":59670.0,"baseline_avg":61898.85,"bar_rvol":0.963992,"raw_accel":0.040943,"smooth_accel":0.101306,"accel_momentum":-0.163122,"rvol_3bar":[2.420231,0.861801,0.963992],"trend_3bar":"MIXED","projected_rvol":0.382756},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":11782.0,"sell_vol":1234.0,"unclassified_vol":0.0,"imbalance":0.810387,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.387745},"context":{"vwap":8.790856,"price_vs_vwap_pct":0.729668,"ema9":8.856401,"ema20":8.846451,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":3.812061,"atr":0.022298,"spread_atr":0.448478,"own_change_pct":-0.144342,"rel_strength_pct":{"SPY":-0.202529,"IWM":-0.135605}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.781207},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9f3aadc66793","ts":"2026-09-21T18:26:38.421109+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4634,"target":6.9095,"target_label":"ceiling","reward_risk":1.73,"pos_in_5d_range_pct":111.7,"room_to_5d_high_atr":-0.32},"price":6.6267,"vwap":6.5901,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":0.479,"trend":"flat","recent_slope_pct":-0.0388,"volatility":"high"},"price":6.6267,"volume":{"bars":294,"last_bar_volume":1099.0,"baseline_avg":2281.75,"bar_rvol":0.481648,"raw_accel":0.926591,"smooth_accel":1.112845,"accel_momentum":1.99324,"rvol_3bar":[0.055982,0.200291,0.481648],"trend_3bar":"ACCELERATING","projected_rvol":0.034905},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":51.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.62,"ask":6.63,"spread_pct":0.150943,"quote_size_imbalance":null,"quote_age_s":21.533439},"context":{"vwap":6.590132,"price_vs_vwap_pct":0.554893,"ema9":6.630969,"ema20":6.62878,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.514409,"dist_to_hod_atr":15.368003,"atr":0.020387,"spread_atr":0.49052,"own_change_pct":-0.266566,"rel_strength_pct":{"SPY":-0.324752,"IWM":-0.257829}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.481648},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"56f4f4d959f0","ts":"2026-09-21T18:26:38.421109+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7713,"target":9.21,"target_label":"prev_day_high","reward_risk":3.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8599,"vwap":8.7909,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":-0.017,"volatility":"unknown"},"price":8.8599,"volume":{"bars":296,"last_bar_volume":59670.0,"baseline_avg":61898.85,"bar_rvol":0.963992,"raw_accel":0.040943,"smooth_accel":0.101306,"accel_momentum":-0.163122,"rvol_3bar":[2.420231,0.861801,0.963992],"trend_3bar":"MIXED","projected_rvol":0.522819},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1394.0,"sell_vol":7262.0,"unclassified_vol":0.0,"imbalance":-0.677911,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.340524},"context":{"vwap":8.790856,"price_vs_vwap_pct":0.785408,"ema9":8.856401,"ema20":8.846451,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.895973,"dist_to_hod_atr":3.592307,"atr":0.022298,"spread_atr":0.448478,"own_change_pct":-0.144342,"rel_strength_pct":{"SPY":-0.202529,"IWM":-0.135605}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.653501},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6ff731e409af","ts":"2026-09-21T18:26:49.312918+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.9464,"target":8.16,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.1004,"vwap":8.0799,"ext_from_open_pct":-1.09,"max_ext_allowed_pct":4.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.0109,"volatility":"high"},"price":8.1004,"volume":{"bars":296,"last_bar_volume":726.0,"baseline_avg":2646.65,"bar_rvol":0.274309,"raw_accel":-0.365939,"smooth_accel":1.072094,"accel_momentum":0.000224,"rvol_3bar":[7.893786,0.411463,0.274309],"trend_3bar":"DECELERATING","projected_rvol":0.371454},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":473.0,"sell_vol":213.0,"unclassified_vol":0.0,"imbalance":0.379009,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":4.748722},"context":{"vwap":8.079862,"price_vs_vwap_pct":0.254187,"ema9":8.088806,"ema20":8.078007,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.322672,"dist_to_hod_atr":13.690699,"atr":0.020335,"spread_atr":0.491764,"own_change_pct":-0.027177,"rel_strength_pct":{"SPY":-0.085363,"IWM":-0.01844}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.103966},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"3381373a0e4f","ts":"2026-09-21T18:26:54.693489+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4667,"target":6.9095,"target_label":"ceiling","reward_risk":1.71,"pos_in_5d_range_pct":111.9,"room_to_5d_high_atr":-0.32},"price":6.63,"vwap":6.5902,"ext_from_open_pct":3.76,"max_ext_allowed_pct":3.0,"volume_pace":0.48,"trend":"flat","recent_slope_pct":-0.0288,"volatility":"high"},"price":6.63,"volume":{"bars":294,"last_bar_volume":1099.0,"baseline_avg":2281.75,"bar_rvol":0.481648,"raw_accel":0.926591,"smooth_accel":1.112845,"accel_momentum":1.99324,"rvol_3bar":[0.055982,0.200291,0.481648],"trend_3bar":"ACCELERATING","projected_rvol":1.899567},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":2250.0,"sell_vol":1700.0,"unclassified_vol":0.0,"imbalance":0.139241,"bid":6.61,"ask":6.63,"spread_pct":0.302115,"quote_size_imbalance":null,"quote_age_s":2.713832},"context":{"vwap":6.590132,"price_vs_vwap_pct":0.604968,"ema9":6.630969,"ema20":6.62878,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.466859,"dist_to_hod_atr":15.206131,"atr":0.020387,"spread_atr":0.981041,"own_change_pct":-0.266566,"rel_strength_pct":{"SPY":-0.324752,"IWM":-0.257829}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.067065},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"389ae84b7af1","ts":"2026-09-21T18:26:54.693489+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.9466,"target":8.16,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.1006,"vwap":8.0799,"ext_from_open_pct":-1.09,"max_ext_allowed_pct":4.0,"volume_pace":0.445,"trend":"flat","recent_slope_pct":0.0114,"volatility":"high"},"price":8.1006,"volume":{"bars":296,"last_bar_volume":726.0,"baseline_avg":2646.65,"bar_rvol":0.274309,"raw_accel":-0.365939,"smooth_accel":1.072094,"accel_momentum":0.000224,"rvol_3bar":[7.893786,0.411463,0.274309],"trend_3bar":"DECELERATING","projected_rvol":2.770069},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":6007.0,"sell_vol":449.0,"unclassified_vol":0.0,"imbalance":0.860905,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":0.008176},"context":{"vwap":8.079862,"price_vs_vwap_pct":0.256662,"ema9":8.088806,"ema20":8.078007,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.320285,"dist_to_hod_atr":13.680863,"atr":0.020335,"spread_atr":0.491764,"own_change_pct":-0.027177,"rel_strength_pct":{"SPY":-0.085363,"IWM":-0.01844}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.236154},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"9803e62e8a63","ts":"2026-09-21T18:26:54.693489+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.33,"target":11.57,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.49,"vwap":11.3235,"ext_from_open_pct":-0.95,"max_ext_allowed_pct":3.0,"volume_pace":0.434,"trend":"flat","recent_slope_pct":-0.1371,"volatility":"unknown"},"price":11.49,"volume":{"bars":270,"last_bar_volume":4.0,"baseline_avg":163.55,"bar_rvol":0.024457,"raw_accel":-0.902171,"smooth_accel":-0.555556,"accel_momentum":0.123856,"rvol_3bar":[0.589971,0.046674,0.024457],"trend_3bar":"DECELERATING","projected_rvol":0.650634},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":35.0,"sell_vol":58.0,"unclassified_vol":0.0,"imbalance":-0.247312,"bid":11.48,"ask":11.56,"spread_pct":0.694444,"quote_size_imbalance":null,"quote_age_s":17.159612},"context":{"vwap":11.323365,"price_vs_vwap_pct":1.471607,"ema9":11.518535,"ema20":11.492008,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-3.849372,"dist_to_hod_atr":11.689933,"atr":0.03935,"spread_atr":2.033032,"own_change_pct":-0.518583,"rel_strength_pct":{"SPY":-0.576769,"IWM":-0.509846}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.006049},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"92dd3209c1d7","ts":"2026-09-21T18:27:00.080731+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.791,"ext_from_open_pct":3.93,"max_ext_allowed_pct":3.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":-0.0281,"volatility":"unknown"},"price":8.855,"volume":{"bars":296,"last_bar_volume":59670.0,"baseline_avg":61898.85,"bar_rvol":0.963992,"raw_accel":0.040943,"smooth_accel":0.101306,"accel_momentum":-0.163122,"rvol_3bar":[2.420231,0.861801,0.963992],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":4045.0,"sell_vol":19253.0,"unclassified_vol":0.0,"imbalance":-0.65276,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.072773},"context":{"vwap":8.790856,"price_vs_vwap_pct":0.729668,"ema9":8.856401,"ema20":8.846451,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":3.812061,"atr":0.022298,"spread_atr":0.448478,"own_change_pct":-0.144342,"rel_strength_pct":{"SPY":-0.180543,"IWM":-0.118136}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.629255},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d51ff13702dc","ts":"2026-09-21T18:27:05.519936+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":11.94,"target":12.3078,"target_label":"clear air (typical 60-min move)","reward_risk":0.67,"pos_in_5d_range_pct":129.9,"room_to_5d_high_atr":-1.33},"price":12.16,"vwap":11.6607,"ext_from_open_pct":4.2,"max_ext_allowed_pct":4.0,"volume_pace":0.206,"trend":"flat","recent_slope_pct":0.1011,"volatility":"high"},"price":12.16,"volume":{"bars":297,"last_bar_volume":6910.0,"baseline_avg":11584.15,"bar_rvol":0.596505,"raw_accel":-0.435596,"smooth_accel":1.885661,"accel_momentum":1.430825,"rvol_3bar":[2.168462,1.093911,0.596505],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":2180.0,"sell_vol":1300.0,"unclassified_vol":0.0,"imbalance":0.252874,"bid":12.15,"ask":12.17,"spread_pct":0.164474,"quote_size_imbalance":null,"quote_age_s":3.064883},"context":{"vwap":11.660611,"price_vs_vwap_pct":4.282699,"ema9":12.078538,"ema20":12.028231,"ema_stack":true,"ema_warm":true,"hod":12.19,"dist_to_hod_pct":-0.246103,"dist_to_hod_atr":0.571621,"atr":0.052482,"spread_atr":0.381081,"own_change_pct":0.770574,"rel_strength_pct":{"SPY":0.734373,"IWM":0.79678}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.15084},"shadow":{"decision":"FAIL","failed":["bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"0ca9e39212f1","ts":"2026-09-21T18:27:05.519936+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.7694,"target":8.91,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.858,"vwap":8.791,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":-0.0334,"volatility":"unknown"},"price":8.858,"volume":{"bars":297,"last_bar_volume":36369.0,"baseline_avg":62913.95,"bar_rvol":0.578075,"raw_accel":-0.390498,"smooth_accel":-0.398321,"accel_momentum":-0.499627,"rvol_3bar":[0.861801,0.963992,0.578075],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":13765.0,"sell_vol":19205.0,"unclassified_vol":0.0,"imbalance":-0.164998,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":4.599349},"context":{"vwap":8.790961,"price_vs_vwap_pct":0.762594,"ema9":8.856121,"ema20":8.847265,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.917226,"dist_to_hod_atr":3.828333,"atr":0.021419,"spread_atr":0.46687,"own_change_pct":-0.169109,"rel_strength_pct":{"SPY":-0.20531,"IWM":-0.142903}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.095382},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"df2db34aafc5","ts":"2026-09-21T18:27:11.025170+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2672,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":4.0,"volume_pace":0.204,"trend":"flat","recent_slope_pct":0.014,"volatility":"medium"},"price":5.29,"volume":{"bars":296,"last_bar_volume":255.0,"baseline_avg":888.0,"bar_rvol":0.287162,"raw_accel":-0.89905,"smooth_accel":1.995064,"accel_momentum":0.377219,"rvol_3bar":[0.319001,3.297005,0.287162],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":138.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":0.135802,"bid":5.28,"ask":5.29,"spread_pct":0.189215,"quote_size_imbalance":null,"quote_age_s":0.007427},"context":{"vwap":5.267177,"price_vs_vwap_pct":0.433308,"ema9":5.281758,"ema20":5.278644,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.58061,"atr":0.006549,"spread_atr":1.52687,"own_change_pct":-0.090827,"rel_strength_pct":{"SPY":-0.127027,"IWM":-0.06462}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.038997},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"76923ede3b32","ts":"2026-09-21T18:27:16.376582+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7594,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.993,"trend":"flat","recent_slope_pct":0.0087,"volatility":"unknown"},"price":5.76,"volume":{"bars":297,"last_bar_volume":12711.0,"baseline_avg":22657.65,"bar_rvol":0.561003,"raw_accel":0.029481,"smooth_accel":-0.564471,"accel_momentum":-1.357744,"rvol_3bar":[0.650298,0.540006,0.561003],"trend_3bar":"MIXED","projected_rvol":0.785868},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":4966.0,"sell_vol":2068.0,"unclassified_vol":0.0,"imbalance":0.411999,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":1.504198},"context":{"vwap":5.759358,"price_vs_vwap_pct":0.011153,"ema9":5.768561,"ema20":5.76955,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":8.068283,"atr":0.013634,"spread_atr":0.73348,"own_change_pct":-0.032918,"rel_strength_pct":{"SPY":-0.069119,"IWM":-0.006711}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.231132},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d39025853e9b","ts":"2026-09-21T18:27:16.376582+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2223,"target":5.315,"target_label":"prev_day_high","reward_risk":0.61,"pos_in_5d_range_pct":95.3,"room_to_5d_high_atr":0.15},"price":5.28,"vwap":5.2672,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.204,"trend":"flat","recent_slope_pct":-0.0239,"volatility":"medium"},"price":5.28,"volume":{"bars":296,"last_bar_volume":255.0,"baseline_avg":888.0,"bar_rvol":0.287162,"raw_accel":-0.89905,"smooth_accel":1.995064,"accel_momentum":0.377219,"rvol_3bar":[0.319001,3.297005,0.287162],"trend_3bar":"MIXED","projected_rvol":1.468808},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":138.0,"sell_vol":318.0,"unclassified_vol":0.0,"imbalance":-0.394737,"bid":5.28,"ask":5.29,"spread_pct":0.189215,"quote_size_imbalance":null,"quote_age_s":5.358839},"context":{"vwap":5.267177,"price_vs_vwap_pct":0.243453,"ema9":5.281758,"ema20":5.278644,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.75188,"dist_to_hod_atr":6.10748,"atr":0.006549,"spread_atr":1.52687,"own_change_pct":-0.090827,"rel_strength_pct":{"SPY":-0.127027,"IWM":-0.06462}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.113353},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3f0647f94216","ts":"2026-09-21T18:27:21.707496+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 16.2s / 18s","plan":{"state":"PASS","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.791,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.455,"trend":"flat","recent_slope_pct":-0.0402,"volatility":"unknown"},"price":8.855,"volume":{"bars":297,"last_bar_volume":36369.0,"baseline_avg":62913.95,"bar_rvol":0.578075,"raw_accel":-0.390498,"smooth_accel":-0.398321,"accel_momentum":-0.499627,"rvol_3bar":[0.861801,0.963992,0.578075],"trend_3bar":"MIXED","projected_rvol":0.863291},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":21534.0,"sell_vol":3081.0,"unclassified_vol":0.0,"imbalance":0.749665,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.064311},"context":{"vwap":8.790961,"price_vs_vwap_pct":0.728468,"ema9":8.856121,"ema20":8.847265,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":3.968394,"atr":0.021419,"spread_atr":0.46687,"own_change_pct":-0.169109,"rel_strength_pct":{"SPY":-0.20531,"IWM":-0.142903}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.433363},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e4b702431fb2","ts":"2026-09-21T18:27:27.069165+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"held 32.4s, plan says PASS; stop 7.96, target 8.45 (premarket_high), R:R 2.17; target 0.33 away > ~0.11 reachable in 88 min","plan":{"state":"PASS","setup":"","stop":7.961,"target":8.45,"target_label":"premarket_high","reward_risk":2.17,"pos_in_5d_range_pct":121.1,"room_to_5d_high_atr":-0.67},"price":8.115,"vwap":8.0799,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":4.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.0563,"volatility":"high"},"price":8.115,"volume":{"bars":297,"last_bar_volume":6683.0,"baseline_avg":2613.2,"bar_rvol":2.557401,"raw_accel":8.205234,"smooth_accel":-0.635752,"accel_momentum":-1.707846,"rvol_3bar":[0.411463,0.274309,2.557401],"trend_3bar":"MIXED","projected_rvol":1.062808},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":980.0,"sell_vol":273.0,"unclassified_vol":0.0,"imbalance":0.564246,"bid":8.11,"ask":8.12,"spread_pct":0.123229,"quote_size_imbalance":null,"quote_age_s":2.174771},"context":{"vwap":8.07993,"price_vs_vwap_pct":0.434043,"ema9":8.091165,"ema20":8.080158,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.148422,"dist_to_hod_atr":12.839006,"atr":0.020547,"spread_atr":0.486695,"own_change_pct":0.132264,"rel_strength_pct":{"SPY":0.096063,"IWM":0.158471}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.443003},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"546676abfa1d","ts":"2026-09-21T18:27:27.069165+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7081,"target":6.07,"target_label":"range_20d_high","reward_risk":5.28,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7658,"vwap":5.7594,"ext_from_open_pct":4.08,"max_ext_allowed_pct":4.0,"volume_pace":0.992,"trend":"flat","recent_slope_pct":0.0288,"volatility":"unknown"},"price":5.7658,"volume":{"bars":297,"last_bar_volume":12711.0,"baseline_avg":22657.65,"bar_rvol":0.561003,"raw_accel":0.029481,"smooth_accel":-0.564471,"accel_momentum":-1.357744,"rvol_3bar":[0.650298,0.540006,0.561003],"trend_3bar":"MIXED","projected_rvol":0.790252},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":6057.0,"sell_vol":2811.0,"unclassified_vol":0.0,"imbalance":0.366035,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.921008},"context":{"vwap":5.759358,"price_vs_vwap_pct":0.111858,"ema9":5.768561,"ema20":5.76955,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.775128,"dist_to_hod_atr":7.642864,"atr":0.013634,"spread_atr":0.73348,"own_change_pct":-0.032918,"rel_strength_pct":{"SPY":-0.069119,"IWM":-0.006711}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.205347},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"53e73e36d1c1","ts":"2026-09-21T18:27:32.348808+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"held 37.7s, plan says WATCH; stop 7.95, target 8.16 (ceiling), R:R 0.39; selling not fading: red-bar volume 2.56x the advance (max 0.7); R:R 0.39 < 2.0 at 8.10; pullback: buy 8.08-8.10 holding + recla","plan":{"state":"WATCH","setup":"","stop":7.946,"target":8.16,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.1,"vwap":8.0799,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.0193,"volatility":"high"},"price":8.1,"volume":{"bars":297,"last_bar_volume":6683.0,"baseline_avg":2613.2,"bar_rvol":2.557401,"raw_accel":8.205234,"smooth_accel":-0.635752,"accel_momentum":-1.707846,"rvol_3bar":[0.411463,0.274309,2.557401],"trend_3bar":"MIXED","projected_rvol":1.244234},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1180.0,"sell_vol":573.0,"unclassified_vol":0.0,"imbalance":0.346264,"bid":8.1,"ask":8.11,"spread_pct":0.123381,"quote_size_imbalance":null,"quote_age_s":0.331403},"context":{"vwap":8.07993,"price_vs_vwap_pct":0.248398,"ema9":8.091165,"ema20":8.080158,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.327445,"dist_to_hod_atr":13.569048,"atr":0.020547,"spread_atr":0.486695,"own_change_pct":0.132264,"rel_strength_pct":{"SPY":0.096063,"IWM":0.158471}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.885535},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5e29fa41363d","ts":"2026-09-21T18:27:37.610264+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.24,"target":11.57,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.46,"vwap":11.3235,"ext_from_open_pct":-1.21,"max_ext_allowed_pct":3.0,"volume_pace":0.433,"trend":"flat","recent_slope_pct":-0.1912,"volatility":"unknown"},"price":11.46,"volume":{"bars":271,"last_bar_volume":97.0,"baseline_avg":161.35,"bar_rvol":0.601178,"raw_accel":1.40471,"smooth_accel":-0.113821,"accel_momentum":0.441734,"rvol_3bar":[0.046674,0.024457,0.601178],"trend_3bar":"MIXED","projected_rvol":0.059324},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":11.45,"ask":11.56,"spread_pct":0.956106,"quote_size_imbalance":null,"quote_age_s":3.90222},"context":{"vwap":11.323468,"price_vs_vwap_pct":1.205743,"ema9":11.512828,"ema20":11.491816,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.100418,"dist_to_hod_atr":12.002423,"atr":0.040825,"spread_atr":2.694422,"own_change_pct":-0.346921,"rel_strength_pct":{"SPY":-0.383122,"IWM":-0.320714}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.601178},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"013e040f72fe","ts":"2026-09-21T18:27:37.610264+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7686,"target":8.91,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8572,"vwap":8.791,"ext_from_open_pct":3.96,"max_ext_allowed_pct":3.0,"volume_pace":0.454,"trend":"flat","recent_slope_pct":-0.0352,"volatility":"unknown"},"price":8.8572,"volume":{"bars":297,"last_bar_volume":36369.0,"baseline_avg":62913.95,"bar_rvol":0.578075,"raw_accel":-0.390498,"smooth_accel":-0.398321,"accel_momentum":-0.499627,"rvol_3bar":[0.861801,0.963992,0.578075],"trend_3bar":"MIXED","projected_rvol":0.526513},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":10212.0,"sell_vol":828.0,"unclassified_vol":0.0,"imbalance":0.85,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.09553},"context":{"vwap":8.790961,"price_vs_vwap_pct":0.753493,"ema9":8.856121,"ema20":8.847265,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.926174,"dist_to_hod_atr":3.865682,"atr":0.021419,"spread_atr":0.46687,"own_change_pct":-0.169109,"rel_strength_pct":{"SPY":-0.20531,"IWM":-0.142903}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.491364},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0a873922fd48","ts":"2026-09-21T18:27:42.803910+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4662,"target":6.9,"target_label":"ceiling","reward_risk":1.66,"pos_in_5d_range_pct":111.9,"room_to_5d_high_atr":-0.32},"price":6.6295,"vwap":6.5902,"ext_from_open_pct":3.75,"max_ext_allowed_pct":4.0,"volume_pace":0.479,"trend":"flat","recent_slope_pct":-0.0133,"volatility":"high"},"price":6.6295,"volume":{"bars":295,"last_bar_volume":3951.0,"baseline_avg":2313.2,"bar_rvol":1.708024,"raw_accel":2.595086,"smooth_accel":19.924812,"accel_momentum":18.811967,"rvol_3bar":[0.200291,0.481648,1.708024],"trend_3bar":"ACCELERATING","projected_rvol":0.24239},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":200.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.61,"ask":6.63,"spread_pct":0.302115,"quote_size_imbalance":null,"quote_age_s":0.818352},"context":{"vwap":6.590195,"price_vs_vwap_pct":0.59642,"ema9":6.630775,"ema20":6.628896,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.474063,"dist_to_hod_atr":15.805854,"atr":0.019645,"spread_atr":1.01809,"own_change_pct":-0.030157,"rel_strength_pct":{"SPY":-0.066357,"IWM":-0.00395}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.708024},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b06ad703c1dd","ts":"2026-09-21T18:27:42.803910+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.791,"ext_from_open_pct":3.93,"max_ext_allowed_pct":3.0,"volume_pace":0.454,"trend":"flat","recent_slope_pct":-0.0402,"volatility":"unknown"},"price":8.855,"volume":{"bars":297,"last_bar_volume":36369.0,"baseline_avg":62913.95,"bar_rvol":0.578075,"raw_accel":-0.390498,"smooth_accel":-0.398321,"accel_momentum":-0.499627,"rvol_3bar":[0.861801,0.963992,0.578075],"trend_3bar":"MIXED","projected_rvol":0.467953},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":3421.0,"sell_vol":992.0,"unclassified_vol":0.0,"imbalance":0.550419,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.292565},"context":{"vwap":8.790961,"price_vs_vwap_pct":0.728468,"ema9":8.856121,"ema20":8.847265,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":3.968394,"atr":0.021419,"spread_atr":0.46687,"own_change_pct":-0.169109,"rel_strength_pct":{"SPY":-0.20531,"IWM":-0.142903}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.318184},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"85053ed1ea82","ts":"2026-09-21T18:27:48.008626+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.7687,"target":8.91,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8573,"vwap":8.791,"ext_from_open_pct":3.96,"max_ext_allowed_pct":4.0,"volume_pace":0.454,"trend":"flat","recent_slope_pct":-0.035,"volatility":"unknown"},"price":8.8573,"volume":{"bars":297,"last_bar_volume":36369.0,"baseline_avg":62913.95,"bar_rvol":0.578075,"raw_accel":-0.390498,"smooth_accel":-0.398321,"accel_momentum":-0.499627,"rvol_3bar":[0.861801,0.963992,0.578075],"trend_3bar":"MIXED","projected_rvol":0.42185},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":979.0,"sell_vol":1115.0,"unclassified_vol":0.0,"imbalance":-0.064947,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.767986},"context":{"vwap":8.790961,"price_vs_vwap_pct":0.754631,"ema9":8.856121,"ema20":8.847265,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.925056,"dist_to_hod_atr":3.861014,"atr":0.021419,"spread_atr":0.46687,"own_change_pct":-0.169109,"rel_strength_pct":{"SPY":-0.20531,"IWM":-0.142903}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.037545},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3020320c84ba","ts":"2026-09-21T18:27:53.313258+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.53 below VWAP $13.53","plan":{"state":"PASS","setup":"","stop":13.3166,"target":14.0107,"target_label":"premarket_high","reward_risk":2.33,"pos_in_5d_range_pct":108.1,"room_to_5d_high_atr":-0.25},"price":13.525,"vwap":13.5292,"ext_from_open_pct":-2.77,"max_ext_allowed_pct":3.0,"volume_pace":0.55,"trend":"flat","recent_slope_pct":-0.0566,"volatility":"high"},"price":13.525,"volume":{"bars":297,"last_bar_volume":133172.0,"baseline_avg":87436.45,"bar_rvol":1.523072,"raw_accel":0.924618,"smooth_accel":-0.18341,"accel_momentum":-0.301666,"rvol_3bar":[1.35949,0.796158,1.523072],"trend_3bar":"MIXED","projected_rvol":0.645047},"flow":{"window_s":30,"trades":215,"trade_rate":7.166667,"buy_vol":13204.0,"sell_vol":15647.0,"unclassified_vol":0.0,"imbalance":-0.084676,"bid":13.52,"ask":13.53,"spread_pct":0.073937,"quote_size_imbalance":null,"quote_age_s":0.056556},"context":{"vwap":13.529245,"price_vs_vwap_pct":-0.031374,"ema9":13.526094,"ema20":13.500205,"ema_stack":false,"ema_warm":true,"hod":13.98,"dist_to_hod_pct":-3.254649,"dist_to_hod_atr":10.875051,"atr":0.041839,"spread_atr":0.239012,"own_change_pct":0.098373,"rel_strength_pct":{"SPY":0.062172,"IWM":0.12458}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.128968},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"814622aeef68","ts":"2026-09-21T18:27:53.313258+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.3s / 18s","plan":{"state":"PASS","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.791,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.454,"trend":"flat","recent_slope_pct":-0.0402,"volatility":"unknown"},"price":8.855,"volume":{"bars":297,"last_bar_volume":36369.0,"baseline_avg":62913.95,"bar_rvol":0.578075,"raw_accel":-0.390498,"smooth_accel":-0.398321,"accel_momentum":-0.499627,"rvol_3bar":[0.861801,0.963992,0.578075],"trend_3bar":"MIXED","projected_rvol":0.385797},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1209.0,"sell_vol":608.0,"unclassified_vol":0.0,"imbalance":0.330765,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.089987},"context":{"vwap":8.790961,"price_vs_vwap_pct":0.728468,"ema9":8.856121,"ema20":8.847265,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":3.968394,"atr":0.021419,"spread_atr":0.46687,"own_change_pct":-0.169109,"rel_strength_pct":{"SPY":-0.20531,"IWM":-0.142903}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.191207},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d0e7e393f5ae","ts":"2026-09-21T18:27:58.592473+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4183,"target":7.775,"target_label":"range_20d_high","reward_risk":19.93,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4831,"vwap":6.3826,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":1.119,"trend":"flat","recent_slope_pct":-0.0102,"volatility":"unknown"},"price":6.4831,"volume":{"bars":297,"last_bar_volume":80026.0,"baseline_avg":19919.65,"bar_rvol":4.01744,"raw_accel":1.522808,"smooth_accel":0.19963,"accel_momentum":0.638649,"rvol_3bar":[0.545804,1.681759,4.01744],"trend_3bar":"ACCELERATING","projected_rvol":2.575729},"flow":{"window_s":30,"trades":109,"trade_rate":3.633333,"buy_vol":23359.0,"sell_vol":8036.0,"unclassified_vol":0.0,"imbalance":0.488071,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":2.661598},"context":{"vwap":6.38239,"price_vs_vwap_pct":1.577941,"ema9":6.478334,"ema20":6.482623,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.41321,"dist_to_hod_atr":2.142819,"atr":0.012554,"spread_atr":0.796587,"own_change_pct":-0.151235,"rel_strength_pct":{"SPY":-0.187435,"IWM":-0.125028}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.960797},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fb19a276fcac","ts":"2026-09-21T18:28:03.880990+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4097,"target":7.775,"target_label":"range_20d_high","reward_risk":20.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4744,"vwap":6.3827,"ext_from_open_pct":2.93,"max_ext_allowed_pct":3.0,"volume_pace":1.119,"trend":"flat","recent_slope_pct":0.0059,"volatility":"unknown"},"price":6.4744,"volume":{"bars":298,"last_bar_volume":59874.0,"baseline_avg":22763.3,"bar_rvol":2.630286,"raw_accel":-0.251818,"smooth_accel":0.854801,"accel_momentum":0.655171,"rvol_3bar":[1.681759,4.01744,2.630286],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":33174.0,"sell_vol":7427.0,"unclassified_vol":0.0,"imbalance":0.634147,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.140424},"context":{"vwap":6.38268,"price_vs_vwap_pct":1.437007,"ema9":6.479667,"ema20":6.48285,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.546851,"dist_to_hod_atr":2.796917,"atr":0.012728,"spread_atr":0.785651,"own_change_pct":0.057087,"rel_strength_pct":{"SPY":0.046102,"IWM":0.06757}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.667988},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a06e0c413f37","ts":"2026-09-21T18:28:09.181616+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4202,"target":7.775,"target_label":"range_20d_high","reward_risk":19.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.485,"vwap":6.3827,"ext_from_open_pct":3.1,"max_ext_allowed_pct":3.0,"volume_pace":1.119,"trend":"flat","recent_slope_pct":0.0386,"volatility":"unknown"},"price":6.485,"volume":{"bars":298,"last_bar_volume":59874.0,"baseline_avg":22763.3,"bar_rvol":2.630286,"raw_accel":-0.251818,"smooth_accel":0.854801,"accel_momentum":0.655171,"rvol_3bar":[1.681759,4.01744,2.630286],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":33204.0,"sell_vol":7221.0,"unclassified_vol":0.0,"imbalance":0.642746,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":4.745481},"context":{"vwap":6.38268,"price_vs_vwap_pct":1.603081,"ema9":6.479667,"ema20":6.48285,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.384025,"dist_to_hod_atr":1.964127,"atr":0.012728,"spread_atr":0.785651,"own_change_pct":0.057087,"rel_strength_pct":{"SPY":0.046102,"IWM":0.06757}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.690606},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e73aaaa8113e","ts":"2026-09-21T18:28:09.181616+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 21.2s, plan says WATCH; stop 8.77, target 8.91 (ceiling), R:R 0.59; selling not fading: red-bar volume 1.08x the advance (max 0.7); no reclaim yet (needs a close > 8.86); R:R 0.59 < 2.0 at 8.86; ","plan":{"state":"WATCH","setup":"","stop":8.7692,"target":8.91,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8578,"vwap":8.791,"ext_from_open_pct":3.96,"max_ext_allowed_pct":4.0,"volume_pace":0.454,"trend":"flat","recent_slope_pct":-0.0068,"volatility":"unknown"},"price":8.8578,"volume":{"bars":298,"last_bar_volume":21620.0,"baseline_avg":63943.8,"bar_rvol":0.338109,"raw_accel":-0.405538,"smooth_accel":-0.567689,"accel_momentum":-0.169368,"rvol_3bar":[0.963992,0.578075,0.338109],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":593.0,"sell_vol":313.0,"unclassified_vol":0.0,"imbalance":0.309051,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.382517},"context":{"vwap":8.791023,"price_vs_vwap_pct":0.759607,"ema9":8.855897,"ema20":8.848002,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.919463,"dist_to_hod_atr":3.989597,"atr":0.020604,"spread_atr":0.485352,"own_change_pct":-0.056433,"rel_strength_pct":{"SPY":-0.067419,"IWM":-0.04595}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.104493},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"09abb9aa44bd","ts":"2026-09-21T18:28:19.761011+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 31.8s, plan says PASS; stop 8.77, target 9.21 (prev_day_high), R:R 3.95; target 0.35 away > ~0.06 reachable in 87 min","plan":{"state":"PASS","setup":"","stop":8.7714,"target":9.21,"target_label":"prev_day_high","reward_risk":3.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.86,"vwap":8.791,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.453,"trend":"flat","recent_slope_pct":-0.0018,"volatility":"unknown"},"price":8.86,"volume":{"bars":298,"last_bar_volume":21620.0,"baseline_avg":63943.8,"bar_rvol":0.338109,"raw_accel":-0.405538,"smooth_accel":-0.567689,"accel_momentum":-0.169368,"rvol_3bar":[0.963992,0.578075,0.338109],"trend_3bar":"DECELERATING","projected_rvol":0.143543},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1078.0,"sell_vol":2267.0,"unclassified_vol":0.0,"imbalance":-0.355456,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.013727},"context":{"vwap":8.791023,"price_vs_vwap_pct":0.784632,"ema9":8.855897,"ema20":8.848002,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.894855,"dist_to_hod_atr":3.882819,"atr":0.020604,"spread_atr":0.485352,"own_change_pct":-0.056433,"rel_strength_pct":{"SPY":-0.067419,"IWM":-0.04595}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.120183},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"ae114a756869","ts":"2026-09-21T18:28:25.061858+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 37.1s, plan says WATCH; stop 8.77, target 8.91 (ceiling), R:R 0.62; selling not fading: red-bar volume 1.08x the advance (max 0.7); no reclaim yet (needs a close > 8.86); R:R 0.62 < 2.0 at 8.86; ","plan":{"state":"WATCH","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7911,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.453,"trend":"flat","recent_slope_pct":-0.0131,"volatility":"unknown"},"price":8.855,"volume":{"bars":298,"last_bar_volume":21620.0,"baseline_avg":63943.8,"bar_rvol":0.338109,"raw_accel":-0.405538,"smooth_accel":-0.567689,"accel_momentum":-0.169368,"rvol_3bar":[0.963992,0.578075,0.338109],"trend_3bar":"DECELERATING","projected_rvol":0.570703},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":12383.0,"sell_vol":2908.0,"unclassified_vol":0.0,"imbalance":0.619646,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.0218},"context":{"vwap":8.791023,"price_vs_vwap_pct":0.727756,"ema9":8.855897,"ema20":8.848002,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":4.125496,"atr":0.020604,"spread_atr":0.485352,"own_change_pct":-0.056433,"rel_strength_pct":{"SPY":-0.067419,"IWM":-0.04595}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.209508},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"8d97b2c26dc9","ts":"2026-09-21T18:28:30.368143+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.41,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4747,"vwap":6.3827,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.118,"trend":"flat","recent_slope_pct":0.0068,"volatility":"unknown"},"price":6.4747,"volume":{"bars":298,"last_bar_volume":59874.0,"baseline_avg":22763.3,"bar_rvol":2.630286,"raw_accel":-0.251818,"smooth_accel":0.854801,"accel_momentum":0.655171,"rvol_3bar":[1.681759,4.01744,2.630286],"trend_3bar":"MIXED","projected_rvol":0.928887},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1786.0,"sell_vol":8916.0,"unclassified_vol":0.0,"imbalance":-0.666231,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.360618},"context":{"vwap":6.38268,"price_vs_vwap_pct":1.441707,"ema9":6.479667,"ema20":6.48285,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.542243,"dist_to_hod_atr":2.773347,"atr":0.012728,"spread_atr":0.785651,"own_change_pct":0.057087,"rel_strength_pct":{"SPY":0.046102,"IWM":0.06757}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.752377},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7f6b00d6a79f","ts":"2026-09-21T18:28:30.368143+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 42.4s, plan says PASS; stop 8.77, target 9.21 (prev_day_high), R:R 3.97; target 0.35 away > ~0.06 reachable in 86 min","plan":{"state":"PASS","setup":"","stop":8.7699,"target":9.21,"target_label":"prev_day_high","reward_risk":3.97,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8585,"vwap":8.7911,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.453,"trend":"flat","recent_slope_pct":-0.0052,"volatility":"unknown"},"price":8.8585,"volume":{"bars":298,"last_bar_volume":21620.0,"baseline_avg":63943.8,"bar_rvol":0.338109,"raw_accel":-0.405538,"smooth_accel":-0.567689,"accel_momentum":-0.169368,"rvol_3bar":[0.963992,0.578075,0.338109],"trend_3bar":"DECELERATING","projected_rvol":0.503488},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":12342.0,"sell_vol":3953.0,"unclassified_vol":0.0,"imbalance":0.51482,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.360123},"context":{"vwap":8.791023,"price_vs_vwap_pct":0.767569,"ema9":8.855897,"ema20":8.848002,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.911633,"dist_to_hod_atr":3.955622,"atr":0.020604,"spread_atr":0.485352,"own_change_pct":-0.056433,"rel_strength_pct":{"SPY":-0.067419,"IWM":-0.04595}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.174066},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f2ea6ca76386","ts":"2026-09-21T18:28:35.734871+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3827,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.118,"trend":"flat","recent_slope_pct":0.0232,"volatility":"unknown"},"price":6.48,"volume":{"bars":298,"last_bar_volume":59874.0,"baseline_avg":22763.3,"bar_rvol":2.630286,"raw_accel":-0.251818,"smooth_accel":0.854801,"accel_momentum":0.655171,"rvol_3bar":[1.681759,4.01744,2.630286],"trend_3bar":"MIXED","projected_rvol":0.799933},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1625.0,"sell_vol":8764.0,"unclassified_vol":0.0,"imbalance":-0.687169,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":4.235007},"context":{"vwap":6.38268,"price_vs_vwap_pct":1.524744,"ema9":6.479667,"ema20":6.48285,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.356952,"atr":0.012728,"spread_atr":0.785651,"own_change_pct":0.057087,"rel_strength_pct":{"SPY":0.046102,"IWM":0.06757}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.807452},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8a1a016b726a","ts":"2026-09-21T18:28:41.056003+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7594,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.99,"trend":"flat","recent_slope_pct":-0.0156,"volatility":"unknown"},"price":5.76,"volume":{"bars":298,"last_bar_volume":23052.0,"baseline_avg":22723.5,"bar_rvol":1.014456,"raw_accel":0.813547,"smooth_accel":-0.424218,"accel_momentum":0.140252,"rvol_3bar":[0.540006,0.561003,1.014456],"trend_3bar":"ACCELERATING","projected_rvol":0.989264},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":5670.0,"sell_vol":3705.0,"unclassified_vol":0.0,"imbalance":0.2096,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.125871},"context":{"vwap":5.759365,"price_vs_vwap_pct":0.011022,"ema9":5.768849,"ema20":5.769592,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":8.22486,"atr":0.013374,"spread_atr":0.747715,"own_change_pct":-0.027722,"rel_strength_pct":{"SPY":-0.038708,"IWM":-0.017239}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.21263},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fdb08e76b39f","ts":"2026-09-21T18:28:41.056003+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 53.0s, plan says WATCH; stop 8.77, target 8.91 (ceiling), R:R 0.62; selling not fading: red-bar volume 1.08x the advance (max 0.7); no reclaim yet (needs a close > 8.86); R:R 0.62 < 2.0 at 8.86; ","plan":{"state":"WATCH","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7911,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.453,"trend":"flat","recent_slope_pct":-0.0131,"volatility":"unknown"},"price":8.855,"volume":{"bars":298,"last_bar_volume":21620.0,"baseline_avg":63943.8,"bar_rvol":0.338109,"raw_accel":-0.405538,"smooth_accel":-0.567689,"accel_momentum":-0.169368,"rvol_3bar":[0.963992,0.578075,0.338109],"trend_3bar":"DECELERATING","projected_rvol":0.414082},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":11836.0,"sell_vol":5534.0,"unclassified_vol":0.0,"imbalance":0.362809,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":2.69218},"context":{"vwap":8.791023,"price_vs_vwap_pct":0.727756,"ema9":8.855897,"ema20":8.848002,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":4.125496,"atr":0.020604,"spread_atr":0.485352,"own_change_pct":-0.056433,"rel_strength_pct":{"SPY":-0.067419,"IWM":-0.04595}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.122669},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"515ad81a369b","ts":"2026-09-21T18:28:46.373280+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7073,"target":6.07,"target_label":"range_20d_high","reward_risk":5.29,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.765,"vwap":5.7594,"ext_from_open_pct":4.06,"max_ext_allowed_pct":4.0,"volume_pace":0.989,"trend":"flat","recent_slope_pct":0.0017,"volatility":"unknown"},"price":5.765,"volume":{"bars":298,"last_bar_volume":23052.0,"baseline_avg":22723.5,"bar_rvol":1.014456,"raw_accel":0.813547,"smooth_accel":-0.424218,"accel_momentum":0.140252,"rvol_3bar":[0.540006,0.561003,1.014456],"trend_3bar":"ACCELERATING","projected_rvol":1.025069},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":5973.0,"sell_vol":5913.0,"unclassified_vol":0.0,"imbalance":0.005048,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.116433},"context":{"vwap":5.759365,"price_vs_vwap_pct":0.097837,"ema9":5.768849,"ema20":5.769592,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.788756,"dist_to_hod_atr":7.851003,"atr":0.013374,"spread_atr":0.747715,"own_change_pct":-0.027722,"rel_strength_pct":{"SPY":-0.038708,"IWM":-0.017239}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.005121},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"428f0f0d209a","ts":"2026-09-21T18:28:46.373280+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7911,"ext_from_open_pct":3.93,"max_ext_allowed_pct":3.0,"volume_pace":0.453,"trend":"flat","recent_slope_pct":-0.0131,"volatility":"unknown"},"price":8.855,"volume":{"bars":298,"last_bar_volume":21620.0,"baseline_avg":63943.8,"bar_rvol":0.338109,"raw_accel":-0.405538,"smooth_accel":-0.567689,"accel_momentum":-0.169368,"rvol_3bar":[0.963992,0.578075,0.338109],"trend_3bar":"DECELERATING","projected_rvol":0.521313},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":11880.0,"sell_vol":13072.0,"unclassified_vol":0.0,"imbalance":-0.047772,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.345603},"context":{"vwap":8.791023,"price_vs_vwap_pct":0.727756,"ema9":8.855897,"ema20":8.848002,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":4.125496,"atr":0.020604,"spread_atr":0.485352,"own_change_pct":-0.056433,"rel_strength_pct":{"SPY":-0.067419,"IWM":-0.04595}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.016152},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"15777a6f1161","ts":"2026-09-21T18:28:56.943063+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4749,"vwap":6.3827,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.117,"trend":"flat","recent_slope_pct":0.0074,"volatility":"unknown"},"price":6.4749,"volume":{"bars":298,"last_bar_volume":59874.0,"baseline_avg":22763.3,"bar_rvol":2.630286,"raw_accel":-0.251818,"smooth_accel":0.854801,"accel_momentum":0.655171,"rvol_3bar":[1.681759,4.01744,2.630286],"trend_3bar":"MIXED","projected_rvol":0.666743},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":848.0,"sell_vol":2881.0,"unclassified_vol":0.0,"imbalance":-0.545186,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.788303},"context":{"vwap":6.38268,"price_vs_vwap_pct":1.44484,"ema9":6.479667,"ema20":6.48285,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.539171,"dist_to_hod_atr":2.757634,"atr":0.012728,"spread_atr":0.785651,"own_change_pct":0.057087,"rel_strength_pct":{"SPY":0.046102,"IWM":0.06757}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.433996},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0b0463e6cff3","ts":"2026-09-21T18:29:02.282260+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3514,"target":8.82,"target_label":"prev_day_high","reward_risk":0.16,"pos_in_5d_range_pct":78.1,"room_to_5d_high_atr":0.37},"price":8.755,"vwap":8.7092,"ext_from_open_pct":0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.535,"trend":"flat","recent_slope_pct":-0.0246,"volatility":"medium"},"price":8.755,"volume":{"bars":299,"last_bar_volume":12608.0,"baseline_avg":5942.15,"bar_rvol":2.121791,"raw_accel":2.963533,"smooth_accel":-0.068816,"accel_momentum":-0.089595,"rvol_3bar":[2.382292,0.532697,2.121791],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":6817.0,"sell_vol":1633.0,"unclassified_vol":0.0,"imbalance":0.613491,"bid":8.75,"ask":8.76,"spread_pct":0.11422,"quote_size_imbalance":null,"quote_age_s":10.838459},"context":{"vwap":8.709196,"price_vs_vwap_pct":0.525921,"ema9":8.767646,"ema20":8.781296,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.516602,"dist_to_hod_atr":14.600849,"atr":0.021855,"spread_atr":0.457563,"own_change_pct":-0.407513,"rel_strength_pct":{"SPY":-0.420435,"IWM":-0.407513}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.3017},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"79c8cf676f1f","ts":"2026-09-21T18:29:02.282260+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4156,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4804,"vwap":6.3828,"ext_from_open_pct":3.03,"max_ext_allowed_pct":3.0,"volume_pace":1.116,"trend":"flat","recent_slope_pct":0.0394,"volatility":"unknown"},"price":6.4804,"volume":{"bars":299,"last_bar_volume":14922.0,"baseline_avg":24215.0,"bar_rvol":0.61623,"raw_accel":-0.750777,"smooth_accel":1.750191,"accel_momentum":0.89539,"rvol_3bar":[4.01744,2.630286,0.61623],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":873.0,"sell_vol":3307.0,"unclassified_vol":0.0,"imbalance":-0.582297,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.015725},"context":{"vwap":6.382752,"price_vs_vwap_pct":1.529865,"ema9":6.478714,"ema20":6.482093,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.454685,"dist_to_hod_atr":2.288644,"atr":0.012933,"spread_atr":0.773191,"own_change_pct":-0.101828,"rel_strength_pct":{"SPY":-0.114751,"IWM":-0.101828}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.358828},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"d895298f65db","ts":"2026-09-21T18:29:02.282260+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.91,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7911,"ext_from_open_pct":3.81,"max_ext_allowed_pct":3.0,"volume_pace":0.453,"trend":"flat","recent_slope_pct":-0.0212,"volatility":"unknown"},"price":8.845,"volume":{"bars":299,"last_bar_volume":45116.0,"baseline_avg":60986.95,"bar_rvol":0.739765,"raw_accel":1.086772,"smooth_accel":-0.605952,"accel_momentum":-0.038263,"rvol_3bar":[0.578075,0.338109,0.739765],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":5936.0,"sell_vol":23848.0,"unclassified_vol":0.0,"imbalance":-0.601397,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.527256},"context":{"vwap":8.791146,"price_vs_vwap_pct":0.612592,"ema9":8.855957,"ema20":8.848782,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":4.620517,"atr":0.02056,"spread_atr":0.48637,"own_change_pct":-0.154455,"rel_strength_pct":{"SPY":-0.167378,"IWM":-0.154455}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.444892},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7c35da72d37b","ts":"2026-09-21T18:29:07.671217+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4122,"target":7.775,"target_label":"range_20d_high","reward_risk":20.04,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.477,"vwap":6.3828,"ext_from_open_pct":2.97,"max_ext_allowed_pct":3.0,"volume_pace":1.116,"trend":"flat","recent_slope_pct":0.0289,"volatility":"unknown"},"price":6.477,"volume":{"bars":299,"last_bar_volume":14922.0,"baseline_avg":24215.0,"bar_rvol":0.61623,"raw_accel":-0.750777,"smooth_accel":1.750191,"accel_momentum":0.89539,"rvol_3bar":[4.01744,2.630286,0.61623],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1958.0,"sell_vol":3602.0,"unclassified_vol":0.0,"imbalance":-0.295683,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.35239},"context":{"vwap":6.382752,"price_vs_vwap_pct":1.476597,"ema9":6.478714,"ema20":6.482093,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.506912,"dist_to_hod_atr":2.551529,"atr":0.012933,"spread_atr":0.773191,"own_change_pct":-0.101828,"rel_strength_pct":{"SPY":-0.114751,"IWM":-0.101828}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.182209},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"4ba9fe3f05b7","ts":"2026-09-21T18:29:12.963949+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3828,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.116,"trend":"flat","recent_slope_pct":0.0381,"volatility":"unknown"},"price":6.48,"volume":{"bars":299,"last_bar_volume":14922.0,"baseline_avg":24215.0,"bar_rvol":0.61623,"raw_accel":-0.750777,"smooth_accel":1.750191,"accel_momentum":0.89539,"rvol_3bar":[4.01744,2.630286,0.61623],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":2742.0,"sell_vol":1539.0,"unclassified_vol":0.0,"imbalance":0.281009,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.355172},"context":{"vwap":6.382752,"price_vs_vwap_pct":1.523598,"ema9":6.478714,"ema20":6.482093,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.319572,"atr":0.012933,"spread_atr":0.773191,"own_change_pct":-0.101828,"rel_strength_pct":{"SPY":-0.114751,"IWM":-0.101828}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.173166},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b1a9e2552609","ts":"2026-09-21T18:29:18.219851+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.91,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7912,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.453,"trend":"flat","recent_slope_pct":-0.0212,"volatility":"unknown"},"price":8.845,"volume":{"bars":299,"last_bar_volume":45116.0,"baseline_avg":60986.95,"bar_rvol":0.739765,"raw_accel":1.086772,"smooth_accel":-0.605952,"accel_momentum":-0.038263,"rvol_3bar":[0.578075,0.338109,0.739765],"trend_3bar":"MIXED","projected_rvol":0.257458},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":7774.0,"sell_vol":14845.0,"unclassified_vol":0.0,"imbalance":-0.312613,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.157503},"context":{"vwap":8.791146,"price_vs_vwap_pct":0.612592,"ema9":8.855957,"ema20":8.848782,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":4.620517,"atr":0.02056,"spread_atr":0.48637,"own_change_pct":-0.154455,"rel_strength_pct":{"SPY":-0.167378,"IWM":-0.154455}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.23126},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4d2b5e2af226","ts":"2026-09-21T18:29:23.530870+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7594,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.988,"trend":"flat","recent_slope_pct":-0.0354,"volatility":"unknown"},"price":5.76,"volume":{"bars":299,"last_bar_volume":19444.0,"baseline_avg":22866.45,"bar_rvol":0.850329,"raw_accel":-0.156516,"smooth_accel":-0.36396,"accel_momentum":0.060258,"rvol_3bar":[0.561003,1.014456,0.850329],"trend_3bar":"MIXED","projected_rvol":0.802204},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":5813.0,"sell_vol":2484.0,"unclassified_vol":0.0,"imbalance":0.401229,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.095947},"context":{"vwap":5.759371,"price_vs_vwap_pct":0.010925,"ema9":5.768599,"ema20":5.769403,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":8.375795,"atr":0.013133,"spread_atr":0.761436,"own_change_pct":0.131944,"rel_strength_pct":{"SPY":0.119022,"IWM":0.131944}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.341177},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f7ae7b490f54","ts":"2026-09-21T18:29:28.772038+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3829,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.116,"trend":"flat","recent_slope_pct":0.0227,"volatility":"unknown"},"price":6.475,"volume":{"bars":299,"last_bar_volume":14922.0,"baseline_avg":24215.0,"bar_rvol":0.61623,"raw_accel":-0.750777,"smooth_accel":1.750191,"accel_momentum":0.89539,"rvol_3bar":[4.01744,2.630286,0.61623],"trend_3bar":"DECELERATING","projected_rvol":1.957989},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":4938.0,"sell_vol":17798.0,"unclassified_vol":0.0,"imbalance":-0.565623,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.354327},"context":{"vwap":6.382752,"price_vs_vwap_pct":1.445262,"ema9":6.478714,"ema20":6.482093,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.537634,"dist_to_hod_atr":2.706167,"atr":0.012933,"spread_atr":0.773191,"own_change_pct":-0.101828,"rel_strength_pct":{"SPY":-0.114751,"IWM":-0.101828}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.348554},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b260fef5b53d","ts":"2026-09-21T18:29:33.976445+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7088,"target":6.07,"target_label":"range_20d_high","reward_risk":5.26,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7665,"vwap":5.7594,"ext_from_open_pct":4.09,"max_ext_allowed_pct":4.0,"volume_pace":0.987,"trend":"flat","recent_slope_pct":-0.0128,"volatility":"unknown"},"price":5.7665,"volume":{"bars":299,"last_bar_volume":19444.0,"baseline_avg":22866.45,"bar_rvol":0.850329,"raw_accel":-0.156516,"smooth_accel":-0.36396,"accel_momentum":0.060258,"rvol_3bar":[0.561003,1.014456,0.850329],"trend_3bar":"MIXED","projected_rvol":1.102197},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":5331.0,"sell_vol":7031.0,"unclassified_vol":0.0,"imbalance":-0.137518,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.418869},"context":{"vwap":5.759371,"price_vs_vwap_pct":0.123784,"ema9":5.768599,"ema20":5.769403,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.763203,"dist_to_hod_atr":7.880862,"atr":0.013133,"spread_atr":0.761436,"own_change_pct":0.131944,"rel_strength_pct":{"SPY":0.119022,"IWM":0.131944}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.116936},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"91e5a08ee0e5","ts":"2026-09-21T18:29:39.325138+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":6.4858,"target":6.8689,"target_label":"ceiling","reward_risk":1.35,"pos_in_5d_range_pct":113.0,"room_to_5d_high_atr":-0.35},"price":6.6491,"vwap":6.5905,"ext_from_open_pct":4.05,"max_ext_allowed_pct":4.0,"volume_pace":0.479,"trend":"flat","recent_slope_pct":0.0883,"volatility":"high"},"price":6.6491,"volume":{"bars":297,"last_bar_volume":12734.0,"baseline_avg":2212.35,"bar_rvol":5.75587,"raw_accel":5.06381,"smooth_accel":9.673295,"accel_momentum":1.459378,"rvol_3bar":[1.708024,0.973597,5.75587],"trend_3bar":"MIXED","projected_rvol":0.138619},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":201.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.63,"ask":6.65,"spread_pct":0.301205,"quote_size_imbalance":null,"quote_age_s":4.061894},"context":{"vwap":6.590503,"price_vs_vwap_pct":0.889118,"ema9":6.631496,"ema20":6.629573,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.191643,"dist_to_hod_atr":15.286141,"atr":0.01903,"spread_atr":1.050955,"own_change_pct":0.054287,"rel_strength_pct":{"SPY":0.041365,"IWM":0.054287}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":5.75587},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"911f01ae575c","ts":"2026-09-21T18:30:00.427137+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":11.9941,"target":12.3486,"target_label":"clear air (typical 60-min move)","reward_risk":0.73,"pos_in_5d_range_pct":131.0,"room_to_5d_high_atr":-1.38},"price":12.1986,"vwap":11.6647,"ext_from_open_pct":4.53,"max_ext_allowed_pct":4.0,"volume_pace":0.206,"trend":"flat","recent_slope_pct":0.2021,"volatility":"high"},"price":12.1986,"volume":{"bars":300,"last_bar_volume":13477.0,"baseline_avg":8949.5,"bar_rvol":1.505894,"raw_accel":2.486032,"smooth_accel":-0.405916,"accel_momentum":0.170447,"rvol_3bar":[0.6678,0.378332,1.505894],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":7331.0,"sell_vol":3459.0,"unclassified_vol":0.0,"imbalance":0.358851,"bid":12.26,"ask":12.29,"spread_pct":0.244399,"quote_size_imbalance":null,"quote_age_s":0.390867},"context":{"vwap":11.66467,"price_vs_vwap_pct":4.577323,"ema9":12.161572,"ema20":12.08441,"ema_stack":true,"ema_warm":true,"hod":12.29,"dist_to_hod_pct":-0.743694,"dist_to_hod_atr":1.339425,"atr":0.068238,"spread_atr":0.439636,"own_change_pct":1.069079,"rel_strength_pct":{"SPY":1.064556,"IWM":1.067332}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.540391},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0f5ae732c33e","ts":"2026-09-21T18:30:00.427137+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.6231,"target":8.76,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":129.2,"room_to_5d_high_atr":-0.92},"price":8.725,"vwap":8.6418,"ext_from_open_pct":1.22,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":-0.0337,"volatility":"medium"},"price":8.725,"volume":{"bars":300,"last_bar_volume":3177.0,"baseline_avg":1709.05,"bar_rvol":1.858927,"raw_accel":-0.120432,"smooth_accel":-0.077733,"accel_momentum":0.179289,"rvol_3bar":[1.090793,2.275276,1.858927],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":896.0,"sell_vol":2289.0,"unclassified_vol":0.0,"imbalance":-0.437363,"bid":8.72,"ask":8.73,"spread_pct":0.114613,"quote_size_imbalance":null,"quote_age_s":0.155516},"context":{"vwap":8.641807,"price_vs_vwap_pct":0.962684,"ema9":8.734678,"ema20":8.731086,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.495446,"dist_to_hod_atr":23.454975,"atr":0.00952,"spread_atr":1.05038,"own_change_pct":-0.066387,"rel_strength_pct":{"SPY":-0.07091,"IWM":-0.068134}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.813025},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f4a1f88d229b","ts":"2026-09-21T18:30:00.427137+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 42.2s, plan says WATCH; stop 8.77, target 8.91 (ceiling), R:R 0.62; selling not fading: red-bar volume 0.86x the advance (max 0.7); no reclaim yet (needs a close > 8.86); R:R 0.62 < 2.0 at 8.86; ","plan":{"state":"WATCH","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7913,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.453,"trend":"flat","recent_slope_pct":0.0,"volatility":"unknown"},"price":8.855,"volume":{"bars":300,"last_bar_volume":50998.0,"baseline_avg":58768.75,"bar_rvol":0.867774,"raw_accel":0.130375,"smooth_accel":-0.232313,"accel_momentum":0.373639,"rvol_3bar":[0.338109,0.739765,0.867774],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":187,"trade_rate":6.233333,"buy_vol":34874.0,"sell_vol":9754.0,"unclassified_vol":0.0,"imbalance":0.562875,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.419044},"context":{"vwap":8.791288,"price_vs_vwap_pct":0.72472,"ema9":8.855766,"ema20":8.849374,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":4.071353,"atr":0.020878,"spread_atr":0.478983,"own_change_pct":-0.065457,"rel_strength_pct":{"SPY":-0.06998,"IWM":-0.067204}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.488449},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"23184ea6752f","ts":"2026-09-21T18:30:05.936676+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 47.7s, plan says PASS; stop 8.77, target 9.21 (prev_day_high), R:R 3.95; target 0.35 away > ~0.06 reachable in 85 min","plan":{"state":"PASS","setup":"","stop":8.7714,"target":9.21,"target_label":"prev_day_high","reward_risk":3.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.86,"vwap":8.7913,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.453,"trend":"flat","recent_slope_pct":0.0113,"volatility":"unknown"},"price":8.86,"volume":{"bars":300,"last_bar_volume":50998.0,"baseline_avg":58768.75,"bar_rvol":0.867774,"raw_accel":0.130375,"smooth_accel":-0.232313,"accel_momentum":0.373639,"rvol_3bar":[0.338109,0.739765,0.867774],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":187,"trade_rate":6.233333,"buy_vol":34757.0,"sell_vol":9834.0,"unclassified_vol":0.0,"imbalance":0.558924,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.292529},"context":{"vwap":8.791288,"price_vs_vwap_pct":0.781595,"ema9":8.855766,"ema20":8.849374,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.894855,"dist_to_hod_atr":3.831862,"atr":0.020878,"spread_atr":0.478983,"own_change_pct":-0.065457,"rel_strength_pct":{"SPY":-0.06998,"IWM":-0.067204}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.48502},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f6d964482ce4","ts":"2026-09-21T18:30:11.352820+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2673,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.204,"trend":"flat","recent_slope_pct":0.0399,"volatility":"medium"},"price":5.29,"volume":{"bars":299,"last_bar_volume":135.0,"baseline_avg":844.4,"bar_rvol":0.159877,"raw_accel":-0.88898,"smooth_accel":-0.346737,"accel_momentum":-0.022621,"rvol_3bar":[0.730832,1.501791,0.159877],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":357.0,"sell_vol":116.0,"unclassified_vol":0.0,"imbalance":0.509514,"bid":5.28,"ask":5.29,"spread_pct":0.189215,"quote_size_imbalance":null,"quote_age_s":1.084468},"context":{"vwap":5.267278,"price_vs_vwap_pct":0.431389,"ema9":5.283199,"ema20":5.280207,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.581245,"atr":0.006548,"spread_atr":1.527082,"own_change_pct":0.011354,"rel_strength_pct":{"SPY":0.006831,"IWM":0.009607}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.081459},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"13efe0b1948a","ts":"2026-09-21T18:30:16.610957+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7594,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.986,"trend":"flat","recent_slope_pct":-0.0404,"volatility":"unknown"},"price":5.76,"volume":{"bars":300,"last_bar_volume":19793.0,"baseline_avg":22776.5,"bar_rvol":0.86901,"raw_accel":0.017949,"smooth_accel":0.563871,"accel_momentum":0.927831,"rvol_3bar":[1.014456,0.850329,0.86901],"trend_3bar":"MIXED","projected_rvol":1.982347},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":14154.0,"sell_vol":2084.0,"unclassified_vol":0.0,"imbalance":0.743318,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.138711},"context":{"vwap":5.759376,"price_vs_vwap_pct":0.01083,"ema9":5.768219,"ema20":5.769145,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":8.520996,"atr":0.012909,"spread_atr":0.774636,"own_change_pct":0.029488,"rel_strength_pct":{"SPY":0.024965,"IWM":0.027741}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.645951},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"392662da15aa","ts":"2026-09-21T18:30:16.610957+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 58.4s, plan says WATCH; stop 8.77, target 8.91 (ceiling), R:R 0.62; selling not fading: red-bar volume 0.86x the advance (max 0.7); no reclaim yet (needs a close > 8.86); R:R 0.62 < 2.0 at 8.86; ","plan":{"state":"WATCH","setup":"","stop":8.7666,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8552,"vwap":8.7913,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.452,"trend":"flat","recent_slope_pct":0.0005,"volatility":"unknown"},"price":8.8552,"volume":{"bars":300,"last_bar_volume":50998.0,"baseline_avg":58768.75,"bar_rvol":0.867774,"raw_accel":0.130375,"smooth_accel":-0.232313,"accel_momentum":0.373639,"rvol_3bar":[0.338109,0.739765,0.867774],"trend_3bar":"ACCELERATING","projected_rvol":0.39926},"flow":{"window_s":30,"trades":129,"trade_rate":4.3,"buy_vol":14341.0,"sell_vol":14339.0,"unclassified_vol":0.0,"imbalance":7e-05,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.149913},"context":{"vwap":8.791288,"price_vs_vwap_pct":0.726995,"ema9":8.855766,"ema20":8.849374,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.948546,"dist_to_hod_atr":4.061773,"atr":0.020878,"spread_atr":0.478983,"own_change_pct":-0.065457,"rel_strength_pct":{"SPY":-0.06998,"IWM":-0.067204}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":6.1e-05},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4852de8b8455","ts":"2026-09-21T18:30:21.866423+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $5.54 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":5.7098,"target":6.07,"target_label":"range_20d_high","reward_risk":5.24,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7675,"vwap":5.7594,"ext_from_open_pct":4.11,"max_ext_allowed_pct":4.0,"volume_pace":0.986,"trend":"flat","recent_slope_pct":-0.0144,"volatility":"unknown"},"price":5.7675,"volume":{"bars":300,"last_bar_volume":19793.0,"baseline_avg":22776.5,"bar_rvol":0.86901,"raw_accel":0.017949,"smooth_accel":0.563871,"accel_momentum":0.927831,"rvol_3bar":[1.014456,0.850329,0.86901],"trend_3bar":"MIXED","projected_rvol":1.663358},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":14676.0,"sell_vol":1985.0,"unclassified_vol":0.0,"imbalance":0.761719,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.991303},"context":{"vwap":5.759376,"price_vs_vwap_pct":0.141052,"ema9":5.768219,"ema20":5.769145,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.746167,"dist_to_hod_atr":7.940019,"atr":0.012909,"spread_atr":0.774636,"own_change_pct":0.029488,"rel_strength_pct":{"SPY":0.024965,"IWM":0.027741}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.661941},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c575e40186b9","ts":"2026-09-21T18:30:21.866423+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2246,"target":5.315,"target_label":"prev_day_high","reward_risk":0.57,"pos_in_5d_range_pct":95.6,"room_to_5d_high_atr":0.14},"price":5.2823,"vwap":5.2673,"ext_from_open_pct":-0.71,"max_ext_allowed_pct":3.0,"volume_pace":0.204,"trend":"flat","recent_slope_pct":0.0108,"volatility":"medium"},"price":5.2823,"volume":{"bars":299,"last_bar_volume":135.0,"baseline_avg":844.4,"bar_rvol":0.159877,"raw_accel":-0.88898,"smooth_accel":-0.346737,"accel_momentum":-0.022621,"rvol_3bar":[0.730832,1.501791,0.159877],"trend_3bar":"MIXED","projected_rvol":1.34532},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":369.0,"sell_vol":147.0,"unclassified_vol":0.0,"imbalance":0.430233,"bid":5.28,"ask":5.29,"spread_pct":0.189215,"quote_size_imbalance":null,"quote_age_s":1.29071},"context":{"vwap":5.267278,"price_vs_vwap_pct":0.285203,"ema9":5.283199,"ema20":5.280207,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.708647,"dist_to_hod_atr":5.757098,"atr":0.006548,"spread_atr":1.527082,"own_change_pct":0.011354,"rel_strength_pct":{"SPY":0.006831,"IWM":0.009607}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.068784},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a2a7ca5b735f","ts":"2026-09-21T18:30:27.166928+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 68.9s, plan says PASS; stop 8.77, target 9.21 (prev_day_high), R:R 3.95; target 0.35 away > ~0.06 reachable in 85 min","plan":{"state":"PASS","setup":"","stop":8.7714,"target":9.21,"target_label":"prev_day_high","reward_risk":3.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.86,"vwap":8.7913,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.452,"trend":"flat","recent_slope_pct":0.0113,"volatility":"unknown"},"price":8.86,"volume":{"bars":300,"last_bar_volume":50998.0,"baseline_avg":58768.75,"bar_rvol":0.867774,"raw_accel":0.130375,"smooth_accel":-0.232313,"accel_momentum":0.373639,"rvol_3bar":[0.338109,0.739765,0.867774],"trend_3bar":"ACCELERATING","projected_rvol":0.255699},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2248.0,"sell_vol":4835.0,"unclassified_vol":0.0,"imbalance":-0.365241,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.521199},"context":{"vwap":8.791288,"price_vs_vwap_pct":0.781595,"ema9":8.855766,"ema20":8.849374,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.894855,"dist_to_hod_atr":3.831862,"atr":0.020878,"spread_atr":0.478983,"own_change_pct":-0.065457,"rel_strength_pct":{"SPY":-0.06998,"IWM":-0.067204}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.316946},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dda157e85648","ts":"2026-09-21T18:30:37.871896+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 79.7s, plan says WATCH; stop 8.77, target 8.91 (ceiling), R:R 0.62; selling not fading: red-bar volume 0.86x the advance (max 0.7); no reclaim yet (needs a close > 8.86); R:R 0.62 < 2.0 at 8.86; ","plan":{"state":"WATCH","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7914,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.452,"trend":"flat","recent_slope_pct":0.0,"volatility":"unknown"},"price":8.855,"volume":{"bars":300,"last_bar_volume":50998.0,"baseline_avg":58768.75,"bar_rvol":0.867774,"raw_accel":0.130375,"smooth_accel":-0.232313,"accel_momentum":0.373639,"rvol_3bar":[0.338109,0.739765,0.867774],"trend_3bar":"ACCELERATING","projected_rvol":0.6798},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":14068.0,"sell_vol":9884.0,"unclassified_vol":0.0,"imbalance":0.174683,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.208685},"context":{"vwap":8.791288,"price_vs_vwap_pct":0.72472,"ema9":8.855766,"ema20":8.849374,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":4.071353,"atr":0.020878,"spread_atr":0.478983,"own_change_pct":-0.065457,"rel_strength_pct":{"SPY":-0.06998,"IWM":-0.067204}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.151585},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b2f31b0100fb","ts":"2026-09-21T18:30:43.197226+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 85.0s, plan says PASS; stop 8.76, target 8.91 (ceiling), R:R 0.68; target 0.06 away > ~0.06 reachable in 84 min","plan":{"state":"PASS","setup":"","stop":8.7615,"target":8.91,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.85,"vwap":8.7914,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":0.452,"trend":"flat","recent_slope_pct":-0.0113,"volatility":"unknown"},"price":8.85,"volume":{"bars":300,"last_bar_volume":50998.0,"baseline_avg":58768.75,"bar_rvol":0.867774,"raw_accel":0.130375,"smooth_accel":-0.232313,"accel_momentum":0.373639,"rvol_3bar":[0.338109,0.739765,0.867774],"trend_3bar":"ACCELERATING","projected_rvol":0.609632},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":14217.0,"sell_vol":5711.0,"unclassified_vol":0.0,"imbalance":0.426837,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.978127},"context":{"vwap":8.791288,"price_vs_vwap_pct":0.667846,"ema9":8.855766,"ema20":8.849374,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.006711,"dist_to_hod_atr":4.310844,"atr":0.020878,"spread_atr":0.478983,"own_change_pct":-0.065457,"rel_strength_pct":{"SPY":-0.06998,"IWM":-0.067204}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.370398},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d38eed795328","ts":"2026-09-21T18:30:48.556748+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 90.3s, plan says WATCH; stop 8.77, target 8.91 (ceiling), R:R 0.62; selling not fading: red-bar volume 0.86x the advance (max 0.7); no reclaim yet (needs a close > 8.86); R:R 0.62 < 2.0 at 8.86; ","plan":{"state":"WATCH","setup":"","stop":8.7665,"target":8.91,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7914,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":0.452,"trend":"flat","recent_slope_pct":0.0,"volatility":"unknown"},"price":8.855,"volume":{"bars":300,"last_bar_volume":50998.0,"baseline_avg":58768.75,"bar_rvol":0.867774,"raw_accel":0.130375,"smooth_accel":-0.232313,"accel_momentum":0.373639,"rvol_3bar":[0.338109,0.739765,0.867774],"trend_3bar":"ACCELERATING","projected_rvol":0.546905},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":13804.0,"sell_vol":5605.0,"unclassified_vol":0.0,"imbalance":0.422433,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.0629},"context":{"vwap":8.791288,"price_vs_vwap_pct":0.72472,"ema9":8.855766,"ema20":8.849374,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":4.071353,"atr":0.020878,"spread_atr":0.478983,"own_change_pct":-0.065457,"rel_strength_pct":{"SPY":-0.06998,"IWM":-0.067204}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.366576},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5c577ed6a786","ts":"2026-09-21T18:31:04.406228+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.6231,"target":8.76,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":129.2,"room_to_5d_high_atr":-0.92},"price":8.725,"vwap":8.6419,"ext_from_open_pct":1.22,"max_ext_allowed_pct":3.0,"volume_pace":0.672,"trend":"flat","recent_slope_pct":-0.0387,"volatility":"medium"},"price":8.725,"volume":{"bars":301,"last_bar_volume":450.0,"baseline_avg":1851.8,"bar_rvol":0.243007,"raw_accel":-0.858357,"smooth_accel":0.926803,"accel_momentum":1.004536,"rvol_3bar":[2.275276,1.858927,0.243007],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":51.0,"sell_vol":191.0,"unclassified_vol":0.0,"imbalance":-0.578512,"bid":8.72,"ask":8.73,"spread_pct":0.114613,"quote_size_imbalance":null,"quote_age_s":8.058884},"context":{"vwap":8.641845,"price_vs_vwap_pct":0.962241,"ema9":8.732742,"ema20":8.730506,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.495446,"dist_to_hod_atr":23.74363,"atr":0.009405,"spread_atr":1.063306,"own_change_pct":-0.119056,"rel_strength_pct":{"SPY":-0.125517,"IWM":-0.152259}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.140582},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"4a962839fada","ts":"2026-09-21T18:31:04.406228+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 106.2s, plan says PASS; stop 8.76, target 8.91 (ceiling), R:R 0.64; R:R 0.64 < 2.0 at 8.85; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.7649,"target":8.91,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8534,"vwap":8.7914,"ext_from_open_pct":3.91,"max_ext_allowed_pct":4.0,"volume_pace":0.452,"trend":"flat","recent_slope_pct":-0.005,"volatility":"unknown"},"price":8.8534,"volume":{"bars":301,"last_bar_volume":26154.0,"baseline_avg":61096.65,"bar_rvol":0.428076,"raw_accel":-0.487156,"smooth_accel":0.039173,"accel_momentum":0.271486,"rvol_3bar":[0.739765,0.867774,0.428076],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":9406.0,"sell_vol":306.0,"unclassified_vol":0.0,"imbalance":0.936985,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":0.3564},"context":{"vwap":8.791362,"price_vs_vwap_pct":0.705669,"ema9":8.855613,"ema20":8.84991,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.96868,"dist_to_hod_atr":4.308327,"atr":0.020101,"spread_atr":0.497497,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.006461,"IWM":-0.033203}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.401101},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3e2b70347fb9","ts":"2026-09-21T18:31:20.084781+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.6291,"target":8.76,"target_label":"premarket_high","reward_risk":0.28,"pos_in_5d_range_pct":129.7,"room_to_5d_high_atr":-0.93},"price":8.731,"vwap":8.642,"ext_from_open_pct":1.29,"max_ext_allowed_pct":3.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":-0.025,"volatility":"medium"},"price":8.731,"volume":{"bars":301,"last_bar_volume":450.0,"baseline_avg":1851.8,"bar_rvol":0.243007,"raw_accel":-0.858357,"smooth_accel":0.926803,"accel_momentum":1.004536,"rvol_3bar":[2.275276,1.858927,0.243007],"trend_3bar":"DECELERATING","projected_rvol":2.894093},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":844.0,"sell_vol":952.0,"unclassified_vol":0.0,"imbalance":-0.060134,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":4.616302},"context":{"vwap":8.641845,"price_vs_vwap_pct":1.031671,"ema9":8.732742,"ema20":8.730506,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.428394,"dist_to_hod_atr":23.105646,"atr":0.009405,"spread_atr":1.063306,"own_change_pct":-0.119056,"rel_strength_pct":{"SPY":-0.125517,"IWM":-0.152259}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.014613},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f0d6cb565ce0","ts":"2026-09-21T18:31:20.084781+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7615,"target":8.91,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.85,"vwap":8.7914,"ext_from_open_pct":3.87,"max_ext_allowed_pct":3.0,"volume_pace":0.451,"trend":"flat","recent_slope_pct":-0.0126,"volatility":"unknown"},"price":8.85,"volume":{"bars":301,"last_bar_volume":26154.0,"baseline_avg":61096.65,"bar_rvol":0.428076,"raw_accel":-0.487156,"smooth_accel":0.039173,"accel_momentum":0.271486,"rvol_3bar":[0.739765,0.867774,0.428076],"trend_3bar":"MIXED","projected_rvol":0.302173},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":746.0,"sell_vol":5577.0,"unclassified_vol":0.0,"imbalance":-0.764036,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":3.210144},"context":{"vwap":8.791362,"price_vs_vwap_pct":0.666994,"ema9":8.855613,"ema20":8.84991,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.006711,"dist_to_hod_atr":4.477476,"atr":0.020101,"spread_atr":0.497497,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.006461,"IWM":-0.033203}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.327065},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2f2ca592f956","ts":"2026-09-21T18:31:41.220103+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7653,"target":8.91,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8538,"vwap":8.7914,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":0.451,"trend":"flat","recent_slope_pct":-0.0041,"volatility":"unknown"},"price":8.8538,"volume":{"bars":301,"last_bar_volume":26154.0,"baseline_avg":61096.65,"bar_rvol":0.428076,"raw_accel":-0.487156,"smooth_accel":0.039173,"accel_momentum":0.271486,"rvol_3bar":[0.739765,0.867774,0.428076],"trend_3bar":"MIXED","projected_rvol":0.774894},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":14746.0,"sell_vol":17167.0,"unclassified_vol":0.0,"imbalance":-0.075863,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":2.738255},"context":{"vwap":8.791362,"price_vs_vwap_pct":0.710219,"ema9":8.855613,"ema20":8.84991,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.964206,"dist_to_hod_atr":4.288427,"atr":0.020101,"spread_atr":0.497497,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.006461,"IWM":-0.033203}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.032475},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f43d6a6db606","ts":"2026-09-21T18:31:46.404350+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"held 291.7s, plan says PASS; stop 7.96, target 8.45 (premarket_high), R:R 2.19; target 0.34 away > ~0.10 reachable in 83 min","plan":{"state":"PASS","setup":"","stop":7.9588,"target":8.45,"target_label":"premarket_high","reward_risk":2.19,"pos_in_5d_range_pct":121.0,"room_to_5d_high_atr":-0.66},"price":8.1128,"vwap":8.08,"ext_from_open_pct":-0.94,"max_ext_allowed_pct":3.0,"volume_pace":0.439,"trend":"flat","recent_slope_pct":0.0132,"volatility":"high"},"price":8.1128,"volume":{"bars":301,"last_bar_volume":916.0,"baseline_avg":2899.9,"bar_rvol":0.315873,"raw_accel":-0.567721,"smooth_accel":-0.593917,"accel_momentum":-0.128521,"rvol_3bar":[0.243726,0.75506,0.315873],"trend_3bar":"MIXED","projected_rvol":0.925183},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1458.0,"sell_vol":584.0,"unclassified_vol":0.0,"imbalance":0.428012,"bid":8.11,"ask":8.12,"spread_pct":0.123229,"quote_size_imbalance":null,"quote_age_s":1.722376},"context":{"vwap":8.079991,"price_vs_vwap_pct":0.406051,"ema9":8.100016,"ema20":8.088735,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.174679,"dist_to_hod_atr":14.418411,"atr":0.018449,"spread_atr":0.542046,"own_change_pct":0.212535,"rel_strength_pct":{"SPY":0.206073,"IWM":0.179331}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.135197},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"be35391b1fa6","ts":"2026-09-21T18:31:56.732103+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"held 302.0s, plan says WATCH; stop 7.95, target 8.16 (ceiling), R:R 0.39; selling not fading: red-bar volume 2.40x the advance (max 0.7); imbalance -99% still heavy selling; no reclaim yet (needs a cl","plan":{"state":"WATCH","setup":"","stop":7.9466,"target":8.16,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":120.3,"room_to_5d_high_atr":-0.64},"price":8.1006,"vwap":8.08,"ext_from_open_pct":-1.09,"max_ext_allowed_pct":3.0,"volume_pace":0.439,"trend":"flat","recent_slope_pct":-0.0169,"volatility":"high"},"price":8.1006,"volume":{"bars":301,"last_bar_volume":916.0,"baseline_avg":2899.9,"bar_rvol":0.315873,"raw_accel":-0.567721,"smooth_accel":-0.593917,"accel_momentum":-0.128521,"rvol_3bar":[0.243726,0.75506,0.315873],"trend_3bar":"MIXED","projected_rvol":0.799064},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":630.0,"sell_vol":599.0,"unclassified_vol":0.0,"imbalance":0.025224,"bid":8.11,"ask":8.12,"spread_pct":0.123229,"quote_size_imbalance":null,"quote_age_s":8.479376},"context":{"vwap":8.079991,"price_vs_vwap_pct":0.25506,"ema9":8.100016,"ema20":8.088735,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.320285,"dist_to_hod_atr":15.079707,"atr":0.018449,"spread_atr":0.542046,"own_change_pct":0.212535,"rel_strength_pct":{"SPY":0.206073,"IWM":0.179331}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.007968},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"03233a79a4a2","ts":"2026-09-21T18:32:01.975524+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.0875,"target":12.4555,"target_label":"clear air (typical 60-min move)","reward_risk":0.69,"pos_in_5d_range_pct":133.9,"room_to_5d_high_atr":-1.51},"price":12.305,"vwap":11.6688,"ext_from_open_pct":5.44,"max_ext_allowed_pct":3.0,"volume_pace":0.206,"trend":"flat","recent_slope_pct":0.118,"volatility":"high"},"price":12.305,"volume":{"bars":302,"last_bar_volume":12245.0,"baseline_avg":8688.45,"bar_rvol":1.409342,"raw_accel":0.16797,"smooth_accel":0.961641,"accel_momentum":0.924635,"rvol_3bar":[1.505894,1.172058,1.409342],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":6561.0,"sell_vol":5137.0,"unclassified_vol":0.0,"imbalance":0.12173,"bid":12.3,"ask":12.31,"spread_pct":0.081268,"quote_size_imbalance":null,"quote_age_s":1.966835},"context":{"vwap":11.668734,"price_vs_vwap_pct":5.452743,"ema9":12.210806,"ema20":12.123134,"ema_stack":true,"ema_warm":true,"hod":12.305,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.070606,"spread_atr":0.14163,"own_change_pct":1.50379,"rel_strength_pct":{"SPY":1.506375,"IWM":1.493305}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.17156},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c0c7d984f621","ts":"2026-09-21T18:32:12.431659+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.6185,"target":8.76,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":128.9,"room_to_5d_high_atr":-0.91},"price":8.7204,"vwap":8.642,"ext_from_open_pct":1.16,"max_ext_allowed_pct":3.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":-0.0538,"volatility":"medium"},"price":8.7204,"volume":{"bars":302,"last_bar_volume":2262.0,"baseline_avg":1827.6,"bar_rvol":1.237689,"raw_accel":3.950755,"smooth_accel":-0.098576,"accel_momentum":-1.02538,"rvol_3bar":[1.858927,0.243007,1.237689],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":75.0,"sell_vol":342.0,"unclassified_vol":0.0,"imbalance":-0.640288,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":10.527875},"context":{"vwap":8.642013,"price_vs_vwap_pct":0.90704,"ema9":8.728194,"ema20":8.728553,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.546852,"dist_to_hod_atr":21.799648,"atr":0.010454,"spread_atr":0.956544,"own_change_pct":-0.301043,"rel_strength_pct":{"SPY":-0.298458,"IWM":-0.311528}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.792477},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7d4a25edb79c","ts":"2026-09-21T18:32:22.839578+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.6058,"target":8.76,"target_label":"premarket_high","reward_risk":0.51,"pos_in_5d_range_pct":127.9,"room_to_5d_high_atr":-0.88},"price":8.7077,"vwap":8.6421,"ext_from_open_pct":1.02,"max_ext_allowed_pct":3.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":-0.0829,"volatility":"medium"},"price":8.7077,"volume":{"bars":302,"last_bar_volume":2262.0,"baseline_avg":1827.6,"bar_rvol":1.237689,"raw_accel":3.950755,"smooth_accel":-0.098576,"accel_momentum":-1.02538,"rvol_3bar":[1.858927,0.243007,1.237689],"trend_3bar":"MIXED","projected_rvol":1.17868},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":403.0,"sell_vol":510.0,"unclassified_vol":0.0,"imbalance":-0.117196,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":1.24849},"context":{"vwap":8.642013,"price_vs_vwap_pct":0.760083,"ema9":8.728194,"ema20":8.728553,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.688779,"dist_to_hod_atr":23.014459,"atr":0.010454,"spread_atr":0.956544,"own_change_pct":-0.301043,"rel_strength_pct":{"SPY":-0.298458,"IWM":-0.311528}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.145052},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"aef475c1cd4f","ts":"2026-09-21T18:32:54.560690+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3832,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.108,"trend":"flat","recent_slope_pct":0.0039,"volatility":"unknown"},"price":6.48,"volume":{"bars":302,"last_bar_volume":42277.0,"baseline_avg":24625.5,"bar_rvol":1.716798,"raw_accel":1.810597,"smooth_accel":-0.405789,"accel_momentum":0.217556,"rvol_3bar":[1.434513,0.608757,1.716798],"trend_3bar":"MIXED","projected_rvol":0.693339},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":4548.0,"sell_vol":7689.0,"unclassified_vol":0.0,"imbalance":-0.256681,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.380951},"context":{"vwap":6.383177,"price_vs_vwap_pct":1.516845,"ema9":6.476759,"ema20":6.480263,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.314002,"atr":0.012965,"spread_atr":0.771334,"own_change_pct":-0.003091,"rel_strength_pct":{"SPY":-0.000506,"IWM":-0.013577}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.440669},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a1f429efe2f3","ts":"2026-09-21T18:32:59.745985+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4083,"target":7.775,"target_label":"range_20d_high","reward_risk":20.11,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.473,"vwap":6.3832,"ext_from_open_pct":2.91,"max_ext_allowed_pct":3.0,"volume_pace":1.108,"trend":"flat","recent_slope_pct":-0.0178,"volatility":"unknown"},"price":6.473,"volume":{"bars":302,"last_bar_volume":42277.0,"baseline_avg":24625.5,"bar_rvol":1.716798,"raw_accel":1.810597,"smooth_accel":-0.405789,"accel_momentum":0.217556,"rvol_3bar":[1.434513,0.608757,1.716798],"trend_3bar":"MIXED","projected_rvol":0.645196},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":4432.0,"sell_vol":7781.0,"unclassified_vol":0.0,"imbalance":-0.274216,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.167572},"context":{"vwap":6.383177,"price_vs_vwap_pct":1.407181,"ema9":6.476759,"ema20":6.480263,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.568356,"dist_to_hod_atr":2.853936,"atr":0.012965,"spread_atr":0.771334,"own_change_pct":-0.003091,"rel_strength_pct":{"SPY":-0.000506,"IWM":-0.013577}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.470773},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a5a0c18b0c4c","ts":"2026-09-21T18:33:15.243691+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3514,"target":8.82,"target_label":"prev_day_high","reward_risk":0.22,"pos_in_5d_range_pct":75.3,"room_to_5d_high_atr":0.41},"price":8.735,"vwap":8.7094,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":0.53,"trend":"flat","recent_slope_pct":-0.0975,"volatility":"medium"},"price":8.735,"volume":{"bars":303,"last_bar_volume":903.0,"baseline_avg":6223.5,"bar_rvol":0.145095,"raw_accel":-0.664312,"smooth_accel":-0.539113,"accel_momentum":0.072086,"rvol_3bar":[0.901189,0.438797,0.145095],"trend_3bar":"DECELERATING","projected_rvol":3.692877},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1145.0,"sell_vol":4695.0,"unclassified_vol":0.0,"imbalance":-0.607877,"bid":8.73,"ask":8.74,"spread_pct":0.114482,"quote_size_imbalance":null,"quote_age_s":1.221016},"context":{"vwap":8.709327,"price_vs_vwap_pct":0.294772,"ema9":8.760001,"ema20":8.772932,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.73701,"dist_to_hod_atr":15.148585,"atr":0.022385,"spread_atr":0.446729,"own_change_pct":0.009148,"rel_strength_pct":{"SPY":0.030471,"IWM":0.012643}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.0882},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"d66763a27696","ts":"2026-09-21T18:33:56.940040+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4747,"target":6.95,"target_label":"premarket_high","reward_risk":1.91,"pos_in_5d_range_pct":112.4,"room_to_5d_high_atr":-0.33},"price":6.638,"vwap":6.5906,"ext_from_open_pct":3.88,"max_ext_allowed_pct":4.0,"volume_pace":0.473,"trend":"flat","recent_slope_pct":-0.0206,"volatility":"high"},"price":6.638,"volume":{"bars":301,"last_bar_volume":4025.0,"baseline_avg":2228.25,"bar_rvol":1.80635,"raw_accel":6.225401,"smooth_accel":-0.713129,"accel_momentum":0.249873,"rvol_3bar":[0.019289,0.115413,1.80635],"trend_3bar":"ACCELERATING","projected_rvol":0.45824},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":29.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":8.241352},"context":{"vwap":6.590584,"price_vs_vwap_pct":0.719454,"ema9":6.635581,"ema20":6.632604,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.351585,"dist_to_hod_atr":17.151887,"atr":0.017607,"spread_atr":1.70383,"own_change_pct":0.075415,"rel_strength_pct":{"SPY":0.096737,"IWM":0.078909}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.80635},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"916abcf5963e","ts":"2026-09-21T18:34:02.105651+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6319,"target":8.82,"target_label":"prev_day_high","reward_risk":0.73,"pos_in_5d_range_pct":76.1,"room_to_5d_high_atr":0.4},"price":8.7408,"vwap":8.7094,"ext_from_open_pct":0.24,"max_ext_allowed_pct":3.0,"volume_pace":0.529,"trend":"flat","recent_slope_pct":-0.0676,"volatility":"medium"},"price":8.7408,"volume":{"bars":304,"last_bar_volume":8800.0,"baseline_avg":6093.25,"bar_rvol":1.444221,"raw_accel":4.776884,"smooth_accel":-0.428552,"accel_momentum":0.110561,"rvol_3bar":[0.438797,0.145095,1.444221],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":168.0,"sell_vol":1768.0,"unclassified_vol":0.0,"imbalance":-0.826446,"bid":8.74,"ask":8.75,"spread_pct":0.114351,"quote_size_imbalance":null,"quote_age_s":3.643514},"context":{"vwap":8.709394,"price_vs_vwap_pct":0.360598,"ema9":8.756,"ema20":8.769796,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.673092,"dist_to_hod_atr":14.464169,"atr":0.023043,"spread_atr":0.433968,"own_change_pct":-0.105152,"rel_strength_pct":{"SPY":-0.075434,"IWM":-0.084185}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.193571},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e02a53d3e0fd","ts":"2026-09-21T18:34:07.401181+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.6093,"target":8.76,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":128.2,"room_to_5d_high_atr":-0.89},"price":8.7112,"vwap":8.6422,"ext_from_open_pct":1.06,"max_ext_allowed_pct":3.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":-0.0374,"volatility":"medium"},"price":8.7112,"volume":{"bars":304,"last_bar_volume":285.0,"baseline_avg":1861.35,"bar_rvol":0.153115,"raw_accel":-0.902929,"smooth_accel":-0.242575,"accel_momentum":0.092563,"rvol_3bar":[1.237689,1.657867,0.153115],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":34.0,"sell_vol":52.0,"unclassified_vol":0.0,"imbalance":-0.209302,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":0.869289},"context":{"vwap":8.64224,"price_vs_vwap_pct":0.79794,"ema9":8.720804,"ema20":8.724798,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.649665,"dist_to_hod_atr":19.700737,"atr":0.012035,"spread_atr":0.830904,"own_change_pct":-0.325188,"rel_strength_pct":{"SPY":-0.29547,"IWM":-0.304221}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.032047},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1ba034131b43","ts":"2026-09-21T18:34:12.638483+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4636,"target":6.8351,"target_label":"ceiling","reward_risk":1.28,"pos_in_5d_range_pct":111.8,"room_to_5d_high_atr":-0.32},"price":6.6269,"vwap":6.5906,"ext_from_open_pct":3.71,"max_ext_allowed_pct":3.0,"volume_pace":0.472,"trend":"flat","recent_slope_pct":-0.0356,"volatility":"high"},"price":6.6269,"volume":{"bars":302,"last_bar_volume":969.0,"baseline_avg":2410.7,"bar_rvol":0.401958,"raw_accel":-0.759255,"smooth_accel":-0.598372,"accel_momentum":0.114757,"rvol_3bar":[0.115413,1.80635,0.401958],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":29.0,"sell_vol":48.0,"unclassified_vol":0.0,"imbalance":-0.246753,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":23.939795},"context":{"vwap":6.590602,"price_vs_vwap_pct":0.550757,"ema9":6.636065,"ema20":6.633118,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.511527,"dist_to_hod_atr":17.804506,"atr":0.017585,"spread_atr":1.705957,"own_change_pct":0.045215,"rel_strength_pct":{"SPY":0.074933,"IWM":0.066182}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.099184},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ffadd6b1e29e","ts":"2026-09-21T18:34:22.939518+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.15,"target":11.57,"target_label":"ceiling","reward_risk":0.91,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.37,"vwap":11.3241,"ext_from_open_pct":-1.98,"max_ext_allowed_pct":3.0,"volume_pace":0.427,"trend":"flat","recent_slope_pct":-0.1051,"volatility":"unknown"},"price":11.37,"volume":{"bars":278,"last_bar_volume":4.0,"baseline_avg":146.3,"bar_rvol":0.027341,"raw_accel":-0.890636,"smooth_accel":-0.9375,"accel_momentum":-0.078345,"rvol_3bar":[0.025486,0.006594,0.027341],"trend_3bar":"MIXED","projected_rvol":19.987774},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":29.0,"sell_vol":1089.0,"unclassified_vol":0.0,"imbalance":-0.948122,"bid":11.35,"ask":11.46,"spread_pct":0.964489,"quote_size_imbalance":null,"quote_age_s":3.981184},"context":{"vwap":11.323585,"price_vs_vwap_pct":0.409901,"ema9":11.453176,"ema20":11.466731,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.853556,"dist_to_hod_atr":18.429156,"atr":0.031472,"spread_atr":3.495185,"own_change_pct":-0.43554,"rel_strength_pct":{"SPY":-0.405822,"IWM":-0.414573}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.025923},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4dcac930064b","ts":"2026-09-21T18:34:28.055464+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7417,"target":8.91,"target_label":"ceiling","reward_risk":0.91,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.83,"vwap":8.7917,"ext_from_open_pct":3.64,"max_ext_allowed_pct":3.0,"volume_pace":0.449,"trend":"flat","recent_slope_pct":-0.0618,"volatility":"unknown"},"price":8.83,"volume":{"bars":304,"last_bar_volume":33977.0,"baseline_avg":57386.35,"bar_rvol":0.592075,"raw_accel":1.104751,"smooth_accel":-0.286093,"accel_momentum":0.038953,"rvol_3bar":[0.605639,0.261068,0.592075],"trend_3bar":"MIXED","projected_rvol":1.336919},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":19297.0,"sell_vol":16577.0,"unclassified_vol":0.0,"imbalance":0.075821,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.16402},"context":{"vwap":8.791585,"price_vs_vwap_pct":0.436958,"ema9":8.851121,"ema20":8.84904,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.230425,"dist_to_hod_atr":5.621187,"atr":0.019569,"spread_atr":0.511017,"own_change_pct":-0.095978,"rel_strength_pct":{"SPY":-0.06626,"IWM":-0.075011}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.044892},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9d9373ed95a9","ts":"2026-09-21T18:35:04.749184+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5881,"target":8.745,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.83},"price":8.69,"vwap":8.6428,"ext_from_open_pct":0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":-0.0468,"volatility":"medium"},"price":8.69,"volume":{"bars":305,"last_bar_volume":1941.0,"baseline_avg":1675.95,"bar_rvol":1.158149,"raw_accel":3.632596,"smooth_accel":-0.123451,"accel_momentum":0.119124,"rvol_3bar":[1.657867,0.153115,1.158149],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":114,"trade_rate":3.8,"buy_vol":7090.0,"sell_vol":2969.0,"unclassified_vol":0.0,"imbalance":0.409683,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":0.003458},"context":{"vwap":8.642376,"price_vs_vwap_pct":0.551058,"ema9":8.718703,"ema20":8.723417,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.886582,"dist_to_hod_atr":20.139669,"atr":0.012825,"spread_atr":0.779701,"own_change_pct":-0.235944,"rel_strength_pct":{"SPY":-0.218498,"IWM":-0.213229}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.474474},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f31d83840667","ts":"2026-09-21T18:35:04.749184+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.91,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7917,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":0.449,"trend":"flat","recent_slope_pct":-0.0341,"volatility":"unknown"},"price":8.835,"volume":{"bars":305,"last_bar_volume":61929.0,"baseline_avg":53945.0,"bar_rvol":1.148003,"raw_accel":0.822674,"smooth_accel":-0.019865,"accel_momentum":0.266228,"rvol_3bar":[0.261068,0.592075,1.148003],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":1634.0,"sell_vol":14722.0,"unclassified_vol":0.0,"imbalance":-0.800196,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.596471},"context":{"vwap":8.791726,"price_vs_vwap_pct":0.492218,"ema9":8.849817,"ema20":8.848617,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":5.27459,"atr":0.019907,"spread_atr":0.502342,"own_change_pct":-0.117448,"rel_strength_pct":{"SPY":-0.100003,"IWM":-0.094734}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.918627},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e41f33fbff8d","ts":"2026-09-21T18:35:15.388595+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.5931,"target":8.76,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.85},"price":8.695,"vwap":8.6429,"ext_from_open_pct":0.87,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":-0.0353,"volatility":"medium"},"price":8.695,"volume":{"bars":305,"last_bar_volume":1941.0,"baseline_avg":1675.95,"bar_rvol":1.158149,"raw_accel":3.632596,"smooth_accel":-0.123451,"accel_momentum":0.119124,"rvol_3bar":[1.657867,0.153115,1.158149],"trend_3bar":"MIXED","projected_rvol":21.982499},"flow":{"window_s":30,"trades":117,"trade_rate":3.9,"buy_vol":7323.0,"sell_vol":3145.0,"unclassified_vol":0.0,"imbalance":0.399121,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":0.18757},"context":{"vwap":8.642376,"price_vs_vwap_pct":0.608912,"ema9":8.718703,"ema20":8.723417,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.830705,"dist_to_hod_atr":19.749819,"atr":0.012825,"spread_atr":0.779701,"own_change_pct":-0.235944,"rel_strength_pct":{"SPY":-0.218498,"IWM":-0.213229}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.462242},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"16bedc1f5761","ts":"2026-09-21T18:35:15.388595+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.91,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7918,"ext_from_open_pct":3.81,"max_ext_allowed_pct":3.0,"volume_pace":0.449,"trend":"flat","recent_slope_pct":-0.0115,"volatility":"unknown"},"price":8.845,"volume":{"bars":305,"last_bar_volume":61929.0,"baseline_avg":53945.0,"bar_rvol":1.148003,"raw_accel":0.822674,"smooth_accel":-0.019865,"accel_momentum":0.266228,"rvol_3bar":[0.261068,0.592075,1.148003],"trend_3bar":"ACCELERATING","projected_rvol":1.83902},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":12520.0,"sell_vol":13683.0,"unclassified_vol":0.0,"imbalance":-0.044384,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.195138},"context":{"vwap":8.791726,"price_vs_vwap_pct":0.605961,"ema9":8.849817,"ema20":8.848617,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":4.772248,"atr":0.019907,"spread_atr":0.502342,"own_change_pct":-0.117448,"rel_strength_pct":{"SPY":-0.100003,"IWM":-0.094734}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.050953},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e7a1cc78f9b5","ts":"2026-09-21T18:35:36.094131+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7595,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.98,"trend":"flat","recent_slope_pct":-0.0607,"volatility":"unknown"},"price":5.76,"volume":{"bars":305,"last_bar_volume":37115.0,"baseline_avg":28635.95,"bar_rvol":1.296098,"raw_accel":-0.495089,"smooth_accel":0.06998,"accel_momentum":-0.297593,"rvol_3bar":[1.048495,2.790202,1.296098],"trend_3bar":"MIXED","projected_rvol":1.094941},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":4071.0,"sell_vol":11530.0,"unclassified_vol":0.0,"imbalance":-0.47811,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.237562},"context":{"vwap":5.75951,"price_vs_vwap_pct":0.008499,"ema9":5.771308,"ema20":5.770819,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":8.21205,"atr":0.013395,"spread_atr":0.74655,"own_change_pct":0.057225,"rel_strength_pct":{"SPY":0.07467,"IWM":0.079939}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.619678},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ab3eeab6c97c","ts":"2026-09-21T18:35:41.269794+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $5.54 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":5.7123,"target":6.07,"target_label":"range_20d_high","reward_risk":5.2,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.77,"vwap":5.7595,"ext_from_open_pct":4.15,"max_ext_allowed_pct":3.0,"volume_pace":0.98,"trend":"flat","recent_slope_pct":-0.026,"volatility":"unknown"},"price":5.77,"volume":{"bars":305,"last_bar_volume":37115.0,"baseline_avg":28635.95,"bar_rvol":1.296098,"raw_accel":-0.495089,"smooth_accel":0.06998,"accel_momentum":-0.297593,"rvol_3bar":[1.048495,2.790202,1.296098],"trend_3bar":"MIXED","projected_rvol":1.098917},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":5855.0,"sell_vol":11203.0,"unclassified_vol":0.0,"imbalance":-0.313519,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.263506},"context":{"vwap":5.75951,"price_vs_vwap_pct":0.182125,"ema9":5.771308,"ema20":5.770819,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.703578,"dist_to_hod_atr":7.4655,"atr":0.013395,"spread_atr":0.74655,"own_change_pct":0.057225,"rel_strength_pct":{"SPY":0.07467,"IWM":0.079939}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.406351},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"22591041e9fc","ts":"2026-09-21T18:35:41.269794+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7447,"target":8.91,"target_label":"ceiling","reward_risk":0.87,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.833,"vwap":8.7918,"ext_from_open_pct":3.67,"max_ext_allowed_pct":4.0,"volume_pace":0.448,"trend":"flat","recent_slope_pct":-0.0387,"volatility":"unknown"},"price":8.833,"volume":{"bars":305,"last_bar_volume":61929.0,"baseline_avg":53945.0,"bar_rvol":1.148003,"raw_accel":0.822674,"smooth_accel":-0.019865,"accel_momentum":0.266228,"rvol_3bar":[0.261068,0.592075,1.148003],"trend_3bar":"ACCELERATING","projected_rvol":0.960221},"flow":{"window_s":30,"trades":134,"trade_rate":4.466667,"buy_vol":11677.0,"sell_vol":22311.0,"unclassified_vol":0.0,"imbalance":-0.312875,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.949631},"context":{"vwap":8.791726,"price_vs_vwap_pct":0.469469,"ema9":8.849817,"ema20":8.848617,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.196868,"dist_to_hod_atr":5.375058,"atr":0.019907,"spread_atr":0.502342,"own_change_pct":-0.117448,"rel_strength_pct":{"SPY":-0.100003,"IWM":-0.094734}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.359181},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0acdbd26164f","ts":"2026-09-21T18:35:46.430763+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5881,"target":8.745,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.83},"price":8.69,"vwap":8.6429,"ext_from_open_pct":0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":-0.0468,"volatility":"medium"},"price":8.69,"volume":{"bars":305,"last_bar_volume":1941.0,"baseline_avg":1675.95,"bar_rvol":1.158149,"raw_accel":3.632596,"smooth_accel":-0.123451,"accel_momentum":0.119124,"rvol_3bar":[1.657867,0.153115,1.158149],"trend_3bar":"MIXED","projected_rvol":7.314982},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":32.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":0.684211,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":3.438431},"context":{"vwap":8.642376,"price_vs_vwap_pct":0.551058,"ema9":8.718703,"ema20":8.723417,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.886582,"dist_to_hod_atr":20.139669,"atr":0.012825,"spread_atr":0.779701,"own_change_pct":-0.235944,"rel_strength_pct":{"SPY":-0.218498,"IWM":-0.213229}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.792418},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0293cb9414ce","ts":"2026-09-21T18:35:46.430763+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7516,"target":8.91,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.84,"vwap":8.7918,"ext_from_open_pct":3.76,"max_ext_allowed_pct":3.0,"volume_pace":0.448,"trend":"flat","recent_slope_pct":-0.0228,"volatility":"unknown"},"price":8.84,"volume":{"bars":305,"last_bar_volume":61929.0,"baseline_avg":53945.0,"bar_rvol":1.148003,"raw_accel":0.822674,"smooth_accel":-0.019865,"accel_momentum":0.266228,"rvol_3bar":[0.261068,0.592075,1.148003],"trend_3bar":"ACCELERATING","projected_rvol":0.882522},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":841.0,"sell_vol":9897.0,"unclassified_vol":0.0,"imbalance":-0.84336,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":3.328393},"context":{"vwap":8.791726,"price_vs_vwap_pct":0.54909,"ema9":8.849817,"ema20":8.848617,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.118568,"dist_to_hod_atr":5.023419,"atr":0.019907,"spread_atr":0.502342,"own_change_pct":-0.117448,"rel_strength_pct":{"SPY":-0.100003,"IWM":-0.094734}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.96818},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f2db0c5e180f","ts":"2026-09-21T18:35:51.605196+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3514,"target":8.82,"target_label":"prev_day_high","reward_risk":0.22,"pos_in_5d_range_pct":75.3,"room_to_5d_high_atr":0.41},"price":8.735,"vwap":8.7095,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":0.527,"trend":"flat","recent_slope_pct":-0.0326,"volatility":"medium"},"price":8.735,"volume":{"bars":305,"last_bar_volume":2910.0,"baseline_avg":6381.85,"bar_rvol":0.455981,"raw_accel":-0.669318,"smooth_accel":0.071714,"accel_momentum":0.500265,"rvol_3bar":[0.145095,1.444221,0.455981],"trend_3bar":"MIXED","projected_rvol":1.40701},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":803.0,"sell_vol":4414.0,"unclassified_vol":0.0,"imbalance":-0.69216,"bid":8.73,"ask":8.74,"spread_pct":0.114482,"quote_size_imbalance":null,"quote_age_s":0.320477},"context":{"vwap":8.709417,"price_vs_vwap_pct":0.293734,"ema9":8.75366,"ema20":8.767367,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.73701,"dist_to_hod_atr":15.174154,"atr":0.022347,"spread_atr":0.447483,"own_change_pct":-0.264614,"rel_strength_pct":{"SPY":-0.247169,"IWM":-0.241899}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.315612},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"df8aabdbd8a6","ts":"2026-09-21T18:36:02.069150+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.5931,"target":8.76,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.85},"price":8.695,"vwap":8.6429,"ext_from_open_pct":0.87,"max_ext_allowed_pct":3.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":-0.0489,"volatility":"medium"},"price":8.695,"volume":{"bars":306,"last_bar_volume":10733.0,"baseline_avg":1746.4,"bar_rvol":6.145786,"raw_accel":4.529624,"smooth_accel":1.294441,"accel_momentum":1.417891,"rvol_3bar":[0.153115,1.158149,6.145786],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":20.0,"sell_vol":1251.0,"unclassified_vol":0.0,"imbalance":-0.968529,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":6.763183},"context":{"vwap":8.642937,"price_vs_vwap_pct":0.602375,"ema9":8.713843,"ema20":8.720653,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.830705,"dist_to_hod_atr":18.457233,"atr":0.013724,"spread_atr":0.728671,"own_change_pct":-0.350716,"rel_strength_pct":{"SPY":-0.319717,"IWM":-0.286078}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-5.95237},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c790e6c7d7ef","ts":"2026-09-21T18:36:07.256446+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6261,"target":8.82,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":75.3,"room_to_5d_high_atr":0.41},"price":8.735,"vwap":8.7095,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":0.527,"trend":"flat","recent_slope_pct":-0.0304,"volatility":"medium"},"price":8.735,"volume":{"bars":306,"last_bar_volume":8545.0,"baseline_avg":6282.6,"bar_rvol":1.360106,"raw_accel":1.936426,"smooth_accel":1.255819,"accel_momentum":1.184105,"rvol_3bar":[1.444221,0.455981,1.360106],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1037.0,"sell_vol":4000.0,"unclassified_vol":0.0,"imbalance":-0.588247,"bid":8.73,"ask":8.74,"spread_pct":0.114482,"quote_size_imbalance":null,"quote_age_s":7.096839},"context":{"vwap":8.709472,"price_vs_vwap_pct":0.293103,"ema9":8.749928,"ema20":8.764285,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.73701,"dist_to_hod_atr":15.239778,"atr":0.022251,"spread_atr":0.449418,"own_change_pct":-0.354776,"rel_strength_pct":{"SPY":-0.323776,"IWM":-0.290138}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.800078},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2bb75aeb300d","ts":"2026-09-21T18:36:07.256446+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6766,"target":10.02,"target_label":"premarket_high","reward_risk":1.07,"pos_in_5d_range_pct":130.7,"room_to_5d_high_atr":-0.72},"price":9.8423,"vwap":9.8256,"ext_from_open_pct":-1.48,"max_ext_allowed_pct":4.0,"volume_pace":0.787,"trend":"flat","recent_slope_pct":-0.0337,"volatility":"high"},"price":9.8423,"volume":{"bars":306,"last_bar_volume":12078.0,"baseline_avg":12630.05,"bar_rvol":0.956291,"raw_accel":0.925702,"smooth_accel":-0.360144,"accel_momentum":0.231847,"rvol_3bar":[0.155356,0.477506,0.956291],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":3072.0,"sell_vol":4261.0,"unclassified_vol":0.0,"imbalance":-0.162144,"bid":9.83,"ask":9.84,"spread_pct":0.101678,"quote_size_imbalance":null,"quote_age_s":2.506754},"context":{"vwap":9.825597,"price_vs_vwap_pct":0.169993,"ema9":9.852676,"ema20":9.847902,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.744071,"dist_to_hod_atr":13.275816,"atr":0.020918,"spread_atr":0.478063,"own_change_pct":-0.028412,"rel_strength_pct":{"SPY":0.002588,"IWM":0.036226}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.155057},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"738118c1aca3","ts":"2026-09-21T18:36:12.397046+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5881,"target":8.745,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.83},"price":8.69,"vwap":8.643,"ext_from_open_pct":0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":-0.0604,"volatility":"medium"},"price":8.69,"volume":{"bars":306,"last_bar_volume":10733.0,"baseline_avg":1746.4,"bar_rvol":6.145786,"raw_accel":4.529624,"smooth_accel":1.294441,"accel_momentum":1.417891,"rvol_3bar":[0.153115,1.158149,6.145786],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":794.0,"sell_vol":2482.0,"unclassified_vol":0.0,"imbalance":-0.515263,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":0.70492},"context":{"vwap":8.642937,"price_vs_vwap_pct":0.544525,"ema9":8.713843,"ema20":8.720653,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.886582,"dist_to_hod_atr":18.821568,"atr":0.013724,"spread_atr":0.728671,"own_change_pct":-0.350716,"rel_strength_pct":{"SPY":-0.319717,"IWM":-0.286078}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.166693},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9104cac5a98c","ts":"2026-09-21T18:36:17.505185+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.5931,"target":8.76,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.85},"price":8.695,"vwap":8.643,"ext_from_open_pct":0.87,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":-0.0489,"volatility":"medium"},"price":8.695,"volume":{"bars":306,"last_bar_volume":10733.0,"baseline_avg":1746.4,"bar_rvol":6.145786,"raw_accel":4.529624,"smooth_accel":1.294441,"accel_momentum":1.417891,"rvol_3bar":[0.153115,1.158149,6.145786],"trend_3bar":"ACCELERATING","projected_rvol":4.090143},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":854.0,"sell_vol":2476.0,"unclassified_vol":0.0,"imbalance":-0.487087,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":0.214687},"context":{"vwap":8.642937,"price_vs_vwap_pct":0.602375,"ema9":8.713843,"ema20":8.720653,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.830705,"dist_to_hod_atr":18.457233,"atr":0.013724,"spread_atr":0.728671,"own_change_pct":-0.350716,"rel_strength_pct":{"SPY":-0.319717,"IWM":-0.286078}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.993533},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a432ecab72b2","ts":"2026-09-21T18:36:17.505185+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.23,"target":11.57,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.39,"vwap":11.3242,"ext_from_open_pct":-1.81,"max_ext_allowed_pct":3.0,"volume_pace":0.425,"trend":"flat","recent_slope_pct":-0.0766,"volatility":"unknown"},"price":11.39,"volume":{"bars":280,"last_bar_volume":100.0,"baseline_avg":200.45,"bar_rvol":0.498878,"raw_accel":-0.91453,"smooth_accel":62.7,"accel_momentum":55.425352,"rvol_3bar":[0.027341,8.210526,0.498878],"trend_3bar":"MIXED","projected_rvol":0.102596},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":100.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":0.886792,"bid":11.38,"ask":11.46,"spread_pct":0.700525,"quote_size_imbalance":null,"quote_age_s":7.773674},"context":{"vwap":11.32416,"price_vs_vwap_pct":0.581413,"ema9":11.430233,"ema20":11.452517,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.686192,"dist_to_hod_atr":14.895343,"atr":0.037596,"spread_atr":2.127906,"own_change_pct":-0.218723,"rel_strength_pct":{"SPY":-0.187723,"IWM":-0.154085}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.442401},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"18f1d2d3f7ff","ts":"2026-09-21T18:36:27.737025+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.974,"target":9.1055,"target_label":"clear air (typical 60-min move)","reward_risk":0.52,"pos_in_5d_range_pct":130.0,"room_to_5d_high_atr":-0.96},"price":9.0605,"vwap":9.0126,"ext_from_open_pct":0.45,"max_ext_allowed_pct":3.0,"volume_pace":0.748,"trend":"flat","recent_slope_pct":-0.0592,"volatility":"medium"},"price":9.0605,"volume":{"bars":306,"last_bar_volume":12442.0,"baseline_avg":11706.45,"bar_rvol":1.062833,"raw_accel":0.836729,"smooth_accel":-0.6946,"accel_momentum":-1.174077,"rvol_3bar":[0.179942,0.588496,1.062833],"trend_3bar":"ACCELERATING","projected_rvol":1.988654},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":1116.0,"sell_vol":9852.0,"unclassified_vol":0.0,"imbalance":-0.796499,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":0.0195},"context":{"vwap":9.01247,"price_vs_vwap_pct":0.532927,"ema9":9.066846,"ema20":9.056183,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.76014,"dist_to_hod_atr":3.146686,"atr":0.022055,"spread_atr":0.453413,"own_change_pct":-0.149862,"rel_strength_pct":{"SPY":-0.118863,"IWM":-0.085224}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.846545},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bd22f5975681","ts":"2026-09-21T18:36:27.737025+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5831,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.643,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":-0.0719,"volatility":"medium"},"price":8.685,"volume":{"bars":306,"last_bar_volume":10733.0,"baseline_avg":1746.4,"bar_rvol":6.145786,"raw_accel":4.529624,"smooth_accel":1.294441,"accel_momentum":1.417891,"rvol_3bar":[0.153115,1.158149,6.145786],"trend_3bar":"ACCELERATING","projected_rvol":3.023538},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1193.0,"sell_vol":1249.0,"unclassified_vol":0.0,"imbalance":-0.022932,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":1.75894},"context":{"vwap":8.642937,"price_vs_vwap_pct":0.486674,"ema9":8.713843,"ema20":8.720653,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":19.185904,"atr":0.013724,"spread_atr":0.728671,"own_change_pct":-0.350716,"rel_strength_pct":{"SPY":-0.319717,"IWM":-0.286078}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.140935},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"10576d8bdeec","ts":"2026-09-21T18:36:27.737025+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.26,"target":11.57,"target_label":"ceiling","reward_risk":0.94,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.42,"vwap":11.3242,"ext_from_open_pct":-1.55,"max_ext_allowed_pct":3.0,"volume_pace":0.424,"trend":"flat","recent_slope_pct":-0.024,"volatility":"unknown"},"price":11.42,"volume":{"bars":280,"last_bar_volume":100.0,"baseline_avg":200.45,"bar_rvol":0.498878,"raw_accel":-0.91453,"smooth_accel":62.7,"accel_momentum":55.425352,"rvol_3bar":[0.027341,8.210526,0.498878],"trend_3bar":"MIXED","projected_rvol":0.183457},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":111.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":0.897436,"bid":11.38,"ask":11.46,"spread_pct":0.700525,"quote_size_imbalance":null,"quote_age_s":18.005514},"context":{"vwap":11.32416,"price_vs_vwap_pct":0.846334,"ema9":11.430233,"ema20":11.452517,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.435146,"dist_to_hod_atr":14.097378,"atr":0.037596,"spread_atr":2.127906,"own_change_pct":-0.218723,"rel_strength_pct":{"SPY":-0.187723,"IWM":-0.154085}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.447711},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"18aa148e4ce1","ts":"2026-09-21T18:36:32.928758+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.593,"target":8.76,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.85},"price":8.6949,"vwap":8.6431,"ext_from_open_pct":0.87,"max_ext_allowed_pct":3.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":-0.0492,"volatility":"medium"},"price":8.6949,"volume":{"bars":306,"last_bar_volume":10733.0,"baseline_avg":1746.4,"bar_rvol":6.145786,"raw_accel":4.529624,"smooth_accel":1.294441,"accel_momentum":1.417891,"rvol_3bar":[0.153115,1.158149,6.145786],"trend_3bar":"ACCELERATING","projected_rvol":2.548917},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1175.0,"sell_vol":1249.0,"unclassified_vol":0.0,"imbalance":-0.030528,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":6.950673},"context":{"vwap":8.642937,"price_vs_vwap_pct":0.601218,"ema9":8.713843,"ema20":8.720653,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.831823,"dist_to_hod_atr":18.46452,"atr":0.013724,"spread_atr":0.728671,"own_change_pct":-0.350716,"rel_strength_pct":{"SPY":-0.319717,"IWM":-0.286078}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.187619},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bb2ec728343b","ts":"2026-09-21T18:36:53.869172+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5831,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6431,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":-0.0719,"volatility":"medium"},"price":8.685,"volume":{"bars":306,"last_bar_volume":10733.0,"baseline_avg":1746.4,"bar_rvol":6.145786,"raw_accel":4.529624,"smooth_accel":1.294441,"accel_momentum":1.417891,"rvol_3bar":[0.153115,1.158149,6.145786],"trend_3bar":"ACCELERATING","projected_rvol":1.626963},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":383.0,"sell_vol":19.0,"unclassified_vol":0.0,"imbalance":0.905473,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":4.194758},"context":{"vwap":8.642937,"price_vs_vwap_pct":0.486674,"ema9":8.713843,"ema20":8.720653,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":19.185904,"atr":0.013724,"spread_atr":0.728671,"own_change_pct":-0.350716,"rel_strength_pct":{"SPY":-0.319717,"IWM":-0.286078}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":5.564841},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f9ebb6548d0e","ts":"2026-09-21T18:37:04.265959+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6743,"target":10.02,"target_label":"premarket_high","reward_risk":1.09,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-0.72},"price":9.84,"vwap":9.8256,"ext_from_open_pct":-1.5,"max_ext_allowed_pct":3.0,"volume_pace":0.785,"trend":"flat","recent_slope_pct":-0.0406,"volatility":"high"},"price":9.84,"volume":{"bars":307,"last_bar_volume":2359.0,"baseline_avg":12112.5,"bar_rvol":0.194757,"raw_accel":-0.804686,"smooth_accel":0.519258,"accel_momentum":0.879401,"rvol_3bar":[0.477506,0.956291,0.194757],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":2626.0,"sell_vol":1731.0,"unclassified_vol":0.0,"imbalance":0.205417,"bid":9.83,"ask":9.84,"spread_pct":0.101678,"quote_size_imbalance":null,"quote_age_s":0.083789},"context":{"vwap":9.825602,"price_vs_vwap_pct":0.14654,"ema9":9.851141,"ema20":9.847626,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.766798,"dist_to_hod_atr":13.557889,"atr":0.020652,"spread_atr":0.48421,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.007755,"IWM":0.031453}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.040006},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2d02a45b5350","ts":"2026-09-21T18:37:09.519514+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6727,"target":10.02,"target_label":"premarket_high","reward_risk":1.1,"pos_in_5d_range_pct":130.4,"room_to_5d_high_atr":-0.71},"price":9.8384,"vwap":9.8256,"ext_from_open_pct":-1.52,"max_ext_allowed_pct":3.0,"volume_pace":0.785,"trend":"flat","recent_slope_pct":-0.0439,"volatility":"high"},"price":9.8384,"volume":{"bars":307,"last_bar_volume":2359.0,"baseline_avg":12112.5,"bar_rvol":0.194757,"raw_accel":-0.804686,"smooth_accel":0.519258,"accel_momentum":0.879401,"rvol_3bar":[0.477506,0.956291,0.194757],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":2808.0,"sell_vol":2545.0,"unclassified_vol":0.0,"imbalance":0.049131,"bid":9.82,"ask":9.83,"spread_pct":0.101781,"quote_size_imbalance":null,"quote_age_s":3.39372},"context":{"vwap":9.825602,"price_vs_vwap_pct":0.130256,"ema9":9.851141,"ema20":9.847626,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.782609,"dist_to_hod_atr":13.635363,"atr":0.020652,"spread_atr":0.48421,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.007755,"IWM":0.031453}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.009569},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"aa04c071a3e3","ts":"2026-09-21T18:37:30.105172+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.6061,"target":8.76,"target_label":"premarket_high","reward_risk":0.51,"pos_in_5d_range_pct":127.9,"room_to_5d_high_atr":-0.88},"price":8.708,"vwap":8.6431,"ext_from_open_pct":1.02,"max_ext_allowed_pct":4.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":-0.0122,"volatility":"medium"},"price":8.708,"volume":{"bars":307,"last_bar_volume":2555.0,"baseline_avg":2245.4,"bar_rvol":1.137882,"raw_accel":-0.761949,"smooth_accel":1.777494,"accel_momentum":0.483054,"rvol_3bar":[1.158149,6.145786,1.137882],"trend_3bar":"MIXED","projected_rvol":0.106512},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":99.0,"sell_vol":21.0,"unclassified_vol":0.0,"imbalance":0.65,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":10.076824},"context":{"vwap":8.643058,"price_vs_vwap_pct":0.751378,"ema9":8.709814,"ema20":8.718086,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.685426,"dist_to_hod_atr":17.612965,"atr":0.013643,"spread_atr":0.732957,"own_change_pct":-0.187141,"rel_strength_pct":{"SPY":-0.194896,"IWM":-0.155688}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.739623},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d9930bee0d57","ts":"2026-09-21T18:37:30.105172+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.08 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.926,"target":8.16,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":119.3,"room_to_5d_high_atr":-0.61},"price":8.08,"vwap":8.0802,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.435,"trend":"flat","recent_slope_pct":-0.0547,"volatility":"high"},"price":8.08,"volume":{"bars":307,"last_bar_volume":3792.0,"baseline_avg":3494.05,"bar_rvol":1.085274,"raw_accel":2.133884,"smooth_accel":-0.450747,"accel_momentum":-3.703541,"rvol_3bar":[0.886746,0.347526,1.085274],"trend_3bar":"MIXED","projected_rvol":0.758064},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":686.0,"sell_vol":643.0,"unclassified_vol":0.0,"imbalance":0.032355,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":1.584374},"context":{"vwap":8.080238,"price_vs_vwap_pct":-0.002947,"ema9":8.102544,"ema20":8.095422,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.566143,"dist_to_hod_atr":18.067928,"atr":0.016538,"spread_atr":0.604683,"own_change_pct":0.018517,"rel_strength_pct":{"SPY":0.010762,"IWM":0.04997}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.035114},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f4ecd3177cbc","ts":"2026-09-21T18:37:50.637009+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5831,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6431,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":-0.0651,"volatility":"medium"},"price":8.685,"volume":{"bars":307,"last_bar_volume":2555.0,"baseline_avg":2245.4,"bar_rvol":1.137882,"raw_accel":-0.761949,"smooth_accel":1.777494,"accel_momentum":0.483054,"rvol_3bar":[1.158149,6.145786,1.137882],"trend_3bar":"MIXED","projected_rvol":0.471766},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":762.0,"sell_vol":82.0,"unclassified_vol":0.0,"imbalance":0.805687,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":0.214364},"context":{"vwap":8.643058,"price_vs_vwap_pct":0.485268,"ema9":8.709814,"ema20":8.718086,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":19.298767,"atr":0.013643,"spread_atr":0.732957,"own_change_pct":-0.187141,"rel_strength_pct":{"SPY":-0.194896,"IWM":-0.155688}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.916777},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"64065892fa92","ts":"2026-09-21T18:37:50.637009+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.931,"target":8.16,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.62},"price":8.085,"vwap":8.0803,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.435,"trend":"flat","recent_slope_pct":-0.0423,"volatility":"high"},"price":8.085,"volume":{"bars":307,"last_bar_volume":3792.0,"baseline_avg":3494.05,"bar_rvol":1.085274,"raw_accel":2.133884,"smooth_accel":-0.450747,"accel_momentum":-3.703541,"rvol_3bar":[0.886746,0.347526,1.085274],"trend_3bar":"MIXED","projected_rvol":1.118759},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1200.0,"sell_vol":1160.0,"unclassified_vol":0.0,"imbalance":0.016949,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":3.798547},"context":{"vwap":8.080238,"price_vs_vwap_pct":0.058933,"ema9":8.102544,"ema20":8.095422,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.506469,"dist_to_hod_atr":17.765586,"atr":0.016538,"spread_atr":0.604683,"own_change_pct":0.018517,"rel_strength_pct":{"SPY":0.010762,"IWM":0.04997}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.018394},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f54c020de719","ts":"2026-09-21T18:38:00.915093+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.9635,"target":9.095,"target_label":"clear air (typical 60-min move)","reward_risk":0.52,"pos_in_5d_range_pct":129.1,"room_to_5d_high_atr":-0.92},"price":9.05,"vwap":9.0128,"ext_from_open_pct":0.33,"max_ext_allowed_pct":3.0,"volume_pace":0.748,"trend":"flat","recent_slope_pct":-0.054,"volatility":"medium"},"price":9.05,"volume":{"bars":308,"last_bar_volume":25186.0,"baseline_avg":12276.7,"bar_rvol":2.051529,"raw_accel":0.755367,"smooth_accel":0.019777,"accel_momentum":0.412438,"rvol_3bar":[1.062833,1.231551,2.051529],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1933.0,"sell_vol":21821.0,"unclassified_vol":0.0,"imbalance":-0.837248,"bid":9.05,"ask":9.06,"spread_pct":0.110436,"quote_size_imbalance":null,"quote_age_s":0.14989},"context":{"vwap":9.012809,"price_vs_vwap_pct":0.412645,"ema9":9.063282,"ema20":9.056252,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.875146,"dist_to_hod_atr":3.493998,"atr":0.022868,"spread_atr":0.437296,"own_change_pct":-0.247661,"rel_strength_pct":{"SPY":-0.270927,"IWM":-0.18825}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.717639},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"532080f13219","ts":"2026-09-21T18:38:00.915093+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5863,"target":8.745,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.83},"price":8.6882,"vwap":8.6431,"ext_from_open_pct":0.79,"max_ext_allowed_pct":4.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":-0.0616,"volatility":"medium"},"price":8.6882,"volume":{"bars":308,"last_bar_volume":894.0,"baseline_avg":2362.45,"bar_rvol":0.378421,"raw_accel":-0.650098,"smooth_accel":1.747385,"accel_momentum":-0.030109,"rvol_3bar":[6.145786,1.137882,0.378421],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":750.0,"sell_vol":81.0,"unclassified_vol":0.0,"imbalance":0.805054,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":4.444775},"context":{"vwap":8.643099,"price_vs_vwap_pct":0.521813,"ema9":8.704851,"ema20":8.714935,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.906697,"dist_to_hod_atr":17.731472,"atr":0.014669,"spread_atr":0.681717,"own_change_pct":-0.298473,"rel_strength_pct":{"SPY":-0.321739,"IWM":-0.239062}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.304649},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"2a9b1fed4ef1","ts":"2026-09-21T18:38:06.113127+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.6721,"target":10.02,"target_label":"premarket_high","reward_risk":1.1,"pos_in_5d_range_pct":130.4,"room_to_5d_high_atr":-0.71},"price":9.8378,"vwap":9.8256,"ext_from_open_pct":-1.52,"max_ext_allowed_pct":4.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.0575,"volatility":"high"},"price":9.8378,"volume":{"bars":308,"last_bar_volume":11643.0,"baseline_avg":11484.55,"bar_rvol":1.013797,"raw_accel":3.055187,"smooth_accel":1.112083,"accel_momentum":0.592825,"rvol_3bar":[0.956291,0.194757,1.013797],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1069.0,"sell_vol":511.0,"unclassified_vol":0.0,"imbalance":0.353165,"bid":9.81,"ask":9.82,"spread_pct":0.101885,"quote_size_imbalance":null,"quote_age_s":0.23446},"context":{"vwap":9.825598,"price_vs_vwap_pct":0.124191,"ema9":9.842913,"ema20":9.844042,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.788538,"dist_to_hod_atr":12.547067,"atr":0.022491,"spread_atr":0.444616,"own_change_pct":-0.456621,"rel_strength_pct":{"SPY":-0.479887,"IWM":-0.39721}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.358037},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f402d5e6ab6d","ts":"2026-09-21T18:38:11.319354+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.5928,"target":8.76,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.85},"price":8.6947,"vwap":8.6431,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":-0.0467,"volatility":"medium"},"price":8.6947,"volume":{"bars":308,"last_bar_volume":894.0,"baseline_avg":2362.45,"bar_rvol":0.378421,"raw_accel":-0.650098,"smooth_accel":1.747385,"accel_momentum":-0.030109,"rvol_3bar":[6.145786,1.137882,0.378421],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":1040.0,"sell_vol":81.0,"unclassified_vol":0.0,"imbalance":0.855486,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":0.761988},"context":{"vwap":8.643099,"price_vs_vwap_pct":0.597017,"ema9":8.704851,"ema20":8.714935,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.834058,"dist_to_hod_atr":17.288355,"atr":0.014669,"spread_atr":0.681717,"own_change_pct":-0.298473,"rel_strength_pct":{"SPY":-0.321739,"IWM":-0.239062}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.323734},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"d3376cef5c34","ts":"2026-09-21T18:38:11.319354+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7452,"target":8.91,"target_label":"ceiling","reward_risk":0.87,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8335,"vwap":8.7919,"ext_from_open_pct":3.68,"max_ext_allowed_pct":4.0,"volume_pace":0.446,"trend":"flat","recent_slope_pct":-0.0765,"volatility":"unknown"},"price":8.8335,"volume":{"bars":308,"last_bar_volume":33250.0,"baseline_avg":52621.7,"bar_rvol":0.631869,"raw_accel":0.97306,"smooth_accel":-0.217217,"accel_momentum":-0.550608,"rvol_3bar":[0.697222,0.312611,0.631869],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":13487.0,"sell_vol":10463.0,"unclassified_vol":0.0,"imbalance":0.126263,"bid":8.8,"ask":8.81,"spread_pct":0.113572,"quote_size_imbalance":null,"quote_age_s":0.669761},"context":{"vwap":8.791881,"price_vs_vwap_pct":0.473382,"ema9":8.838,"ema20":8.843134,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.191275,"dist_to_hod_atr":4.918113,"atr":0.021655,"spread_atr":0.461795,"own_change_pct":-0.415158,"rel_strength_pct":{"SPY":-0.438424,"IWM":-0.355747}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.079782},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f002f16b8fba","ts":"2026-09-21T18:38:16.538064+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5831,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6431,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":-0.069,"volatility":"medium"},"price":8.685,"volume":{"bars":308,"last_bar_volume":894.0,"baseline_avg":2362.45,"bar_rvol":0.378421,"raw_accel":-0.650098,"smooth_accel":1.747385,"accel_momentum":-0.030109,"rvol_3bar":[6.145786,1.137882,0.378421],"trend_3bar":"DECELERATING","projected_rvol":0.543635},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1041.0,"sell_vol":87.0,"unclassified_vol":0.0,"imbalance":0.845745,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":0.427921},"context":{"vwap":8.643099,"price_vs_vwap_pct":0.484789,"ema9":8.704851,"ema20":8.714935,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":17.949621,"atr":0.014669,"spread_atr":0.681717,"own_change_pct":-0.298473,"rel_strength_pct":{"SPY":-0.321739,"IWM":-0.239062}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.320047},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"5e06db932270","ts":"2026-09-21T18:38:16.538064+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.81 below VWAP $9.83","plan":{"state":"PASS","setup":"","stop":9.6493,"target":9.88,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":128.9,"room_to_5d_high_atr":-0.68},"price":9.815,"vwap":9.8256,"ext_from_open_pct":-1.75,"max_ext_allowed_pct":4.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.1039,"volatility":"high"},"price":9.815,"volume":{"bars":308,"last_bar_volume":11643.0,"baseline_avg":11484.55,"bar_rvol":1.013797,"raw_accel":3.055187,"smooth_accel":1.112083,"accel_momentum":0.592825,"rvol_3bar":[0.956291,0.194757,1.013797],"trend_3bar":"MIXED","projected_rvol":0.168692},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":852.0,"sell_vol":183.0,"unclassified_vol":0.0,"imbalance":0.646377,"bid":9.81,"ask":9.82,"spread_pct":0.101885,"quote_size_imbalance":null,"quote_age_s":2.637132},"context":{"vwap":9.825598,"price_vs_vwap_pct":-0.107856,"ema9":9.842913,"ema20":9.844042,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-3.013834,"dist_to_hod_atr":13.560791,"atr":0.022491,"spread_atr":0.444616,"own_change_pct":-0.456621,"rel_strength_pct":{"SPY":-0.479887,"IWM":-0.39721}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.655295},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f40032642816","ts":"2026-09-21T18:38:21.719923+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.6048,"target":8.76,"target_label":"premarket_high","reward_risk":0.52,"pos_in_5d_range_pct":127.8,"room_to_5d_high_atr":-0.87},"price":8.7067,"vwap":8.6431,"ext_from_open_pct":1.01,"max_ext_allowed_pct":4.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":-0.0191,"volatility":"medium"},"price":8.7067,"volume":{"bars":308,"last_bar_volume":894.0,"baseline_avg":2362.45,"bar_rvol":0.378421,"raw_accel":-0.650098,"smooth_accel":1.747385,"accel_momentum":-0.030109,"rvol_3bar":[6.145786,1.137882,0.378421],"trend_3bar":"DECELERATING","projected_rvol":0.533206},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":441.0,"sell_vol":15.0,"unclassified_vol":0.0,"imbalance":0.934211,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":5.60978},"context":{"vwap":8.643099,"price_vs_vwap_pct":0.735857,"ema9":8.704851,"ema20":8.714935,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.699954,"dist_to_hod_atr":16.470294,"atr":0.014669,"spread_atr":0.681717,"own_change_pct":-0.298473,"rel_strength_pct":{"SPY":-0.321739,"IWM":-0.239062}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.353525},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f04c6b881b32","ts":"2026-09-21T18:38:26.979799+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7268,"target":8.91,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.815,"vwap":8.792,"ext_from_open_pct":3.46,"max_ext_allowed_pct":3.0,"volume_pace":0.447,"trend":"flat","recent_slope_pct":-0.1185,"volatility":"unknown"},"price":8.815,"volume":{"bars":308,"last_bar_volume":33250.0,"baseline_avg":52621.7,"bar_rvol":0.631869,"raw_accel":0.97306,"smooth_accel":-0.217217,"accel_momentum":-0.550608,"rvol_3bar":[0.697222,0.312611,0.631869],"trend_3bar":"MIXED","projected_rvol":2.970411},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":45519.0,"sell_vol":25069.0,"unclassified_vol":0.0,"imbalance":0.289709,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.853124},"context":{"vwap":8.791881,"price_vs_vwap_pct":0.262961,"ema9":8.838,"ema20":8.843134,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.39821,"dist_to_hod_atr":5.772433,"atr":0.021655,"spread_atr":0.461795,"own_change_pct":-0.415158,"rel_strength_pct":{"SPY":-0.438424,"IWM":-0.355747}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.183058},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d2ba9abda6bd","ts":"2026-09-21T18:38:32.173093+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5881,"target":8.745,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.83},"price":8.69,"vwap":8.6431,"ext_from_open_pct":0.81,"max_ext_allowed_pct":4.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":-0.0575,"volatility":"medium"},"price":8.69,"volume":{"bars":308,"last_bar_volume":894.0,"baseline_avg":2362.45,"bar_rvol":0.378421,"raw_accel":-0.650098,"smooth_accel":1.747385,"accel_momentum":-0.030109,"rvol_3bar":[6.145786,1.137882,0.378421],"trend_3bar":"DECELERATING","projected_rvol":0.417591},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":406.0,"sell_vol":66.0,"unclassified_vol":0.0,"imbalance":0.720339,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":1.842257},"context":{"vwap":8.643099,"price_vs_vwap_pct":0.542639,"ema9":8.704851,"ema20":8.714935,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.886582,"dist_to_hod_atr":17.608762,"atr":0.014669,"spread_atr":0.681717,"own_change_pct":-0.298473,"rel_strength_pct":{"SPY":-0.321739,"IWM":-0.239062}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.272591},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"2656440ccd0c","ts":"2026-09-21T18:38:37.440756+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.6045,"target":8.76,"target_label":"premarket_high","reward_risk":0.53,"pos_in_5d_range_pct":127.8,"room_to_5d_high_atr":-0.87},"price":8.7064,"vwap":8.6431,"ext_from_open_pct":1.0,"max_ext_allowed_pct":4.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":-0.0198,"volatility":"medium"},"price":8.7064,"volume":{"bars":308,"last_bar_volume":894.0,"baseline_avg":2362.45,"bar_rvol":0.378421,"raw_accel":-0.650098,"smooth_accel":1.747385,"accel_momentum":-0.030109,"rvol_3bar":[6.145786,1.137882,0.378421],"trend_3bar":"DECELERATING","projected_rvol":0.398182},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":264.0,"sell_vol":66.0,"unclassified_vol":0.0,"imbalance":0.6,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":1.109384},"context":{"vwap":8.643099,"price_vs_vwap_pct":0.732386,"ema9":8.704851,"ema20":8.714935,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.703307,"dist_to_hod_atr":16.490746,"atr":0.014669,"spread_atr":0.681717,"own_change_pct":-0.298473,"rel_strength_pct":{"SPY":-0.321739,"IWM":-0.239062}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.227052},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"b9e0e683a5d5","ts":"2026-09-21T18:38:37.440756+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.6707,"target":10.02,"target_label":"premarket_high","reward_risk":1.11,"pos_in_5d_range_pct":130.3,"room_to_5d_high_atr":-0.71},"price":9.8364,"vwap":9.8256,"ext_from_open_pct":-1.54,"max_ext_allowed_pct":4.0,"volume_pace":0.782,"trend":"flat","recent_slope_pct":-0.0604,"volatility":"high"},"price":9.8364,"volume":{"bars":308,"last_bar_volume":11643.0,"baseline_avg":11484.55,"bar_rvol":1.013797,"raw_accel":3.055187,"smooth_accel":1.112083,"accel_momentum":0.592825,"rvol_3bar":[0.956291,0.194757,1.013797],"trend_3bar":"MIXED","projected_rvol":0.213633},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1060.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.827586,"bid":9.82,"ask":9.83,"spread_pct":0.101781,"quote_size_imbalance":null,"quote_age_s":0.095208},"context":{"vwap":9.825598,"price_vs_vwap_pct":0.109942,"ema9":9.842913,"ema20":9.844042,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.802372,"dist_to_hod_atr":12.609313,"atr":0.022491,"spread_atr":0.444616,"own_change_pct":-0.456621,"rel_strength_pct":{"SPY":-0.479887,"IWM":-0.39721}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.839004},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"62365302ef96","ts":"2026-09-21T18:38:47.955365+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5883,"target":8.745,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.83},"price":8.6902,"vwap":8.6431,"ext_from_open_pct":0.81,"max_ext_allowed_pct":4.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":-0.057,"volatility":"medium"},"price":8.6902,"volume":{"bars":308,"last_bar_volume":894.0,"baseline_avg":2362.45,"bar_rvol":0.378421,"raw_accel":-0.650098,"smooth_accel":1.747385,"accel_momentum":-0.030109,"rvol_3bar":[6.145786,1.137882,0.378421],"trend_3bar":"DECELERATING","projected_rvol":0.311407},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":72.0,"sell_vol":60.0,"unclassified_vol":0.0,"imbalance":0.090909,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":1.486349},"context":{"vwap":8.643099,"price_vs_vwap_pct":0.544953,"ema9":8.704851,"ema20":8.714935,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.884347,"dist_to_hod_atr":17.595128,"atr":0.014669,"spread_atr":0.681717,"own_change_pct":-0.298473,"rel_strength_pct":{"SPY":-0.321739,"IWM":-0.239062}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.034402},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"57497ebcae7c","ts":"2026-09-21T18:38:47.955365+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.82 below VWAP $9.83","plan":{"state":"PASS","setup":"","stop":9.6593,"target":10.02,"target_label":"premarket_high","reward_risk":1.18,"pos_in_5d_range_pct":129.6,"room_to_5d_high_atr":-0.69},"price":9.825,"vwap":9.8256,"ext_from_open_pct":-1.65,"max_ext_allowed_pct":4.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-0.0836,"volatility":"high"},"price":9.825,"volume":{"bars":308,"last_bar_volume":11643.0,"baseline_avg":11484.55,"bar_rvol":1.013797,"raw_accel":3.055187,"smooth_accel":1.112083,"accel_momentum":0.592825,"rvol_3bar":[0.956291,0.194757,1.013797],"trend_3bar":"MIXED","projected_rvol":0.179429},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":934.0,"sell_vol":166.0,"unclassified_vol":0.0,"imbalance":0.698182,"bid":9.82,"ask":9.83,"spread_pct":0.101781,"quote_size_imbalance":null,"quote_age_s":0.633913},"context":{"vwap":9.825598,"price_vs_vwap_pct":-0.006081,"ema9":9.842913,"ema20":9.844042,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.91502,"dist_to_hod_atr":13.116175,"atr":0.022491,"spread_atr":0.444616,"own_change_pct":-0.456621,"rel_strength_pct":{"SPY":-0.479887,"IWM":-0.39721}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.707814},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"22a04c31d56c","ts":"2026-09-21T18:38:53.217228+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.6703,"target":10.02,"target_label":"premarket_high","reward_risk":1.11,"pos_in_5d_range_pct":130.3,"room_to_5d_high_atr":-0.71},"price":9.836,"vwap":9.8256,"ext_from_open_pct":-1.54,"max_ext_allowed_pct":4.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-0.0612,"volatility":"high"},"price":9.836,"volume":{"bars":308,"last_bar_volume":11643.0,"baseline_avg":11484.55,"bar_rvol":1.013797,"raw_accel":3.055187,"smooth_accel":1.112083,"accel_momentum":0.592825,"rvol_3bar":[0.956291,0.194757,1.013797],"trend_3bar":"MIXED","projected_rvol":0.16375},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":737.0,"sell_vol":113.0,"unclassified_vol":0.0,"imbalance":0.734118,"bid":9.82,"ask":9.83,"spread_pct":0.101781,"quote_size_imbalance":null,"quote_age_s":0.301293},"context":{"vwap":9.825598,"price_vs_vwap_pct":0.105871,"ema9":9.842913,"ema20":9.844042,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.806324,"dist_to_hod_atr":12.627098,"atr":0.022491,"spread_atr":0.444616,"own_change_pct":-0.456621,"rel_strength_pct":{"SPY":-0.479887,"IWM":-0.39721}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.744246},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"566d13547bf2","ts":"2026-09-21T18:38:58.416621+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.83 below VWAP $9.83","plan":{"state":"PASS","setup":"","stop":9.6597,"target":10.02,"target_label":"premarket_high","reward_risk":1.17,"pos_in_5d_range_pct":129.6,"room_to_5d_high_atr":-0.69},"price":9.8254,"vwap":9.8256,"ext_from_open_pct":-1.65,"max_ext_allowed_pct":4.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-0.0828,"volatility":"high"},"price":9.8254,"volume":{"bars":308,"last_bar_volume":11643.0,"baseline_avg":11484.55,"bar_rvol":1.013797,"raw_accel":3.055187,"smooth_accel":1.112083,"accel_momentum":0.592825,"rvol_3bar":[0.956291,0.194757,1.013797],"trend_3bar":"MIXED","projected_rvol":0.151053},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":64.0,"sell_vol":129.0,"unclassified_vol":0.0,"imbalance":-0.336788,"bid":9.82,"ask":9.83,"spread_pct":0.101781,"quote_size_imbalance":null,"quote_age_s":5.500686},"context":{"vwap":9.825598,"price_vs_vwap_pct":-0.00201,"ema9":9.842913,"ema20":9.844042,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.911067,"dist_to_hod_atr":13.098391,"atr":0.022491,"spread_atr":0.444616,"own_change_pct":-0.456621,"rel_strength_pct":{"SPY":-0.479887,"IWM":-0.39721}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.341434},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6cb67fda9b95","ts":"2026-09-21T18:39:03.615721+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.5926,"target":8.76,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":126.8,"room_to_5d_high_atr":-0.84},"price":8.6945,"vwap":8.6431,"ext_from_open_pct":0.86,"max_ext_allowed_pct":4.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":-0.0038,"volatility":"medium"},"price":8.6945,"volume":{"bars":309,"last_bar_volume":590.0,"baseline_avg":2380.65,"bar_rvol":0.247831,"raw_accel":-0.340045,"smooth_accel":-0.688325,"accel_momentum":-2.435709,"rvol_3bar":[1.137882,0.378421,0.247831],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":161.0,"sell_vol":17.0,"unclassified_vol":0.0,"imbalance":0.808989,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":1.826112},"context":{"vwap":8.643127,"price_vs_vwap_pct":0.594379,"ema9":8.701921,"ema20":8.71258,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.836293,"dist_to_hod_atr":16.344455,"atr":0.015528,"spread_atr":0.64399,"own_change_pct":-0.170017,"rel_strength_pct":{"SPY":-0.185527,"IWM":-0.135064}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.200493},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a797ab64ead7","ts":"2026-09-21T18:39:14.207913+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.6676,"target":10.02,"target_label":"premarket_high","reward_risk":1.13,"pos_in_5d_range_pct":130.1,"room_to_5d_high_atr":-0.71},"price":9.8333,"vwap":9.8256,"ext_from_open_pct":-1.57,"max_ext_allowed_pct":4.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-0.0584,"volatility":"high"},"price":9.8333,"volume":{"bars":309,"last_bar_volume":1689.0,"baseline_avg":11575.3,"bar_rvol":0.145914,"raw_accel":-0.854934,"smooth_accel":-0.232826,"accel_momentum":-1.344909,"rvol_3bar":[0.194757,1.013797,0.145914],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":4146.0,"sell_vol":2646.0,"unclassified_vol":0.0,"imbalance":0.220848,"bid":9.83,"ask":9.84,"spread_pct":0.101678,"quote_size_imbalance":null,"quote_age_s":0.065658},"context":{"vwap":9.825598,"price_vs_vwap_pct":0.07839,"ema9":9.83941,"ema20":9.842267,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.833004,"dist_to_hod_atr":12.27135,"atr":0.023363,"spread_atr":0.428021,"own_change_pct":-0.350913,"rel_strength_pct":{"SPY":-0.366422,"IWM":-0.31596}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.032225},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1c6a07ed3ad3","ts":"2026-09-21T18:39:19.399985+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.5831,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6431,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.668,"trend":"flat","recent_slope_pct":-0.0257,"volatility":"medium"},"price":8.685,"volume":{"bars":309,"last_bar_volume":590.0,"baseline_avg":2380.65,"bar_rvol":0.247831,"raw_accel":-0.340045,"smooth_accel":-0.688325,"accel_momentum":-2.435709,"rvol_3bar":[1.137882,0.378421,0.247831],"trend_3bar":"DECELERATING","projected_rvol":0.166289},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":103.0,"sell_vol":27.0,"unclassified_vol":0.0,"imbalance":0.584615,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":5.557468},"context":{"vwap":8.643127,"price_vs_vwap_pct":0.484465,"ema9":8.701921,"ema20":8.71258,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":16.956245,"atr":0.015528,"spread_atr":0.64399,"own_change_pct":-0.170017,"rel_strength_pct":{"SPY":-0.185527,"IWM":-0.135064}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.144886},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"c598e770e76b","ts":"2026-09-21T18:39:35.109823+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"held 104.5s, plan says PASS; stop 7.96, target 8.45 (premarket_high), R:R 2.19; target 0.34 away > ~0.10 reachable in 75 min","plan":{"state":"PASS","setup":"","stop":7.9584,"target":8.45,"target_label":"premarket_high","reward_risk":2.19,"pos_in_5d_range_pct":120.9,"room_to_5d_high_atr":-0.66},"price":8.1124,"vwap":8.0803,"ext_from_open_pct":-0.95,"max_ext_allowed_pct":3.0,"volume_pace":0.433,"trend":"flat","recent_slope_pct":0.0012,"volatility":"high"},"price":8.1124,"volume":{"bars":309,"last_bar_volume":1466.0,"baseline_avg":3777.7,"bar_rvol":0.388067,"raw_accel":-0.569836,"smooth_accel":-0.457765,"accel_momentum":-0.006613,"rvol_3bar":[1.085274,0.938752,0.388067],"trend_3bar":"DECELERATING","projected_rvol":1.009241},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1521.0,"sell_vol":505.0,"unclassified_vol":0.0,"imbalance":0.501481,"bid":8.11,"ask":8.12,"spread_pct":0.123229,"quote_size_imbalance":null,"quote_age_s":6.212221},"context":{"vwap":8.080269,"price_vs_vwap_pct":0.397647,"ema9":8.099112,"ema20":8.095058,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.179453,"dist_to_hod_atr":14.754195,"atr":0.018056,"spread_atr":0.553836,"own_change_pct":-0.182673,"rel_strength_pct":{"SPY":-0.198183,"IWM":-0.14772}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.194608},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"1a7202238ac8","ts":"2026-09-21T18:39:40.364532+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7219,"target":8.91,"target_label":"ceiling","reward_risk":1.14,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.81,"vwap":8.792,"ext_from_open_pct":3.4,"max_ext_allowed_pct":4.0,"volume_pace":0.446,"trend":"flat","recent_slope_pct":-0.1104,"volatility":"unknown"},"price":8.81,"volume":{"bars":309,"last_bar_volume":116126.0,"baseline_avg":51745.75,"bar_rvol":2.244165,"raw_accel":2.492511,"smooth_accel":0.245023,"accel_momentum":0.46224,"rvol_3bar":[0.312611,0.631869,2.244165],"trend_3bar":"ACCELERATING","projected_rvol":0.445312},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":7741.0,"sell_vol":6085.0,"unclassified_vol":0.0,"imbalance":0.119774,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":1.56948},"context":{"vwap":8.79202,"price_vs_vwap_pct":0.204508,"ema9":8.8334,"ema20":8.840455,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.454139,"dist_to_hod_atr":5.620573,"atr":0.023129,"spread_atr":0.432352,"own_change_pct":-0.369588,"rel_strength_pct":{"SPY":-0.385097,"IWM":-0.334635}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.268793},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c79d4661b6ed","ts":"2026-09-21T18:39:45.549910+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"held 114.9s, plan says WATCH; stop 7.95, target 8.16 (ceiling), R:R 0.38; selling not fading: red-bar volume 3.06x the advance (max 0.7); imbalance -100% still heavy selling; no reclaim yet (needs a c","plan":{"state":"WATCH","setup":"","stop":7.9473,"target":8.16,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":120.4,"room_to_5d_high_atr":-0.64},"price":8.1013,"vwap":8.0803,"ext_from_open_pct":-1.08,"max_ext_allowed_pct":3.0,"volume_pace":0.433,"trend":"flat","recent_slope_pct":-0.0262,"volatility":"high"},"price":8.1013,"volume":{"bars":309,"last_bar_volume":1466.0,"baseline_avg":3777.7,"bar_rvol":0.388067,"raw_accel":-0.569836,"smooth_accel":-0.457765,"accel_momentum":-0.006613,"rvol_3bar":[1.085274,0.938752,0.388067],"trend_3bar":"DECELERATING","projected_rvol":0.813139},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":11.0,"sell_vol":200.0,"unclassified_vol":0.0,"imbalance":-0.895735,"bid":8.11,"ask":8.12,"spread_pct":0.123229,"quote_size_imbalance":null,"quote_age_s":16.652308},"context":{"vwap":8.080269,"price_vs_vwap_pct":0.260275,"ema9":8.099112,"ema20":8.095058,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.31193,"dist_to_hod_atr":15.368953,"atr":0.018056,"spread_atr":0.553836,"own_change_pct":-0.182673,"rel_strength_pct":{"SPY":-0.198183,"IWM":-0.14772}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.347605},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"98beda4d38ce","ts":"2026-09-21T18:39:55.915108+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7219,"target":8.91,"target_label":"ceiling","reward_risk":1.14,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.81,"vwap":8.792,"ext_from_open_pct":3.4,"max_ext_allowed_pct":3.0,"volume_pace":0.446,"trend":"flat","recent_slope_pct":-0.1104,"volatility":"unknown"},"price":8.81,"volume":{"bars":309,"last_bar_volume":116126.0,"baseline_avg":51745.75,"bar_rvol":2.244165,"raw_accel":2.492511,"smooth_accel":0.245023,"accel_momentum":0.46224,"rvol_3bar":[0.312611,0.631869,2.244165],"trend_3bar":"ACCELERATING","projected_rvol":0.369887},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":3350.0,"sell_vol":1782.0,"unclassified_vol":0.0,"imbalance":0.305534,"bid":8.81,"ask":8.82,"spread_pct":0.113443,"quote_size_imbalance":null,"quote_age_s":0.147836},"context":{"vwap":8.79202,"price_vs_vwap_pct":0.204508,"ema9":8.8334,"ema20":8.840455,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.454139,"dist_to_hod_atr":5.620573,"atr":0.023129,"spread_atr":0.432352,"own_change_pct":-0.369588,"rel_strength_pct":{"SPY":-0.385097,"IWM":-0.334635}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.685668},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3839792aea23","ts":"2026-09-21T18:40:01.122133+00:00","symbol":"ARHS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.5581,"target":8.745,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":124.2,"room_to_5d_high_atr":-0.76},"price":8.66,"vwap":8.6433,"ext_from_open_pct":0.46,"max_ext_allowed_pct":3.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":-0.1007,"volatility":"medium"},"price":8.66,"volume":{"bars":310,"last_bar_volume":5509.0,"baseline_avg":2392.4,"bar_rvol":2.302709,"raw_accel":8.210834,"smooth_accel":-0.54081,"accel_momentum":0.147514,"rvol_3bar":[0.378421,0.247831,2.302709],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":996.0,"sell_vol":568.0,"unclassified_vol":0.0,"imbalance":0.273657,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":0.42932},"context":{"vwap":8.643306,"price_vs_vwap_pct":0.193145,"ema9":8.694537,"ema20":8.708048,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-3.221841,"dist_to_hod_atr":16.954077,"atr":0.017005,"spread_atr":0.588071,"own_change_pct":-0.520074,"rel_strength_pct":{"SPY":-0.544631,"IWM":-0.495607}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.630153},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4b46c78fdb13","ts":"2026-09-21T18:40:01.122133+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"held 130.5s, plan says PASS; stop 7.96, target 8.45 (premarket_high), R:R 2.15; target 0.33 away > ~0.10 reachable in 75 min","plan":{"state":"PASS","setup":"","stop":7.9648,"target":8.45,"target_label":"premarket_high","reward_risk":2.15,"pos_in_5d_range_pct":121.3,"room_to_5d_high_atr":-0.67},"price":8.1188,"vwap":8.0803,"ext_from_open_pct":-0.87,"max_ext_allowed_pct":3.0,"volume_pace":0.433,"trend":"flat","recent_slope_pct":0.0587,"volatility":"high"},"price":8.1188,"volume":{"bars":310,"last_bar_volume":2477.0,"baseline_avg":3735.5,"bar_rvol":0.663097,"raw_accel":0.689632,"smooth_accel":-0.083188,"accel_momentum":0.374577,"rvol_3bar":[0.938752,0.388067,0.663097],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":111.0,"sell_vol":241.0,"unclassified_vol":0.0,"imbalance":-0.369318,"bid":8.11,"ask":8.12,"spread_pct":0.123229,"quote_size_imbalance":null,"quote_age_s":32.224531},"context":{"vwap":8.080302,"price_vs_vwap_pct":0.476447,"ema9":8.10229,"ema20":8.096957,"ema_stack":true,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.10307,"dist_to_hod_atr":13.601047,"atr":0.019116,"spread_atr":0.523117,"own_change_pct":0.150565,"rel_strength_pct":{"SPY":0.126009,"IWM":0.175032}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.244894},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"020c5bdfda44","ts":"2026-09-21T18:42:00.874652+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.548,"target":8.745,"target_label":"ceiling","reward_risk":0.93,"pos_in_5d_range_pct":123.4,"room_to_5d_high_atr":-0.74},"price":8.6499,"vwap":8.6434,"ext_from_open_pct":0.35,"max_ext_allowed_pct":3.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":-0.1046,"volatility":"medium"},"price":8.6499,"volume":{"bars":312,"last_bar_volume":4151.0,"baseline_avg":2656.25,"bar_rvol":1.562729,"raw_accel":0.908506,"smooth_accel":1.930181,"accel_momentum":2.346765,"rvol_3bar":[2.302709,0.826132,1.562729],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":2568.0,"sell_vol":1069.0,"unclassified_vol":0.0,"imbalance":0.412153,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":1.201482},"context":{"vwap":8.643406,"price_vs_vwap_pct":0.075138,"ema9":8.678704,"ema20":8.697563,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-3.334712,"dist_to_hod_atr":13.949565,"atr":0.021391,"spread_atr":0.467479,"own_change_pct":-0.44515,"rel_strength_pct":{"SPY":-0.470997,"IWM":-0.446898}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.644083},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e5550acb3a64","ts":"2026-09-21T18:42:11.216059+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.941,"target":8.16,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":120.1,"room_to_5d_high_atr":-0.63},"price":8.095,"vwap":8.0803,"ext_from_open_pct":-1.16,"max_ext_allowed_pct":3.0,"volume_pace":0.43,"trend":"flat","recent_slope_pct":0.0227,"volatility":"high"},"price":8.095,"volume":{"bars":312,"last_bar_volume":280.0,"baseline_avg":3463.6,"bar_rvol":0.080841,"raw_accel":-0.84252,"smooth_accel":-0.476691,"accel_momentum":-0.156952,"rvol_3bar":[0.663097,0.513888,0.080841],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":326.0,"sell_vol":302.0,"unclassified_vol":0.0,"imbalance":0.038217,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":1.924695},"context":{"vwap":8.080331,"price_vs_vwap_pct":0.181544,"ema9":8.107785,"ema20":8.100693,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.38712,"dist_to_hod_atr":14.796845,"atr":0.01918,"spread_atr":0.521383,"own_change_pct":0.188835,"rel_strength_pct":{"SPY":0.162988,"IWM":0.187087}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.003089},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"f64d9dee1b66","ts":"2026-09-21T18:42:21.603632+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3842,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.087,"trend":"flat","recent_slope_pct":0.0818,"volatility":"unknown"},"price":6.48,"volume":{"bars":312,"last_bar_volume":9537.0,"baseline_avg":31486.25,"bar_rvol":0.302894,"raw_accel":-0.855509,"smooth_accel":0.190654,"accel_momentum":0.264108,"rvol_3bar":[0.442097,2.292506,0.302894],"trend_3bar":"MIXED","projected_rvol":0.214079},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1167.0,"sell_vol":1490.0,"unclassified_vol":0.0,"imbalance":-0.121566,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":3.623488},"context":{"vwap":6.384221,"price_vs_vwap_pct":1.50024,"ema9":6.468801,"ema20":6.472275,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.268309,"atr":0.013226,"spread_atr":0.756103,"own_change_pct":0.098939,"rel_strength_pct":{"SPY":0.073093,"IWM":0.097192}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.036822},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"218af1b7c703","ts":"2026-09-21T18:42:21.603632+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7496,"target":8.91,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.838,"vwap":8.7924,"ext_from_open_pct":3.73,"max_ext_allowed_pct":4.0,"volume_pace":0.446,"trend":"flat","recent_slope_pct":0.0636,"volatility":"unknown"},"price":8.838,"volume":{"bars":312,"last_bar_volume":102833.0,"baseline_avg":50081.3,"bar_rvol":2.053321,"raw_accel":0.319691,"smooth_accel":0.198751,"accel_momentum":-1.224678,"rvol_3bar":[0.342673,1.482726,2.053321],"trend_3bar":"ACCELERATING","projected_rvol":1.340872},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":21956.0,"sell_vol":2627.0,"unclassified_vol":0.0,"imbalance":0.786275,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.980861},"context":{"vwap":8.79232,"price_vs_vwap_pct":0.519544,"ema9":8.830113,"ema20":8.836775,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.14094,"dist_to_hod_atr":4.406331,"atr":0.023149,"spread_atr":0.431993,"own_change_pct":-0.055461,"rel_strength_pct":{"SPY":-0.081308,"IWM":-0.057209}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.614475},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"315ac0310f52","ts":"2026-09-21T18:42:26.851952+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4095,"target":7.775,"target_label":"range_20d_high","reward_risk":20.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4742,"vwap":6.3842,"ext_from_open_pct":2.93,"max_ext_allowed_pct":3.0,"volume_pace":1.087,"trend":"flat","recent_slope_pct":0.0639,"volatility":"unknown"},"price":6.4742,"volume":{"bars":312,"last_bar_volume":9537.0,"baseline_avg":31486.25,"bar_rvol":0.302894,"raw_accel":-0.855509,"smooth_accel":0.190654,"accel_momentum":0.264108,"rvol_3bar":[0.442097,2.292506,0.302894],"trend_3bar":"MIXED","projected_rvol":0.208713},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1267.0,"sell_vol":1724.0,"unclassified_vol":0.0,"imbalance":-0.152792,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.306526},"context":{"vwap":6.384221,"price_vs_vwap_pct":1.409391,"ema9":6.468801,"ema20":6.472275,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.549923,"dist_to_hod_atr":2.706849,"atr":0.013226,"spread_atr":0.756103,"own_change_pct":0.098939,"rel_strength_pct":{"SPY":0.073093,"IWM":0.097192}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.04628},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d3440e5d49b2","ts":"2026-09-21T18:42:58.051238+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.1555,"target":12.515,"target_label":"clear air (typical 60-min move)","reward_risk":0.76,"pos_in_5d_range_pct":135.4,"room_to_5d_high_atr":-1.58},"price":12.36,"vwap":11.701,"ext_from_open_pct":5.91,"max_ext_allowed_pct":4.0,"volume_pace":0.211,"trend":"flat","recent_slope_pct":0.359,"volatility":"high"},"price":12.36,"volume":{"bars":312,"last_bar_volume":15786.0,"baseline_avg":14661.65,"bar_rvol":1.076686,"raw_accel":0.196362,"smooth_accel":2.307168,"accel_momentum":3.053661,"rvol_3bar":[0.836539,0.868824,1.076686],"trend_3bar":"ACCELERATING","projected_rvol":0.87054},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":9185.0,"sell_vol":2349.0,"unclassified_vol":0.0,"imbalance":0.592683,"bid":12.35,"ask":12.38,"spread_pct":0.24262,"quote_size_imbalance":null,"quote_age_s":2.879629},"context":{"vwap":11.698894,"price_vs_vwap_pct":5.651012,"ema9":12.238039,"ema20":12.18802,"ema_stack":true,"ema_warm":true,"hod":12.33,"dist_to_hod_pct":0.243309,"dist_to_hod_atr":-0.411927,"atr":0.072828,"spread_atr":0.411927,"own_change_pct":1.114028,"rel_strength_pct":{"SPY":1.088181,"IWM":1.11228}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.638133},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4026c786b03a","ts":"2026-09-21T18:43:08.455897+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.16,"target":12.5218,"target_label":"clear air (typical 60-min move)","reward_risk":0.76,"pos_in_5d_range_pct":135.6,"room_to_5d_high_atr":-1.58},"price":12.365,"vwap":11.7011,"ext_from_open_pct":5.96,"max_ext_allowed_pct":3.0,"volume_pace":0.211,"trend":"flat","recent_slope_pct":0.2639,"volatility":"high"},"price":12.365,"volume":{"bars":313,"last_bar_volume":12358.0,"baseline_avg":15257.7,"bar_rvol":0.809952,"raw_accel":-0.217154,"smooth_accel":0.950413,"accel_momentum":-1.356755,"rvol_3bar":[0.868824,1.076686,0.809952],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":8188.0,"sell_vol":2350.0,"unclassified_vol":0.0,"imbalance":0.553995,"bid":12.35,"ask":12.38,"spread_pct":0.24262,"quote_size_imbalance":null,"quote_age_s":5.032603},"context":{"vwap":11.701052,"price_vs_vwap_pct":5.674257,"ema9":12.263431,"ema20":12.204875,"ema_stack":true,"ema_warm":true,"hod":12.3705,"dist_to_hod_pct":-0.044461,"dist_to_hod_atr":0.072275,"atr":0.076098,"spread_atr":0.394229,"own_change_pct":1.518883,"rel_strength_pct":{"SPY":1.500792,"IWM":1.469927}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.448709},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7f8c53ba8323","ts":"2026-09-21T18:43:13.577610+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7399,"target":8.91,"target_label":"ceiling","reward_risk":0.93,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8282,"vwap":8.7924,"ext_from_open_pct":3.62,"max_ext_allowed_pct":3.0,"volume_pace":0.446,"trend":"flat","recent_slope_pct":0.0268,"volatility":"unknown"},"price":8.8282,"volume":{"bars":313,"last_bar_volume":44304.0,"baseline_avg":53220.45,"bar_rvol":0.832462,"raw_accel":-0.569166,"smooth_accel":0.340539,"accel_momentum":0.141787,"rvol_3bar":[1.482726,2.053321,0.832462],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":20327.0,"sell_vol":9209.0,"unclassified_vol":0.0,"imbalance":0.376422,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.504439},"context":{"vwap":8.792397,"price_vs_vwap_pct":0.407206,"ema9":8.83109,"ema20":8.836606,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.250559,"dist_to_hod_atr":4.901503,"atr":0.022809,"spread_atr":0.438417,"own_change_pct":0.360092,"rel_strength_pct":{"SPY":0.342001,"IWM":0.311136}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.313357},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cf8e122d74c5","ts":"2026-09-21T18:43:44.516066+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.16,"target":12.5467,"target_label":"clear air (typical 60-min move)","reward_risk":0.68,"pos_in_5d_range_pct":136.3,"room_to_5d_high_atr":-1.61},"price":12.3899,"vwap":11.7029,"ext_from_open_pct":6.17,"max_ext_allowed_pct":3.0,"volume_pace":0.212,"trend":"flat","recent_slope_pct":0.3042,"volatility":"high"},"price":12.3899,"volume":{"bars":313,"last_bar_volume":12358.0,"baseline_avg":15257.7,"bar_rvol":0.809952,"raw_accel":-0.217154,"smooth_accel":0.950413,"accel_momentum":-1.356755,"rvol_3bar":[0.868824,1.076686,0.809952],"trend_3bar":"MIXED","projected_rvol":0.902103},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":2162.0,"sell_vol":7604.0,"unclassified_vol":0.0,"imbalance":-0.557239,"bid":12.37,"ask":12.39,"spread_pct":0.161551,"quote_size_imbalance":null,"quote_age_s":3.413224},"context":{"vwap":11.701052,"price_vs_vwap_pct":5.887058,"ema9":12.263431,"ema20":12.204875,"ema_stack":true,"ema_warm":true,"hod":12.3705,"dist_to_hod_pct":0.156825,"dist_to_hod_atr":-0.254935,"atr":0.076098,"spread_atr":0.26282,"own_change_pct":1.518883,"rel_strength_pct":{"SPY":1.500792,"IWM":1.469927}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.451337},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"585261214cd1","ts":"2026-09-21T18:43:49.662975+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.91,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7925,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":0.446,"trend":"flat","recent_slope_pct":0.0422,"volatility":"unknown"},"price":8.835,"volume":{"bars":313,"last_bar_volume":44304.0,"baseline_avg":53220.45,"bar_rvol":0.832462,"raw_accel":-0.569166,"smooth_accel":0.340539,"accel_momentum":0.141787,"rvol_3bar":[1.482726,2.053321,0.832462],"trend_3bar":"MIXED","projected_rvol":0.922694},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":10871.0,"sell_vol":11081.0,"unclassified_vol":0.0,"imbalance":-0.009566,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.028487},"context":{"vwap":8.792397,"price_vs_vwap_pct":0.484546,"ema9":8.83109,"ema20":8.836606,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":4.60338,"atr":0.022809,"spread_atr":0.438417,"own_change_pct":0.360092,"rel_strength_pct":{"SPY":0.342001,"IWM":0.311136}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.007964},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5b1078614b63","ts":"2026-09-21T18:43:54.863054+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7418,"target":8.91,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8301,"vwap":8.7925,"ext_from_open_pct":3.64,"max_ext_allowed_pct":3.0,"volume_pace":0.445,"trend":"flat","recent_slope_pct":0.0311,"volatility":"unknown"},"price":8.8301,"volume":{"bars":313,"last_bar_volume":44304.0,"baseline_avg":53220.45,"bar_rvol":0.832462,"raw_accel":-0.569166,"smooth_accel":0.340539,"accel_momentum":0.141787,"rvol_3bar":[1.482726,2.053321,0.832462],"trend_3bar":"MIXED","projected_rvol":0.902742},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":8589.0,"sell_vol":4686.0,"unclassified_vol":0.0,"imbalance":0.294011,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":1.370221},"context":{"vwap":8.792397,"price_vs_vwap_pct":0.428816,"ema9":8.83109,"ema20":8.836606,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.229306,"dist_to_hod_atr":4.818204,"atr":0.022809,"spread_atr":0.438417,"own_change_pct":0.360092,"rel_strength_pct":{"SPY":0.342001,"IWM":0.311136}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.244753},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0e903178e7a6","ts":"2026-09-21T18:44:05.406202+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.16,"target":12.5435,"target_label":"clear air (typical 60-min move)","reward_risk":0.7,"pos_in_5d_range_pct":136.1,"room_to_5d_high_atr":-1.61},"price":12.385,"vwap":11.704,"ext_from_open_pct":6.13,"max_ext_allowed_pct":3.0,"volume_pace":0.212,"trend":"flat","recent_slope_pct":0.2188,"volatility":"high"},"price":12.385,"volume":{"bars":314,"last_bar_volume":11066.0,"baseline_avg":15756.8,"bar_rvol":0.7023,"raw_accel":-0.104548,"smooth_accel":0.318825,"accel_momentum":-0.631587,"rvol_3bar":[1.076686,0.809952,0.7023],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2447.0,"sell_vol":5350.0,"unclassified_vol":0.0,"imbalance":-0.372323,"bid":12.38,"ask":12.39,"spread_pct":0.080743,"quote_size_imbalance":null,"quote_age_s":0.059864},"context":{"vwap":11.703042,"price_vs_vwap_pct":5.827187,"ema9":12.287945,"ema20":12.222125,"ema_stack":true,"ema_warm":true,"hod":12.39,"dist_to_hod_pct":-0.040355,"dist_to_hod_atr":0.063661,"atr":0.078541,"spread_atr":0.127322,"own_change_pct":1.691297,"rel_strength_pct":{"SPY":1.662867,"IWM":1.635353}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.261482},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"e058d9c78868","ts":"2026-09-21T18:44:05.406202+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.941,"target":8.16,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":120.1,"room_to_5d_high_atr":-0.63},"price":8.095,"vwap":8.0804,"ext_from_open_pct":-1.16,"max_ext_allowed_pct":4.0,"volume_pace":0.429,"trend":"flat","recent_slope_pct":-0.0833,"volatility":"high"},"price":8.095,"volume":{"bars":314,"last_bar_volume":1046.0,"baseline_avg":3329.15,"bar_rvol":0.314194,"raw_accel":-0.747037,"smooth_accel":-0.045447,"accel_momentum":0.112083,"rvol_3bar":[0.080841,1.21489,0.314194],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":381.0,"sell_vol":929.0,"unclassified_vol":0.0,"imbalance":-0.418321,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":0.580347},"context":{"vwap":8.080379,"price_vs_vwap_pct":0.18094,"ema9":8.103203,"ema20":8.09967,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.38712,"dist_to_hod_atr":15.106485,"atr":0.018787,"spread_atr":0.532293,"own_change_pct":0.098923,"rel_strength_pct":{"SPY":0.070493,"IWM":0.042979}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.131434},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c79a33c68d9d","ts":"2026-09-21T18:44:15.741114+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7516,"target":8.91,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.84,"vwap":8.7925,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":0.445,"trend":"flat","recent_slope_pct":0.0302,"volatility":"unknown"},"price":8.84,"volume":{"bars":314,"last_bar_volume":44264.0,"baseline_avg":51926.8,"bar_rvol":0.852431,"raw_accel":-0.000903,"smooth_accel":-0.099539,"accel_momentum":-0.440078,"rvol_3bar":[2.053321,0.832462,0.852431],"trend_3bar":"MIXED","projected_rvol":0.131762},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1913.0,"sell_vol":3872.0,"unclassified_vol":0.0,"imbalance":-0.338634,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.179073},"context":{"vwap":8.792476,"price_vs_vwap_pct":0.540506,"ema9":8.831312,"ema20":8.836186,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.118568,"dist_to_hod_atr":4.409153,"atr":0.02268,"spread_atr":0.440915,"own_change_pct":0.195122,"rel_strength_pct":{"SPY":0.166692,"IWM":0.139178}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.288662},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a5f9376b9875","ts":"2026-09-21T18:44:20.865647+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7441,"target":8.91,"target_label":"ceiling","reward_risk":0.88,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8324,"vwap":8.7925,"ext_from_open_pct":3.67,"max_ext_allowed_pct":3.0,"volume_pace":0.445,"trend":"flat","recent_slope_pct":0.013,"volatility":"unknown"},"price":8.8324,"volume":{"bars":314,"last_bar_volume":44264.0,"baseline_avg":51926.8,"bar_rvol":0.852431,"raw_accel":-0.000903,"smooth_accel":-0.099539,"accel_momentum":-0.440078,"rvol_3bar":[2.053321,0.832462,0.852431],"trend_3bar":"MIXED","projected_rvol":0.113412},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":1952.0,"sell_vol":3488.0,"unclassified_vol":0.0,"imbalance":-0.282353,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":4.162749},"context":{"vwap":8.792476,"price_vs_vwap_pct":0.454068,"ema9":8.831312,"ema20":8.836186,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.203579,"dist_to_hod_atr":4.744249,"atr":0.02268,"spread_atr":0.440915,"own_change_pct":0.195122,"rel_strength_pct":{"SPY":0.166692,"IWM":0.139178}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.240686},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1d51de6ad462","ts":"2026-09-21T18:44:26.004168+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.16,"target":12.5435,"target_label":"clear air (typical 60-min move)","reward_risk":0.7,"pos_in_5d_range_pct":136.1,"room_to_5d_high_atr":-1.61},"price":12.385,"vwap":11.7044,"ext_from_open_pct":6.13,"max_ext_allowed_pct":3.0,"volume_pace":0.212,"trend":"flat","recent_slope_pct":0.2188,"volatility":"high"},"price":12.385,"volume":{"bars":314,"last_bar_volume":11066.0,"baseline_avg":15756.8,"bar_rvol":0.7023,"raw_accel":-0.104548,"smooth_accel":0.318825,"accel_momentum":-0.631587,"rvol_3bar":[1.076686,0.809952,0.7023],"trend_3bar":"DECELERATING","projected_rvol":1.130466},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2144.0,"sell_vol":5603.0,"unclassified_vol":0.0,"imbalance":-0.446495,"bid":12.38,"ask":12.39,"spread_pct":0.080743,"quote_size_imbalance":null,"quote_age_s":4.4369},"context":{"vwap":11.703042,"price_vs_vwap_pct":5.827187,"ema9":12.287945,"ema20":12.222125,"ema_stack":true,"ema_warm":true,"hod":12.39,"dist_to_hod_pct":-0.040355,"dist_to_hod_atr":0.063661,"atr":0.078541,"spread_atr":0.127322,"own_change_pct":1.691297,"rel_strength_pct":{"SPY":1.662867,"IWM":1.635353}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.313574},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"3d9797416234","ts":"2026-09-21T18:44:41.741806+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.941,"target":8.16,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":120.1,"room_to_5d_high_atr":-0.63},"price":8.095,"vwap":8.0804,"ext_from_open_pct":-1.16,"max_ext_allowed_pct":4.0,"volume_pace":0.428,"trend":"flat","recent_slope_pct":-0.0833,"volatility":"high"},"price":8.095,"volume":{"bars":314,"last_bar_volume":1046.0,"baseline_avg":3329.15,"bar_rvol":0.314194,"raw_accel":-0.747037,"smooth_accel":-0.045447,"accel_momentum":0.112083,"rvol_3bar":[0.080841,1.21489,0.314194],"trend_3bar":"MIXED","projected_rvol":0.67312},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":213.0,"sell_vol":145.0,"unclassified_vol":0.0,"imbalance":0.189944,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":2.490856},"context":{"vwap":8.080379,"price_vs_vwap_pct":0.18094,"ema9":8.103203,"ema20":8.09967,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.38712,"dist_to_hod_atr":15.106485,"atr":0.018787,"spread_atr":0.532293,"own_change_pct":0.098923,"rel_strength_pct":{"SPY":0.070493,"IWM":0.042979}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.059679},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a93225f3b424","ts":"2026-09-21T18:44:57.415957+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7596,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":-0.0354,"volatility":"unknown"},"price":5.76,"volume":{"bars":314,"last_bar_volume":17484.0,"baseline_avg":34836.25,"bar_rvol":0.501891,"raw_accel":-0.285288,"smooth_accel":0.843365,"accel_momentum":1.263765,"rvol_3bar":[1.198275,0.718056,0.501891],"trend_3bar":"DECELERATING","projected_rvol":2.093896},"flow":{"window_s":30,"trades":253,"trade_rate":8.433333,"buy_vol":5417.0,"sell_vol":49282.0,"unclassified_vol":0.0,"imbalance":-0.801934,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.846985},"context":{"vwap":5.75957,"price_vs_vwap_pct":0.007459,"ema9":5.765285,"ema20":5.767126,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":9.179453,"atr":0.011983,"spread_atr":0.834496,"own_change_pct":-0.17331,"rel_strength_pct":{"SPY":-0.20174,"IWM":-0.229254}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.402484},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"148f2577a954","ts":"2026-09-21T18:45:02.615510+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":12.16,"target":12.559,"target_label":"clear air (typical 60-min move)","reward_risk":0.66,"pos_in_5d_range_pct":136.5,"room_to_5d_high_atr":-1.63},"price":12.4,"vwap":11.707,"ext_from_open_pct":6.26,"max_ext_allowed_pct":3.0,"volume_pace":0.212,"trend":"flat","recent_slope_pct":0.1482,"volatility":"high"},"price":12.4,"volume":{"bars":315,"last_bar_volume":20814.0,"baseline_avg":15892.3,"bar_rvol":1.309691,"raw_accel":0.880896,"smooth_accel":0.073634,"accel_momentum":-0.245192,"rvol_3bar":[0.809952,0.7023,1.309691],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":6626.0,"sell_vol":5712.0,"unclassified_vol":0.0,"imbalance":0.07408,"bid":12.39,"ask":12.41,"spread_pct":0.16129,"quote_size_imbalance":null,"quote_age_s":2.606077},"context":{"vwap":11.70689,"price_vs_vwap_pct":5.920531,"ema9":12.310356,"ema20":12.239066,"ema_stack":true,"ema_warm":true,"hod":12.42,"dist_to_hod_pct":-0.161031,"dist_to_hod_atr":0.247212,"atr":0.080902,"spread_atr":0.247212,"own_change_pct":1.265823,"rel_strength_pct":{"SPY":1.238688,"IWM":1.20464}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.097022},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"837c016ffa4a","ts":"2026-09-21T18:45:02.615510+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.76","plan":{"state":"PASS","setup":"","stop":5.6974,"target":5.7946,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.755,"vwap":5.7596,"ext_from_open_pct":3.88,"max_ext_allowed_pct":4.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":-0.0434,"volatility":"unknown"},"price":5.755,"volume":{"bars":315,"last_bar_volume":69862.0,"baseline_avg":32726.5,"bar_rvol":2.134723,"raw_accel":2.995768,"smooth_accel":0.57958,"accel_momentum":-0.263784,"rvol_3bar":[0.718056,0.501891,2.134723],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":2657.0,"sell_vol":7027.0,"unclassified_vol":0.0,"imbalance":-0.45126,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.331761},"context":{"vwap":5.759572,"price_vs_vwap_pct":-0.079376,"ema9":5.764228,"ema20":5.766448,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.959114,"dist_to_hod_atr":9.159036,"atr":0.012556,"spread_atr":0.796438,"own_change_pct":-0.109256,"rel_strength_pct":{"SPY":-0.13639,"IWM":-0.170438}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.963315},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bb62c234e9c4","ts":"2026-09-21T18:45:07.821715+00:00","symbol":"SECZ","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.21x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":12.16,"target":12.569,"target_label":"clear air (typical 60-min move)","reward_risk":0.64,"pos_in_5d_range_pct":136.8,"room_to_5d_high_atr":-1.64},"price":12.41,"vwap":11.7072,"ext_from_open_pct":6.34,"max_ext_allowed_pct":3.0,"volume_pace":0.212,"trend":"flat","recent_slope_pct":0.1643,"volatility":"high"},"price":12.41,"volume":{"bars":315,"last_bar_volume":20814.0,"baseline_avg":15892.3,"bar_rvol":1.309691,"raw_accel":0.880896,"smooth_accel":0.073634,"accel_momentum":-0.245192,"rvol_3bar":[0.809952,0.7023,1.309691],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1078.0,"sell_vol":4145.0,"unclassified_vol":0.0,"imbalance":-0.58721,"bid":12.4,"ask":12.42,"spread_pct":0.16116,"quote_size_imbalance":null,"quote_age_s":1.808097},"context":{"vwap":11.70689,"price_vs_vwap_pct":6.005951,"ema9":12.310356,"ema20":12.239066,"ema_stack":true,"ema_warm":true,"hod":12.42,"dist_to_hod_pct":-0.080515,"dist_to_hod_atr":0.123606,"atr":0.080902,"spread_atr":0.247212,"own_change_pct":1.265823,"rel_strength_pct":{"SPY":1.238688,"IWM":1.20464}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.769064},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"af4c60683cbc","ts":"2026-09-21T18:45:07.821715+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.941,"target":8.16,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":120.1,"room_to_5d_high_atr":-0.63},"price":8.095,"vwap":8.0804,"ext_from_open_pct":-1.16,"max_ext_allowed_pct":4.0,"volume_pace":0.427,"trend":"flat","recent_slope_pct":-0.0512,"volatility":"high"},"price":8.095,"volume":{"bars":315,"last_bar_volume":1868.0,"baseline_avg":2562.45,"bar_rvol":0.72899,"raw_accel":0.785851,"smooth_accel":0.554355,"accel_momentum":0.599802,"rvol_3bar":[1.21489,0.314194,0.72899],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":244.0,"sell_vol":174.0,"unclassified_vol":0.0,"imbalance":0.167464,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":5.293102},"context":{"vwap":8.080394,"price_vs_vwap_pct":0.180764,"ema9":8.102302,"ema20":8.099578,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.38712,"dist_to_hod_atr":15.3746,"atr":0.018459,"spread_atr":0.541741,"own_change_pct":-0.200863,"rel_strength_pct":{"SPY":-0.227998,"IWM":-0.262045}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.12208},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4a8b38840260","ts":"2026-09-21T18:45:07.821715+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7596,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":-0.026,"volatility":"unknown"},"price":5.76,"volume":{"bars":315,"last_bar_volume":69862.0,"baseline_avg":32726.5,"bar_rvol":2.134723,"raw_accel":2.995768,"smooth_accel":0.57958,"accel_momentum":-0.263784,"rvol_3bar":[0.718056,0.501891,2.134723],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":3459.0,"sell_vol":5418.0,"unclassified_vol":0.0,"imbalance":-0.220683,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.166942},"context":{"vwap":5.759572,"price_vs_vwap_pct":0.007436,"ema9":5.764228,"ema20":5.766448,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":8.760817,"atr":0.012556,"spread_atr":0.796438,"own_change_pct":-0.109256,"rel_strength_pct":{"SPY":-0.13639,"IWM":-0.170438}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.471096},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9b4a8cc6dcfa","ts":"2026-09-21T18:45:12.981058+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.76 below VWAP $5.76","plan":{"state":"PASS","setup":"","stop":5.6985,"target":6.07,"target_label":"range_20d_high","reward_risk":5.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7561,"vwap":5.7596,"ext_from_open_pct":3.9,"max_ext_allowed_pct":4.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":-0.0396,"volatility":"unknown"},"price":5.7561,"volume":{"bars":315,"last_bar_volume":69862.0,"baseline_avg":32726.5,"bar_rvol":2.134723,"raw_accel":2.995768,"smooth_accel":0.57958,"accel_momentum":-0.263784,"rvol_3bar":[0.718056,0.501891,2.134723],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":5004.0,"sell_vol":6009.0,"unclassified_vol":0.0,"imbalance":-0.091256,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":2.765289},"context":{"vwap":5.759572,"price_vs_vwap_pct":-0.060277,"ema9":5.764228,"ema20":5.766448,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.940375,"dist_to_hod_atr":9.071428,"atr":0.012556,"spread_atr":0.796438,"own_change_pct":-0.109256,"rel_strength_pct":{"SPY":-0.13639,"IWM":-0.170438}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.194806},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5c7f2ae54c70","ts":"2026-09-21T18:45:18.193161+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7596,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":-0.026,"volatility":"unknown"},"price":5.76,"volume":{"bars":315,"last_bar_volume":69862.0,"baseline_avg":32726.5,"bar_rvol":2.134723,"raw_accel":2.995768,"smooth_accel":0.57958,"accel_momentum":-0.263784,"rvol_3bar":[0.718056,0.501891,2.134723],"trend_3bar":"MIXED","projected_rvol":0.916529},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":4896.0,"sell_vol":5883.0,"unclassified_vol":0.0,"imbalance":-0.091567,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":7.977392},"context":{"vwap":5.759572,"price_vs_vwap_pct":0.007436,"ema9":5.764228,"ema20":5.766448,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":8.760817,"atr":0.012556,"spread_atr":0.796438,"own_change_pct":-0.109256,"rel_strength_pct":{"SPY":-0.13639,"IWM":-0.170438}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.19547},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2d4ed10ec19b","ts":"2026-09-21T18:45:18.193161+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3848,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":0.0255,"volatility":"unknown"},"price":6.48,"volume":{"bars":315,"last_bar_volume":19577.0,"baseline_avg":28874.1,"bar_rvol":0.678012,"raw_accel":-0.428776,"smooth_accel":-0.321248,"accel_momentum":0.109871,"rvol_3bar":[0.195228,1.230469,0.678012],"trend_3bar":"MIXED","projected_rvol":7.225089},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":36459.0,"sell_vol":28189.0,"unclassified_vol":0.0,"imbalance":0.127924,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.090323},"context":{"vwap":6.384484,"price_vs_vwap_pct":1.496059,"ema9":6.470994,"ema20":6.472475,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.328575,"atr":0.012883,"spread_atr":0.776192,"own_change_pct":0.199626,"rel_strength_pct":{"SPY":0.172491,"IWM":0.138443}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.086734},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ae811c98a085","ts":"2026-09-21T18:45:23.406801+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.76","plan":{"state":"PASS","setup":"","stop":5.6974,"target":5.7946,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.755,"vwap":5.7596,"ext_from_open_pct":3.88,"max_ext_allowed_pct":4.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":-0.0434,"volatility":"unknown"},"price":5.755,"volume":{"bars":315,"last_bar_volume":69862.0,"baseline_avg":32726.5,"bar_rvol":2.134723,"raw_accel":2.995768,"smooth_accel":0.57958,"accel_momentum":-0.263784,"rvol_3bar":[0.718056,0.501891,2.134723],"trend_3bar":"MIXED","projected_rvol":0.743007},"flow":{"window_s":30,"trades":124,"trade_rate":4.133333,"buy_vol":4012.0,"sell_vol":5581.0,"unclassified_vol":0.0,"imbalance":-0.163557,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":13.191032},"context":{"vwap":5.759572,"price_vs_vwap_pct":-0.079376,"ema9":5.764228,"ema20":5.766448,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.959114,"dist_to_hod_atr":9.159036,"atr":0.012556,"spread_atr":0.796438,"own_change_pct":-0.109256,"rel_strength_pct":{"SPY":-0.13639,"IWM":-0.170438}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.349148},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"340dcd204472","ts":"2026-09-21T18:45:28.708387+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7024,"target":6.07,"target_label":"range_20d_high","reward_risk":5.38,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.76,"vwap":5.7596,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.964,"trend":"flat","recent_slope_pct":-0.026,"volatility":"unknown"},"price":5.76,"volume":{"bars":315,"last_bar_volume":69862.0,"baseline_avg":32726.5,"bar_rvol":2.134723,"raw_accel":2.995768,"smooth_accel":0.57958,"accel_momentum":-0.263784,"rvol_3bar":[0.718056,0.501891,2.134723],"trend_3bar":"MIXED","projected_rvol":0.624252},"flow":{"window_s":30,"trades":129,"trade_rate":4.3,"buy_vol":4012.0,"sell_vol":5788.0,"unclassified_vol":0.0,"imbalance":-0.181224,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":18.492618},"context":{"vwap":5.759572,"price_vs_vwap_pct":0.007436,"ema9":5.764228,"ema20":5.766448,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.873935,"dist_to_hod_atr":8.760817,"atr":0.012556,"spread_atr":0.796438,"own_change_pct":-0.109256,"rel_strength_pct":{"SPY":-0.13639,"IWM":-0.170438}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.386864},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1e37fe16a53c","ts":"2026-09-21T18:45:28.708387+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4114,"target":7.775,"target_label":"range_20d_high","reward_risk":20.05,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4762,"vwap":6.3848,"ext_from_open_pct":2.96,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":0.0137,"volatility":"unknown"},"price":6.4762,"volume":{"bars":315,"last_bar_volume":19577.0,"baseline_avg":28874.1,"bar_rvol":0.678012,"raw_accel":-0.428776,"smooth_accel":-0.321248,"accel_momentum":0.109871,"rvol_3bar":[0.195228,1.230469,0.678012],"trend_3bar":"MIXED","projected_rvol":5.562818},"flow":{"window_s":30,"trades":166,"trade_rate":5.533333,"buy_vol":45936.0,"sell_vol":31037.0,"unclassified_vol":0.0,"imbalance":0.193561,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.523173},"context":{"vwap":6.384484,"price_vs_vwap_pct":1.436539,"ema9":6.470994,"ema20":6.472475,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.519201,"dist_to_hod_atr":2.623528,"atr":0.012883,"spread_atr":0.776192,"own_change_pct":0.199626,"rel_strength_pct":{"SPY":0.172491,"IWM":0.138443}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.131237},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f310e780f6e8","ts":"2026-09-21T18:45:39.200223+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.5682,"target":13.449,"target_label":"ceiling","reward_risk":1.25,"pos_in_5d_range_pct":151.3,"room_to_5d_high_atr":-1.53},"price":12.96,"vwap":12.9193,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":4.0,"volume_pace":0.482,"trend":"flat","recent_slope_pct":0.0923,"volatility":"high"},"price":12.96,"volume":{"bars":315,"last_bar_volume":2242.0,"baseline_avg":3646.15,"bar_rvol":0.614895,"raw_accel":-0.073171,"smooth_accel":-0.52429,"accel_momentum":-0.030992,"rvol_3bar":[1.775101,0.663049,0.614895],"trend_3bar":"DECELERATING","projected_rvol":5.488285},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":12332.0,"sell_vol":237.0,"unclassified_vol":0.0,"imbalance":0.962288,"bid":12.9,"ask":12.96,"spread_pct":0.464037,"quote_size_imbalance":null,"quote_age_s":0.34879},"context":{"vwap":12.919243,"price_vs_vwap_pct":0.315478,"ema9":12.89447,"ema20":12.884176,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.086957,"dist_to_hod_atr":16.017953,"atr":0.052441,"spread_atr":1.14414,"own_change_pct":0.5761,"rel_strength_pct":{"SPY":0.548965,"IWM":0.514917}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.591706},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b4a8ee2e5d4f","ts":"2026-09-21T18:45:39.200223+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.76 below VWAP $5.76","plan":{"state":"PASS","setup":"","stop":5.6987,"target":6.07,"target_label":"range_20d_high","reward_risk":5.45,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7563,"vwap":5.7596,"ext_from_open_pct":3.9,"max_ext_allowed_pct":4.0,"volume_pace":0.964,"trend":"flat","recent_slope_pct":-0.0389,"volatility":"unknown"},"price":5.7563,"volume":{"bars":315,"last_bar_volume":69862.0,"baseline_avg":32726.5,"bar_rvol":2.134723,"raw_accel":2.995768,"smooth_accel":0.57958,"accel_momentum":-0.263784,"rvol_3bar":[0.718056,0.501891,2.134723],"trend_3bar":"MIXED","projected_rvol":0.63181},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":4988.0,"sell_vol":1950.0,"unclassified_vol":0.0,"imbalance":0.437878,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":1.075742},"context":{"vwap":5.759572,"price_vs_vwap_pct":-0.056804,"ema9":5.764228,"ema20":5.766448,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.936968,"dist_to_hod_atr":9.055499,"atr":0.012556,"spread_atr":0.796438,"own_change_pct":-0.109256,"rel_strength_pct":{"SPY":-0.13639,"IWM":-0.170438}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.934749},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d23431e2aa15","ts":"2026-09-21T18:45:44.364560+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4142,"target":7.775,"target_label":"range_20d_high","reward_risk":20.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.479,"vwap":6.3848,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":0.0224,"volatility":"unknown"},"price":6.479,"volume":{"bars":315,"last_bar_volume":19577.0,"baseline_avg":28874.1,"bar_rvol":0.678012,"raw_accel":-0.428776,"smooth_accel":-0.321248,"accel_momentum":0.109871,"rvol_3bar":[0.195228,1.230469,0.678012],"trend_3bar":"MIXED","projected_rvol":3.647907},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":12221.0,"sell_vol":15778.0,"unclassified_vol":0.0,"imbalance":-0.12704,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.648763},"context":{"vwap":6.384484,"price_vs_vwap_pct":1.480396,"ema9":6.470994,"ema20":6.472475,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.47619,"dist_to_hod_atr":2.406195,"atr":0.012883,"spread_atr":0.776192,"own_change_pct":0.199626,"rel_strength_pct":{"SPY":0.172491,"IWM":0.138443}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.086135},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"85e35a56a9ac","ts":"2026-09-21T18:45:44.364560+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.91,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7926,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.045,"volatility":"unknown"},"price":8.845,"volume":{"bars":315,"last_bar_volume":54931.0,"baseline_avg":46906.85,"bar_rvol":1.171066,"raw_accel":0.240986,"smooth_accel":-0.279862,"accel_momentum":-0.180323,"rvol_3bar":[0.832462,0.852431,1.171066],"trend_3bar":"ACCELERATING","projected_rvol":0.124296},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":2302.0,"sell_vol":680.0,"unclassified_vol":0.0,"imbalance":0.54393,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.472522},"context":{"vwap":8.79259,"price_vs_vwap_pct":0.596067,"ema9":8.83405,"ema20":8.837026,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":4.177907,"atr":0.022739,"spread_atr":0.43978,"own_change_pct":0.283447,"rel_strength_pct":{"SPY":0.256312,"IWM":0.222264}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.636978},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"905bd2d73a49","ts":"2026-09-21T18:46:00.117100+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7034,"target":6.07,"target_label":"range_20d_high","reward_risk":5.36,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.761,"vwap":5.7596,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.963,"trend":"flat","recent_slope_pct":-0.0226,"volatility":"unknown"},"price":5.761,"volume":{"bars":315,"last_bar_volume":69862.0,"baseline_avg":32726.5,"bar_rvol":2.134723,"raw_accel":2.995768,"smooth_accel":0.57958,"accel_momentum":-0.263784,"rvol_3bar":[0.718056,0.501891,2.134723],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":4359.0,"sell_vol":2496.0,"unclassified_vol":0.0,"imbalance":0.271772,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.107096},"context":{"vwap":5.759572,"price_vs_vwap_pct":0.024799,"ema9":5.764228,"ema20":5.766448,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.856899,"dist_to_hod_atr":8.681173,"atr":0.012556,"spread_atr":0.796438,"own_change_pct":-0.109256,"rel_strength_pct":{"SPY":-0.147374,"IWM":-0.194914}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.580159},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a41c0b82b1de","ts":"2026-09-21T18:46:05.501856+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.76 below VWAP $5.76","plan":{"state":"PASS","setup":"","stop":5.6981,"target":6.07,"target_label":"range_20d_high","reward_risk":5.46,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":5.7557,"vwap":5.7596,"ext_from_open_pct":3.89,"max_ext_allowed_pct":3.0,"volume_pace":0.963,"trend":"flat","recent_slope_pct":-0.0306,"volatility":"unknown"},"price":5.7557,"volume":{"bars":316,"last_bar_volume":16645.0,"baseline_avg":35481.0,"bar_rvol":0.469124,"raw_accel":-0.761745,"smooth_accel":0.225731,"accel_momentum":-0.353849,"rvol_3bar":[0.501891,2.134723,0.469124],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":5109.0,"sell_vol":5218.0,"unclassified_vol":0.0,"imbalance":-0.010555,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":5.491852},"context":{"vwap":5.75957,"price_vs_vwap_pct":-0.067195,"ema9":5.763582,"ema20":5.765929,"ema_stack":false,"ema_warm":true,"hod":5.87,"dist_to_hod_pct":-1.947189,"dist_to_hod_atr":9.168793,"atr":0.012466,"spread_atr":0.802169,"own_change_pct":-0.116164,"rel_strength_pct":{"SPY":-0.154283,"IWM":-0.201823}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.004952},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2c7d9a9f35ae","ts":"2026-09-21T18:46:21.069002+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7391,"target":8.91,"target_label":"ceiling","reward_risk":0.94,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8274,"vwap":8.7926,"ext_from_open_pct":3.61,"max_ext_allowed_pct":3.0,"volume_pace":0.443,"trend":"flat","recent_slope_pct":-0.0228,"volatility":"unknown"},"price":8.8274,"volume":{"bars":316,"last_bar_volume":9243.0,"baseline_avg":46787.25,"bar_rvol":0.197554,"raw_accel":-0.831734,"smooth_accel":-0.51818,"accel_momentum":-0.238318,"rvol_3bar":[0.852431,1.171066,0.197554],"trend_3bar":"MIXED","projected_rvol":0.357714},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":8481.0,"sell_vol":2037.0,"unclassified_vol":0.0,"imbalance":0.612664,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":2.335882},"context":{"vwap":8.792607,"price_vs_vwap_pct":0.395705,"ema9":8.8327,"ema20":8.836099,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.259508,"dist_to_hod_atr":4.949411,"atr":0.02275,"spread_atr":0.439557,"own_change_pct":-0.004531,"rel_strength_pct":{"SPY":-0.04265,"IWM":-0.09019}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.121034},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9c010d2cb514","ts":"2026-09-21T18:46:31.391259+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7516,"target":8.91,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.84,"vwap":8.7926,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":0.443,"trend":"flat","recent_slope_pct":0.0058,"volatility":"unknown"},"price":8.84,"volume":{"bars":316,"last_bar_volume":9243.0,"baseline_avg":46787.25,"bar_rvol":0.197554,"raw_accel":-0.831734,"smooth_accel":-0.51818,"accel_momentum":-0.238318,"rvol_3bar":[0.852431,1.171066,0.197554],"trend_3bar":"MIXED","projected_rvol":0.616051},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":12804.0,"sell_vol":2183.0,"unclassified_vol":0.0,"imbalance":0.708681,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.382231},"context":{"vwap":8.792607,"price_vs_vwap_pct":0.539008,"ema9":8.8327,"ema20":8.836099,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.118568,"dist_to_hod_atr":4.395569,"atr":0.02275,"spread_atr":0.439557,"own_change_pct":-0.004531,"rel_strength_pct":{"SPY":-0.04265,"IWM":-0.09019}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.140003},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f022711d50f4","ts":"2026-09-21T18:46:52.214538+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4053,"target":6.51,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.385,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.08,"trend":"flat","recent_slope_pct":0.0124,"volatility":"unknown"},"price":6.47,"volume":{"bars":316,"last_bar_volume":78506.0,"baseline_avg":29316.55,"bar_rvol":2.677873,"raw_accel":3.010114,"smooth_accel":0.622336,"accel_momentum":0.943584,"rvol_3bar":[1.230469,0.678012,2.677873],"trend_3bar":"MIXED","projected_rvol":0.974228},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":2349.0,"sell_vol":20856.0,"unclassified_vol":0.0,"imbalance":-0.797544,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":1.423366},"context":{"vwap":6.384847,"price_vs_vwap_pct":1.333667,"ema9":6.472795,"ema20":6.473191,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.614439,"dist_to_hod_atr":2.972646,"atr":0.013456,"spread_atr":0.743161,"own_change_pct":0.165397,"rel_strength_pct":{"SPY":0.127278,"IWM":0.079738}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.135721},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"925dcfef2ef8","ts":"2026-09-21T18:46:52.214538+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7397,"target":8.91,"target_label":"ceiling","reward_risk":0.93,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.828,"vwap":8.7927,"ext_from_open_pct":3.62,"max_ext_allowed_pct":3.0,"volume_pace":0.443,"trend":"flat","recent_slope_pct":-0.0214,"volatility":"unknown"},"price":8.828,"volume":{"bars":316,"last_bar_volume":9243.0,"baseline_avg":46787.25,"bar_rvol":0.197554,"raw_accel":-0.831734,"smooth_accel":-0.51818,"accel_momentum":-0.238318,"rvol_3bar":[0.852431,1.171066,0.197554],"trend_3bar":"MIXED","projected_rvol":0.778854},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":19504.0,"sell_vol":6279.0,"unclassified_vol":0.0,"imbalance":0.512935,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.300085},"context":{"vwap":8.792607,"price_vs_vwap_pct":0.402529,"ema9":8.8327,"ema20":8.836099,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.252796,"dist_to_hod_atr":4.923038,"atr":0.02275,"spread_atr":0.439557,"own_change_pct":-0.004531,"rel_strength_pct":{"SPY":-0.04265,"IWM":-0.09019}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.101332},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1b4c4b868e21","ts":"2026-09-21T18:47:02.633548+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4146,"target":7.775,"target_label":"range_20d_high","reward_risk":20.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4794,"vwap":6.385,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":1.079,"trend":"flat","recent_slope_pct":0.0136,"volatility":"unknown"},"price":6.4794,"volume":{"bars":317,"last_bar_volume":25092.0,"baseline_avg":31655.8,"bar_rvol":0.792651,"raw_accel":-0.680381,"smooth_accel":1.470863,"accel_momentum":0.848528,"rvol_3bar":[0.678012,2.677873,0.792651],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":3352.0,"sell_vol":20633.0,"unclassified_vol":0.0,"imbalance":-0.720492,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":2.585511},"context":{"vwap":6.384961,"price_vs_vwap_pct":1.479082,"ema9":6.473236,"ema20":6.473364,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.470046,"dist_to_hod_atr":2.197731,"atr":0.013923,"spread_atr":0.718213,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.011628,"IWM":-0.061177}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.571099},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b7690c9a15f1","ts":"2026-09-21T18:47:13.050665+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4128,"target":7.775,"target_label":"range_20d_high","reward_risk":20.03,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4776,"vwap":6.3851,"ext_from_open_pct":2.98,"max_ext_allowed_pct":4.0,"volume_pace":1.081,"trend":"flat","recent_slope_pct":0.008,"volatility":"unknown"},"price":6.4776,"volume":{"bars":317,"last_bar_volume":25092.0,"baseline_avg":31655.8,"bar_rvol":0.792651,"raw_accel":-0.680381,"smooth_accel":1.470863,"accel_momentum":0.848528,"rvol_3bar":[0.678012,2.677873,0.792651],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":22104.0,"sell_vol":40730.0,"unclassified_vol":0.0,"imbalance":-0.296432,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.364841},"context":{"vwap":6.384961,"price_vs_vwap_pct":1.45089,"ema9":6.473236,"ema20":6.473364,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.497696,"dist_to_hod_atr":2.327009,"atr":0.013923,"spread_atr":0.718213,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.011628,"IWM":-0.061177}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.234967},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"76a8d6807130","ts":"2026-09-21T18:47:13.050665+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.9,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7928,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.443,"trend":"flat","recent_slope_pct":0.0346,"volatility":"unknown"},"price":8.845,"volume":{"bars":317,"last_bar_volume":33082.0,"baseline_avg":44265.9,"bar_rvol":0.747347,"raw_accel":1.989389,"smooth_accel":-0.491873,"accel_momentum":0.026307,"rvol_3bar":[1.171066,0.197554,0.747347],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":32755.0,"sell_vol":7535.0,"unclassified_vol":0.0,"imbalance":0.625962,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":1.384521},"context":{"vwap":8.792678,"price_vs_vwap_pct":0.595059,"ema9":8.83616,"ema20":8.837423,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":4.176449,"atr":0.022747,"spread_atr":0.439626,"own_change_pct":0.225366,"rel_strength_pct":{"SPY":0.213737,"IWM":0.164188}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.467811},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7848e0902841","ts":"2026-09-21T18:47:28.521409+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.268,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":4.0,"volume_pace":0.202,"trend":"flat","recent_slope_pct":0.0556,"volatility":"medium"},"price":5.295,"volume":{"bars":316,"last_bar_volume":178.0,"baseline_avg":765.6,"bar_rvol":0.232497,"raw_accel":-0.697793,"smooth_accel":-0.08775,"accel_momentum":-1.292656,"rvol_3bar":[0.328707,0.682938,0.232497],"trend_3bar":"MIXED","projected_rvol":6.685293},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":2225.0,"sell_vol":208.0,"unclassified_vol":0.0,"imbalance":0.829018,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":1.389386},"context":{"vwap":5.267794,"price_vs_vwap_pct":0.516467,"ema9":5.283358,"ema20":5.282064,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":4.246441,"atr":0.005887,"spread_atr":1.698576,"own_change_pct":0.092808,"rel_strength_pct":{"SPY":0.08118,"IWM":0.031631}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.192744},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fc183de6bd52","ts":"2026-09-21T18:47:33.797475+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4144,"target":7.775,"target_label":"range_20d_high","reward_risk":20.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4792,"vwap":6.3854,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":0.013,"volatility":"unknown"},"price":6.4792,"volume":{"bars":317,"last_bar_volume":25092.0,"baseline_avg":31655.8,"bar_rvol":0.792651,"raw_accel":-0.680381,"smooth_accel":1.470863,"accel_momentum":0.848528,"rvol_3bar":[0.678012,2.677873,0.792651],"trend_3bar":"MIXED","projected_rvol":5.380554},"flow":{"window_s":30,"trades":192,"trade_rate":6.4,"buy_vol":55807.0,"sell_vol":37479.0,"unclassified_vol":0.0,"imbalance":0.196471,"bid":6.48,"ask":6.49,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.135313},"context":{"vwap":6.384961,"price_vs_vwap_pct":1.475949,"ema9":6.473236,"ema20":6.473364,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.473118,"dist_to_hod_atr":2.212095,"atr":0.013923,"spread_atr":0.718213,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.011628,"IWM":-0.061177}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.155733},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3124ac76a247","ts":"2026-09-21T18:47:49.743905+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4138,"target":7.775,"target_label":"range_20d_high","reward_risk":20.01,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4786,"vwap":6.3855,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":0.0111,"volatility":"unknown"},"price":6.4786,"volume":{"bars":317,"last_bar_volume":25092.0,"baseline_avg":31655.8,"bar_rvol":0.792651,"raw_accel":-0.680381,"smooth_accel":1.470863,"accel_momentum":0.848528,"rvol_3bar":[0.678012,2.677873,0.792651],"trend_3bar":"MIXED","projected_rvol":4.81857},"flow":{"window_s":30,"trades":199,"trade_rate":6.633333,"buy_vol":50730.0,"sell_vol":33026.0,"unclassified_vol":0.0,"imbalance":0.211376,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.459174},"context":{"vwap":6.384961,"price_vs_vwap_pct":1.466552,"ema9":6.473236,"ema20":6.473364,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.482335,"dist_to_hod_atr":2.255188,"atr":0.013923,"spread_atr":0.718213,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.011628,"IWM":-0.061177}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.167547},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8747db76bb75","ts":"2026-09-21T18:47:49.743905+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7665,"target":9.21,"target_label":"prev_day_high","reward_risk":4.01,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.855,"vwap":8.7928,"ext_from_open_pct":3.93,"max_ext_allowed_pct":3.0,"volume_pace":0.443,"trend":"flat","recent_slope_pct":0.0572,"volatility":"unknown"},"price":8.855,"volume":{"bars":317,"last_bar_volume":33082.0,"baseline_avg":44265.9,"bar_rvol":0.747347,"raw_accel":1.989389,"smooth_accel":-0.491873,"accel_momentum":0.026307,"rvol_3bar":[1.171066,0.197554,0.747347],"trend_3bar":"MIXED","projected_rvol":1.807936},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":16666.0,"sell_vol":6802.0,"unclassified_vol":0.0,"imbalance":0.420317,"bid":8.85,"ask":8.86,"spread_pct":0.112931,"quote_size_imbalance":null,"quote_age_s":1.111569},"context":{"vwap":8.792678,"price_vs_vwap_pct":0.70879,"ema9":8.83616,"ema20":8.837423,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.950783,"dist_to_hod_atr":3.736823,"atr":0.022747,"spread_atr":0.439626,"own_change_pct":0.225366,"rel_strength_pct":{"SPY":0.213737,"IWM":0.164188}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.314123},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6cb591be9275","ts":"2026-09-21T18:47:54.950260+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2326,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.7,"room_to_5d_high_atr":0.11},"price":5.2903,"vwap":5.268,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.202,"trend":"flat","recent_slope_pct":0.0378,"volatility":"medium"},"price":5.2903,"volume":{"bars":316,"last_bar_volume":178.0,"baseline_avg":765.6,"bar_rvol":0.232497,"raw_accel":-0.697793,"smooth_accel":-0.08775,"accel_momentum":-1.292656,"rvol_3bar":[0.328707,0.682938,0.232497],"trend_3bar":"MIXED","projected_rvol":4.270034},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2182.0,"sell_vol":359.0,"unclassified_vol":0.0,"imbalance":0.717434,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":0.849394},"context":{"vwap":5.267794,"price_vs_vwap_pct":0.427246,"ema9":5.283358,"ema20":5.282064,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.558271,"dist_to_hod_atr":5.044772,"atr":0.005887,"spread_atr":1.698576,"own_change_pct":0.092808,"rel_strength_pct":{"SPY":0.08118,"IWM":0.031631}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.166802},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"643cdce672b7","ts":"2026-09-21T18:48:00.104135+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.268,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.202,"trend":"flat","recent_slope_pct":0.0556,"volatility":"medium"},"price":5.295,"volume":{"bars":316,"last_bar_volume":178.0,"baseline_avg":765.6,"bar_rvol":0.232497,"raw_accel":-0.697793,"smooth_accel":-0.08775,"accel_momentum":-1.292656,"rvol_3bar":[0.328707,0.682938,0.232497],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":500.0,"sell_vol":161.0,"unclassified_vol":0.0,"imbalance":0.512859,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":1.593263},"context":{"vwap":5.267794,"price_vs_vwap_pct":0.516467,"ema9":5.283358,"ema20":5.282064,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":4.246441,"atr":0.005887,"spread_atr":1.698576,"own_change_pct":0.092808,"rel_strength_pct":{"SPY":0.066968,"IWM":0.036886}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.119238},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dae32785ad8f","ts":"2026-09-21T18:48:05.448727+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2318,"target":5.315,"target_label":"prev_day_high","reward_risk":0.44,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.2895,"vwap":5.268,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":0.202,"trend":"flat","recent_slope_pct":0.0367,"volatility":"medium"},"price":5.2895,"volume":{"bars":317,"last_bar_volume":3094.0,"baseline_avg":761.75,"bar_rvol":4.0617,"raw_accel":15.2468,"smooth_accel":2.255481,"accel_momentum":2.34323,"rvol_3bar":[0.682938,0.232497,4.0617],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":503.0,"sell_vol":173.0,"unclassified_vol":0.0,"imbalance":0.488166,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":0.255038},"context":{"vwap":5.268023,"price_vs_vwap_pct":0.407686,"ema9":5.285686,"ema20":5.283296,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.573308,"dist_to_hod_atr":4.644602,"atr":0.006567,"spread_atr":1.52282,"own_change_pct":0.189215,"rel_strength_pct":{"SPY":0.163374,"IWM":0.133292}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.982783},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"20bea0369d93","ts":"2026-09-21T18:48:05.448727+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4152,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.48,"vwap":6.3855,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":0.0,"volatility":"unknown"},"price":6.48,"volume":{"bars":318,"last_bar_volume":127517.0,"baseline_avg":28909.1,"bar_rvol":4.410964,"raw_accel":4.081978,"smooth_accel":2.858927,"accel_momentum":1.388064,"rvol_3bar":[2.677873,0.792651,4.410964],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":16116.0,"sell_vol":15574.0,"unclassified_vol":0.0,"imbalance":0.017103,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":3.837344},"context":{"vwap":6.385525,"price_vs_vwap_pct":1.479518,"ema9":6.472589,"ema20":6.473043,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.460829,"dist_to_hod_atr":2.089501,"atr":0.014357,"spread_atr":0.6965,"own_change_pct":0.023189,"rel_strength_pct":{"SPY":-0.002651,"IWM":-0.032733}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.075442},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c7fdc277fcad","ts":"2026-09-21T18:48:10.606723+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4123,"target":7.775,"target_label":"range_20d_high","reward_risk":20.04,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4771,"vwap":6.3855,"ext_from_open_pct":2.97,"max_ext_allowed_pct":3.0,"volume_pace":1.082,"trend":"flat","recent_slope_pct":-0.009,"volatility":"unknown"},"price":6.4771,"volume":{"bars":318,"last_bar_volume":127517.0,"baseline_avg":28909.1,"bar_rvol":4.410964,"raw_accel":4.081978,"smooth_accel":2.858927,"accel_momentum":1.388064,"rvol_3bar":[2.677873,0.792651,4.410964],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":4917.0,"sell_vol":15680.0,"unclassified_vol":0.0,"imbalance":-0.522552,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.670711},"context":{"vwap":6.385525,"price_vs_vwap_pct":1.434103,"ema9":6.472589,"ema20":6.473043,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.505376,"dist_to_hod_atr":2.291486,"atr":0.014357,"spread_atr":0.6965,"own_change_pct":0.023189,"rel_strength_pct":{"SPY":-0.002651,"IWM":-0.032733}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.304957},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"338e3dff3e51","ts":"2026-09-21T18:48:36.480096+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.268,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0575,"volatility":"medium"},"price":5.295,"volume":{"bars":317,"last_bar_volume":3094.0,"baseline_avg":761.75,"bar_rvol":4.0617,"raw_accel":15.2468,"smooth_accel":2.255481,"accel_momentum":2.34323,"rvol_3bar":[0.682938,0.232497,4.0617],"trend_3bar":"MIXED","projected_rvol":0.164095},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":31.0,"sell_vol":30.0,"unclassified_vol":0.0,"imbalance":0.016393,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":2.960401},"context":{"vwap":5.268023,"price_vs_vwap_pct":0.512089,"ema9":5.285686,"ema20":5.283296,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.807051,"atr":0.006567,"spread_atr":1.52282,"own_change_pct":0.189215,"rel_strength_pct":{"SPY":0.163374,"IWM":0.133292}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.066585},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5fd4821fd023","ts":"2026-09-21T18:48:41.696473+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7714,"target":9.21,"target_label":"prev_day_high","reward_risk":3.95,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.86,"vwap":8.793,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.443,"trend":"flat","recent_slope_pct":0.0652,"volatility":"unknown"},"price":8.86,"volume":{"bars":318,"last_bar_volume":68565.0,"baseline_avg":44101.55,"bar_rvol":1.554707,"raw_accel":1.072577,"smooth_accel":-0.227242,"accel_momentum":0.264631,"rvol_3bar":[0.197554,0.747347,1.554707],"trend_3bar":"ACCELERATING","projected_rvol":1.538894},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":29366.0,"sell_vol":17099.0,"unclassified_vol":0.0,"imbalance":0.264005,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.418782},"context":{"vwap":8.792843,"price_vs_vwap_pct":0.76377,"ema9":8.839928,"ema20":8.839097,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.894855,"dist_to_hod_atr":3.440799,"atr":0.02325,"spread_atr":0.4301,"own_change_pct":0.226372,"rel_strength_pct":{"SPY":0.200532,"IWM":0.17045}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.410451},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aa2f8073e301","ts":"2026-09-21T18:48:46.897572+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7764,"target":9.21,"target_label":"prev_day_high","reward_risk":3.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.793,"ext_from_open_pct":4.05,"max_ext_allowed_pct":3.0,"volume_pace":0.443,"trend":"flat","recent_slope_pct":0.0765,"volatility":"unknown"},"price":8.865,"volume":{"bars":318,"last_bar_volume":68565.0,"baseline_avg":44101.55,"bar_rvol":1.554707,"raw_accel":1.072577,"smooth_accel":-0.227242,"accel_momentum":0.264631,"rvol_3bar":[0.197554,0.747347,1.554707],"trend_3bar":"ACCELERATING","projected_rvol":1.597868},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":21380.0,"sell_vol":6248.0,"unclassified_vol":0.0,"imbalance":0.547705,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.034226},"context":{"vwap":8.792843,"price_vs_vwap_pct":0.820634,"ema9":8.839928,"ema20":8.839097,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.838926,"dist_to_hod_atr":3.225749,"atr":0.02325,"spread_atr":0.4301,"own_change_pct":0.226372,"rel_strength_pct":{"SPY":0.200532,"IWM":0.17045}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.851521},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"30345ba4a929","ts":"2026-09-21T18:49:07.594358+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2681,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.202,"trend":"flat","recent_slope_pct":0.0401,"volatility":"medium"},"price":5.29,"volume":{"bars":318,"last_bar_volume":786.0,"baseline_avg":884.9,"bar_rvol":0.888236,"raw_accel":-0.74596,"smooth_accel":1.655759,"accel_momentum":-0.599721,"rvol_3bar":[0.232497,4.0617,0.888236],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":848.0,"sell_vol":400.0,"unclassified_vol":0.0,"imbalance":0.358974,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":2.13259},"context":{"vwap":5.268081,"price_vs_vwap_pct":0.41608,"ema9":5.287549,"ema20":5.284411,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.622093,"atr":0.006491,"spread_atr":1.540698,"own_change_pct":0.282192,"rel_strength_pct":{"SPY":0.246018,"IWM":0.233268}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.318854},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"46a67d1afbe9","ts":"2026-09-21T18:49:07.594358+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4154,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4802,"vwap":6.3856,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":1.08,"trend":"flat","recent_slope_pct":0.0006,"volatility":"unknown"},"price":6.4802,"volume":{"bars":319,"last_bar_volume":12810.0,"baseline_avg":32291.25,"bar_rvol":0.396702,"raw_accel":-0.899543,"smooth_accel":0.249813,"accel_momentum":-2.609114,"rvol_3bar":[0.792651,4.410964,0.396702],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1847.0,"sell_vol":2934.0,"unclassified_vol":0.0,"imbalance":-0.227358,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":2.043419},"context":{"vwap":6.385581,"price_vs_vwap_pct":1.481767,"ema9":6.473071,"ema20":6.47323,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.457757,"dist_to_hod_atr":2.104441,"atr":0.014161,"spread_atr":0.706188,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.036173,"IWM":-0.048924}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.090193},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c1130e4da476","ts":"2026-09-21T18:49:18.001716+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4053,"target":6.51,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.47,"vwap":6.3856,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":1.079,"trend":"flat","recent_slope_pct":-0.0309,"volatility":"unknown"},"price":6.47,"volume":{"bars":319,"last_bar_volume":12810.0,"baseline_avg":32291.25,"bar_rvol":0.396702,"raw_accel":-0.899543,"smooth_accel":0.249813,"accel_momentum":-2.609114,"rvol_3bar":[0.792651,4.410964,0.396702],"trend_3bar":"MIXED","projected_rvol":0.182695},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":2579.0,"sell_vol":2986.0,"unclassified_vol":0.0,"imbalance":-0.073136,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.267898},"context":{"vwap":6.385581,"price_vs_vwap_pct":1.322032,"ema9":6.473071,"ema20":6.47323,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.614439,"dist_to_hod_atr":2.824753,"atr":0.014161,"spread_atr":0.706188,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.036173,"IWM":-0.048924}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.029013},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5c24ce030868","ts":"2026-09-21T18:49:33.484966+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.17,"target":11.57,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.39,"vwap":11.3259,"ext_from_open_pct":-1.81,"max_ext_allowed_pct":3.0,"volume_pace":0.413,"trend":"flat","recent_slope_pct":-0.1401,"volatility":"unknown"},"price":11.39,"volume":{"bars":292,"last_bar_volume":333.0,"baseline_avg":187.85,"bar_rvol":1.772691,"raw_accel":6.090764,"smooth_accel":21.316667,"accel_momentum":14.148667,"rvol_3bar":[6.914446,0.10433,1.772691],"trend_3bar":"MIXED","projected_rvol":0.019077},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":11.38,"ask":11.49,"spread_pct":0.961959,"quote_size_imbalance":null,"quote_age_s":50.405096},"context":{"vwap":11.325882,"price_vs_vwap_pct":0.566116,"ema9":11.430669,"ema20":11.43855,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-4.686192,"dist_to_hod_atr":14.801629,"atr":0.037834,"spread_atr":2.907463,"own_change_pct":-0.687081,"rel_strength_pct":{"SPY":-0.723255,"IWM":-0.736005}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.772691},"shadow":{"decision":"FAIL","failed":["imbalance","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"04b0d154ebba","ts":"2026-09-21T18:49:33.484966+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.236,"target":5.315,"target_label":"prev_day_high","reward_risk":0.37,"pos_in_5d_range_pct":97.1,"room_to_5d_high_atr":0.09},"price":5.2937,"vwap":5.2681,"ext_from_open_pct":-0.49,"max_ext_allowed_pct":3.0,"volume_pace":0.202,"trend":"flat","recent_slope_pct":0.0541,"volatility":"medium"},"price":5.2937,"volume":{"bars":318,"last_bar_volume":786.0,"baseline_avg":884.9,"bar_rvol":0.888236,"raw_accel":-0.74596,"smooth_accel":1.655759,"accel_momentum":-0.599721,"rvol_3bar":[0.232497,4.0617,0.888236],"trend_3bar":"MIXED","projected_rvol":1.133953},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":39.0,"sell_vol":321.0,"unclassified_vol":0.0,"imbalance":-0.783333,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":2.470187},"context":{"vwap":5.268081,"price_vs_vwap_pct":0.486314,"ema9":5.287549,"ema20":5.284411,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.494361,"dist_to_hod_atr":4.052035,"atr":0.006491,"spread_atr":1.540698,"own_change_pct":0.282192,"rel_strength_pct":{"SPY":0.246018,"IWM":0.233268}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.695785},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aa39e73abd6d","ts":"2026-09-21T18:49:54.426948+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4157,"target":7.775,"target_label":"range_20d_high","reward_risk":19.98,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4805,"vwap":6.3856,"ext_from_open_pct":3.03,"max_ext_allowed_pct":3.0,"volume_pace":1.077,"trend":"flat","recent_slope_pct":0.0015,"volatility":"unknown"},"price":6.4805,"volume":{"bars":319,"last_bar_volume":12810.0,"baseline_avg":32291.25,"bar_rvol":0.396702,"raw_accel":-0.899543,"smooth_accel":0.249813,"accel_momentum":-2.609114,"rvol_3bar":[0.792651,4.410964,0.396702],"trend_3bar":"MIXED","projected_rvol":0.291446},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":704.0,"sell_vol":3178.0,"unclassified_vol":0.0,"imbalance":-0.6373,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":1.861263},"context":{"vwap":6.385581,"price_vs_vwap_pct":1.486465,"ema9":6.473071,"ema20":6.47323,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.453149,"dist_to_hod_atr":2.083255,"atr":0.014161,"spread_atr":0.706188,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.036173,"IWM":-0.048924}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.252818},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"02be50954ea7","ts":"2026-09-21T18:49:59.649676+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2681,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0401,"volatility":"medium"},"price":5.29,"volume":{"bars":318,"last_bar_volume":786.0,"baseline_avg":884.9,"bar_rvol":0.888236,"raw_accel":-0.74596,"smooth_accel":1.655759,"accel_momentum":-0.599721,"rvol_3bar":[0.232497,4.0617,0.888236],"trend_3bar":"MIXED","projected_rvol":0.779782},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":13.0,"sell_vol":114.0,"unclassified_vol":0.0,"imbalance":-0.795276,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":21.307358},"context":{"vwap":5.268081,"price_vs_vwap_pct":0.41608,"ema9":5.287549,"ema20":5.284411,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.622093,"atr":0.006491,"spread_atr":1.540698,"own_change_pct":0.282192,"rel_strength_pct":{"SPY":0.246018,"IWM":0.233268}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.706392},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b830a14c6c8b","ts":"2026-09-21T18:50:04.814540+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2423,"target":5.315,"target_label":"prev_day_high","reward_risk":0.26,"pos_in_5d_range_pct":98.0,"room_to_5d_high_atr":0.06},"price":5.3,"vwap":5.2681,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0487,"volatility":"medium"},"price":5.3,"volume":{"bars":319,"last_bar_volume":686.0,"baseline_avg":863.4,"bar_rvol":0.794533,"raw_accel":-0.127226,"smooth_accel":3.348571,"accel_momentum":1.692812,"rvol_3bar":[4.0617,0.888236,0.794533],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":100.0,"sell_vol":114.0,"unclassified_vol":0.0,"imbalance":-0.065421,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":2.808253},"context":{"vwap":5.268128,"price_vs_vwap_pct":0.605004,"ema9":5.288039,"ema20":5.284943,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.37594,"dist_to_hod_atr":3.132785,"atr":0.006384,"spread_atr":1.566392,"own_change_pct":0.094607,"rel_strength_pct":{"SPY":0.064896,"IWM":0.061414}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.051979},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"d6071edea2af","ts":"2026-09-21T18:50:04.814540+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4096,"target":7.775,"target_label":"range_20d_high","reward_risk":20.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4743,"vwap":6.3856,"ext_from_open_pct":2.93,"max_ext_allowed_pct":3.0,"volume_pace":1.077,"trend":"flat","recent_slope_pct":0.0133,"volatility":"unknown"},"price":6.4743,"volume":{"bars":320,"last_bar_volume":8725.0,"baseline_avg":32185.65,"bar_rvol":0.271084,"raw_accel":-0.318891,"smooth_accel":0.210083,"accel_momentum":-0.03973,"rvol_3bar":[4.410964,0.396702,0.271084],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":722.0,"sell_vol":2784.0,"unclassified_vol":0.0,"imbalance":-0.588135,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":1.942405},"context":{"vwap":6.385619,"price_vs_vwap_pct":1.388762,"ema9":6.474457,"ema20":6.473874,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.548387,"dist_to_hod_atr":2.561936,"atr":0.013935,"spread_atr":0.717629,"own_change_pct":0.07722,"rel_strength_pct":{"SPY":0.047509,"IWM":0.044027}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.159434},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"2254c7f8ed3b","ts":"2026-09-21T18:50:15.339248+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2682,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.011,"volatility":"medium"},"price":5.29,"volume":{"bars":319,"last_bar_volume":686.0,"baseline_avg":863.4,"bar_rvol":0.794533,"raw_accel":-0.127226,"smooth_accel":3.348571,"accel_momentum":1.692812,"rvol_3bar":[4.0617,0.888236,0.794533],"trend_3bar":"DECELERATING","projected_rvol":1.617348},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":198.0,"sell_vol":283.0,"unclassified_vol":0.0,"imbalance":-0.176715,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":2.382711},"context":{"vwap":5.268128,"price_vs_vwap_pct":0.415183,"ema9":5.288039,"ema20":5.284943,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.699177,"atr":0.006384,"spread_atr":1.566392,"own_change_pct":0.094607,"rel_strength_pct":{"SPY":0.064896,"IWM":0.061414}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.140406},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"f7ddb1e37b08","ts":"2026-09-21T18:50:30.893721+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.16,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0805,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":3.0,"volume_pace":0.423,"trend":"flat","recent_slope_pct":-0.0429,"volatility":"high"},"price":8.075,"volume":{"bars":320,"last_bar_volume":5870.0,"baseline_avg":2378.65,"bar_rvol":2.467786,"raw_accel":5.020513,"smooth_accel":1.673344,"accel_momentum":1.309349,"rvol_3bar":[1.193804,0.412367,2.467786],"trend_3bar":"MIXED","projected_rvol":1.587255},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":813.0,"sell_vol":1131.0,"unclassified_vol":0.0,"imbalance":-0.16358,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":0.139651},"context":{"vwap":8.080493,"price_vs_vwap_pct":-0.067982,"ema9":8.100829,"ema20":8.099618,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":17.86727,"atr":0.017003,"spread_atr":0.588126,"own_change_pct":0.070382,"rel_strength_pct":{"SPY":0.040671,"IWM":0.037189}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.403681},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aca825a0fe97","ts":"2026-09-21T18:50:36.087950+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.938,"target":8.16,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":119.9,"room_to_5d_high_atr":-0.63},"price":8.092,"vwap":8.0805,"ext_from_open_pct":-1.2,"max_ext_allowed_pct":4.0,"volume_pace":0.423,"trend":"flat","recent_slope_pct":-0.0009,"volatility":"high"},"price":8.092,"volume":{"bars":320,"last_bar_volume":5870.0,"baseline_avg":2378.65,"bar_rvol":2.467786,"raw_accel":5.020513,"smooth_accel":1.673344,"accel_momentum":1.309349,"rvol_3bar":[1.193804,0.412367,2.467786],"trend_3bar":"MIXED","projected_rvol":1.430791},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":913.0,"sell_vol":1068.0,"unclassified_vol":0.0,"imbalance":-0.078243,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":5.33388},"context":{"vwap":8.080493,"price_vs_vwap_pct":0.142401,"ema9":8.100829,"ema20":8.099618,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.422925,"dist_to_hod_atr":16.867456,"atr":0.017003,"spread_atr":0.588126,"own_change_pct":0.070382,"rel_strength_pct":{"SPY":0.040671,"IWM":0.037189}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.193088},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"09fb398b5636","ts":"2026-09-21T18:50:36.087950+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2682,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0299,"volatility":"medium"},"price":5.295,"volume":{"bars":319,"last_bar_volume":686.0,"baseline_avg":863.4,"bar_rvol":0.794533,"raw_accel":-0.127226,"smooth_accel":3.348571,"accel_momentum":1.692812,"rvol_3bar":[4.0617,0.888236,0.794533],"trend_3bar":"DECELERATING","projected_rvol":0.826103},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":102.0,"sell_vol":239.0,"unclassified_vol":0.0,"imbalance":-0.40176,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":6.563184},"context":{"vwap":5.268128,"price_vs_vwap_pct":0.510094,"ema9":5.288039,"ema20":5.284943,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.915981,"atr":0.006384,"spread_atr":1.566392,"own_change_pct":0.094607,"rel_strength_pct":{"SPY":0.064896,"IWM":0.061414}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.319211},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"f3d6e4cb78de","ts":"2026-09-21T18:50:41.313483+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.9188,"target":8.16,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":118.9,"room_to_5d_high_atr":-0.6},"price":8.0728,"vwap":8.0805,"ext_from_open_pct":-1.43,"max_ext_allowed_pct":4.0,"volume_pace":0.422,"trend":"flat","recent_slope_pct":-0.0483,"volatility":"high"},"price":8.0728,"volume":{"bars":320,"last_bar_volume":5870.0,"baseline_avg":2378.65,"bar_rvol":2.467786,"raw_accel":5.020513,"smooth_accel":1.673344,"accel_momentum":1.309349,"rvol_3bar":[1.193804,0.412367,2.467786],"trend_3bar":"MIXED","projected_rvol":1.274851},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":914.0,"sell_vol":1108.0,"unclassified_vol":0.0,"imbalance":-0.095945,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":2.263289},"context":{"vwap":8.080493,"price_vs_vwap_pct":-0.095208,"ema9":8.100829,"ema20":8.099618,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.652074,"dist_to_hod_atr":17.996658,"atr":0.017003,"spread_atr":0.588126,"own_change_pct":0.070382,"rel_strength_pct":{"SPY":0.040671,"IWM":0.037189}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.236771},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fbe5c6c7754b","ts":"2026-09-21T18:50:41.313483+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4147,"target":7.775,"target_label":"range_20d_high","reward_risk":19.99,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4795,"vwap":6.3857,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":1.075,"trend":"flat","recent_slope_pct":0.0293,"volatility":"unknown"},"price":6.4795,"volume":{"bars":320,"last_bar_volume":8725.0,"baseline_avg":32185.65,"bar_rvol":0.271084,"raw_accel":-0.318891,"smooth_accel":0.210083,"accel_momentum":-0.03973,"rvol_3bar":[4.410964,0.396702,0.271084],"trend_3bar":"DECELERATING","projected_rvol":0.46269},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":6760.0,"sell_vol":2021.0,"unclassified_vol":0.0,"imbalance":0.539688,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":4.038181},"context":{"vwap":6.385619,"price_vs_vwap_pct":1.470195,"ema9":6.474457,"ema20":6.473874,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.46851,"dist_to_hod_atr":2.188768,"atr":0.013935,"spread_atr":0.717629,"own_change_pct":0.07722,"rel_strength_pct":{"SPY":0.047509,"IWM":0.044027}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.146301},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"02c178534437","ts":"2026-09-21T18:50:51.904290+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2682,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.011,"volatility":"medium"},"price":5.29,"volume":{"bars":319,"last_bar_volume":686.0,"baseline_avg":863.4,"bar_rvol":0.794533,"raw_accel":-0.127226,"smooth_accel":3.348571,"accel_momentum":1.692812,"rvol_3bar":[4.0617,0.888236,0.794533],"trend_3bar":"DECELERATING","projected_rvol":0.98808},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":152.0,"sell_vol":229.0,"unclassified_vol":0.0,"imbalance":-0.2021,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":9.278046},"context":{"vwap":5.268128,"price_vs_vwap_pct":0.415183,"ema9":5.288039,"ema20":5.284943,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.699177,"atr":0.006384,"spread_atr":1.566392,"own_change_pct":0.094607,"rel_strength_pct":{"SPY":0.064896,"IWM":0.061414}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.160575},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"3438065e3b8c","ts":"2026-09-21T18:50:57.160063+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4094,"target":7.775,"target_label":"range_20d_high","reward_risk":20.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4741,"vwap":6.3857,"ext_from_open_pct":2.93,"max_ext_allowed_pct":3.0,"volume_pace":1.075,"trend":"flat","recent_slope_pct":0.0127,"volatility":"unknown"},"price":6.4741,"volume":{"bars":320,"last_bar_volume":8725.0,"baseline_avg":32185.65,"bar_rvol":0.271084,"raw_accel":-0.318891,"smooth_accel":0.210083,"accel_momentum":-0.03973,"rvol_3bar":[4.410964,0.396702,0.271084],"trend_3bar":"DECELERATING","projected_rvol":0.350529},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1963.0,"sell_vol":819.0,"unclassified_vol":0.0,"imbalance":0.411215,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":1.967614},"context":{"vwap":6.385619,"price_vs_vwap_pct":1.38563,"ema9":6.474457,"ema20":6.473874,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.551459,"dist_to_hod_atr":2.576288,"atr":0.013935,"spread_atr":0.717629,"own_change_pct":0.07722,"rel_strength_pct":{"SPY":0.047509,"IWM":0.044027}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.111474},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"8181b923fbf6","ts":"2026-09-21T18:51:02.407474+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.91 below VWAP $12.92","plan":{"state":"PASS","setup":"","stop":12.5182,"target":13.43,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":150.3,"room_to_5d_high_atr":-1.5},"price":12.91,"vwap":12.9194,"ext_from_open_pct":-0.77,"max_ext_allowed_pct":3.0,"volume_pace":0.475,"trend":"flat","recent_slope_pct":-0.1273,"volatility":"high"},"price":12.91,"volume":{"bars":321,"last_bar_volume":1357.0,"baseline_avg":4333.4,"bar_rvol":0.313149,"raw_accel":-0.28466,"smooth_accel":-0.66024,"accel_momentum":-0.419578,"rvol_3bar":[0.884498,0.441301,0.313149],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":453.0,"sell_vol":2153.0,"unclassified_vol":0.0,"imbalance":-0.652341,"bid":12.88,"ask":12.95,"spread_pct":0.542005,"quote_size_imbalance":null,"quote_age_s":0.193381},"context":{"vwap":12.919391,"price_vs_vwap_pct":-0.07269,"ema9":12.9451,"ema20":12.919377,"ema_stack":false,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.449275,"dist_to_hod_atr":16.743553,"atr":0.053155,"spread_atr":1.316909,"own_change_pct":0.116009,"rel_strength_pct":{"SPY":0.08501,"IWM":0.102036}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.20428},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"f68873c83934","ts":"2026-09-21T18:51:02.407474+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":6.5175,"target":6.76,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":114.8,"room_to_5d_high_atr":-0.4},"price":6.6808,"vwap":6.5914,"ext_from_open_pct":4.55,"max_ext_allowed_pct":4.0,"volume_pace":0.453,"trend":"flat","recent_slope_pct":0.0419,"volatility":"high"},"price":6.6808,"volume":{"bars":317,"last_bar_volume":1891.0,"baseline_avg":2167.05,"bar_rvol":0.872615,"raw_accel":2.490459,"smooth_accel":0.148613,"accel_momentum":0.461643,"rvol_3bar":[2.266172,0.06048,0.872615],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":15.0,"sell_vol":101.0,"unclassified_vol":0.0,"imbalance":-0.741379,"bid":6.67,"ask":6.69,"spread_pct":0.299401,"quote_size_imbalance":null,"quote_age_s":8.785243},"context":{"vwap":6.59142,"price_vs_vwap_pct":1.356002,"ema9":6.672857,"ema20":6.660871,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-3.73487,"dist_to_hod_atr":17.689957,"atr":0.014652,"spread_atr":1.364966,"own_change_pct":0.303021,"rel_strength_pct":{"SPY":0.272021,"IWM":0.289048}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.646939},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"93fc8eaee044","ts":"2026-09-21T18:51:12.869775+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.2653,"target":11.57,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.4853,"vwap":11.3259,"ext_from_open_pct":-0.99,"max_ext_allowed_pct":4.0,"volume_pace":0.411,"trend":"flat","recent_slope_pct":0.0092,"volatility":"unknown"},"price":11.4853,"volume":{"bars":293,"last_bar_volume":2.0,"baseline_avg":203.85,"bar_rvol":0.009811,"raw_accel":-0.993994,"smooth_accel":-0.648863,"accel_momentum":-21.965529,"rvol_3bar":[0.10433,1.772691,0.009811],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":25.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.724138,"bid":11.38,"ask":11.49,"spread_pct":0.961959,"quote_size_imbalance":null,"quote_age_s":149.789905},"context":{"vwap":11.325883,"price_vs_vwap_pct":1.407545,"ema9":11.422535,"ema20":11.433926,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-3.888703,"dist_to_hod_atr":13.227533,"atr":0.035131,"spread_atr":3.131114,"own_change_pct":-0.262697,"rel_strength_pct":{"SPY":-0.293697,"IWM":-0.27667}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.007105},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7c9dff104a3f","ts":"2026-09-21T18:51:12.869775+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2682,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":-0.0094,"volatility":"medium"},"price":5.295,"volume":{"bars":320,"last_bar_volume":738.0,"baseline_avg":890.95,"bar_rvol":0.828329,"raw_accel":0.075802,"smooth_accel":-0.427609,"accel_momentum":-3.776181,"rvol_3bar":[0.888236,0.794533,0.828329],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":130.0,"sell_vol":164.0,"unclassified_vol":0.0,"imbalance":-0.115646,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":30.243531},"context":{"vwap":5.268182,"price_vs_vwap_pct":0.509064,"ema9":5.288431,"ema20":5.285425,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.763714,"atr":0.006642,"spread_atr":1.505485,"own_change_pct":0.102184,"rel_strength_pct":{"SPY":0.071184,"IWM":0.088211}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.095793},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c6caa61d2e39","ts":"2026-09-21T18:51:18.099018+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2682,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":-0.0283,"volatility":"medium"},"price":5.29,"volume":{"bars":320,"last_bar_volume":738.0,"baseline_avg":890.95,"bar_rvol":0.828329,"raw_accel":0.075802,"smooth_accel":-0.427609,"accel_momentum":-3.776181,"rvol_3bar":[0.888236,0.794533,0.828329],"trend_3bar":"MIXED","projected_rvol":0.74045},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":130.0,"sell_vol":128.0,"unclassified_vol":0.0,"imbalance":0.007752,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":0.11188},"context":{"vwap":5.268182,"price_vs_vwap_pct":0.414155,"ema9":5.288431,"ema20":5.285425,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.516456,"atr":0.006642,"spread_atr":1.505485,"own_change_pct":0.102184,"rel_strength_pct":{"SPY":0.071184,"IWM":0.088211}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.006421},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9fce3d246f1c","ts":"2026-09-21T18:51:23.312288+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.676,"target":10.02,"target_label":"premarket_high","reward_risk":1.08,"pos_in_5d_range_pct":130.7,"room_to_5d_high_atr":-0.72},"price":9.8417,"vwap":9.8258,"ext_from_open_pct":-1.48,"max_ext_allowed_pct":3.0,"volume_pace":0.759,"trend":"flat","recent_slope_pct":-0.0435,"volatility":"high"},"price":9.8417,"volume":{"bars":321,"last_bar_volume":7968.0,"baseline_avg":8466.55,"bar_rvol":0.941115,"raw_accel":-0.430938,"smooth_accel":-0.390623,"accel_momentum":-0.644333,"rvol_3bar":[0.268236,1.776892,0.941115],"trend_3bar":"MIXED","projected_rvol":1.988401},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":2027.0,"sell_vol":4647.0,"unclassified_vol":0.0,"imbalance":-0.392568,"bid":9.83,"ask":9.84,"spread_pct":0.101678,"quote_size_imbalance":null,"quote_age_s":0.083423},"context":{"vwap":9.825808,"price_vs_vwap_pct":0.161734,"ema9":9.846949,"ema20":9.844376,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.75,"dist_to_hod_atr":13.949278,"atr":0.019951,"spread_atr":0.501232,"own_change_pct":0.044713,"rel_strength_pct":{"SPY":0.013713,"IWM":0.03074}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.369452},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0ddb292e55ff","ts":"2026-09-21T18:51:23.312288+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2682,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":-0.0094,"volatility":"medium"},"price":5.295,"volume":{"bars":320,"last_bar_volume":738.0,"baseline_avg":890.95,"bar_rvol":0.828329,"raw_accel":0.075802,"smooth_accel":-0.427609,"accel_momentum":-3.776181,"rvol_3bar":[0.888236,0.794533,0.828329],"trend_3bar":"MIXED","projected_rvol":0.863742},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":230.0,"sell_vol":69.0,"unclassified_vol":0.0,"imbalance":0.538462,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":3.994324},"context":{"vwap":5.268182,"price_vs_vwap_pct":0.509064,"ema9":5.288431,"ema20":5.285425,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.763714,"atr":0.006642,"spread_atr":1.505485,"own_change_pct":0.102184,"rel_strength_pct":{"SPY":0.071184,"IWM":0.088211}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.446023},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"acd7ca242f72","ts":"2026-09-21T18:51:28.570365+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2682,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":-0.0283,"volatility":"medium"},"price":5.29,"volume":{"bars":320,"last_bar_volume":738.0,"baseline_avg":890.95,"bar_rvol":0.828329,"raw_accel":0.075802,"smooth_accel":-0.427609,"accel_momentum":-3.776181,"rvol_3bar":[0.888236,0.794533,0.828329],"trend_3bar":"MIXED","projected_rvol":0.898064},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":230.0,"sell_vol":151.0,"unclassified_vol":0.0,"imbalance":0.207349,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":9.252401},"context":{"vwap":5.268182,"price_vs_vwap_pct":0.414155,"ema9":5.288431,"ema20":5.285425,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.516456,"atr":0.006642,"spread_atr":1.505485,"own_change_pct":0.102184,"rel_strength_pct":{"SPY":0.071184,"IWM":0.088211}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.171753},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ebbf0f1b900b","ts":"2026-09-21T18:52:00.026989+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4145,"target":7.775,"target_label":"range_20d_high","reward_risk":20.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4793,"vwap":6.3857,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":1.072,"trend":"flat","recent_slope_pct":0.0287,"volatility":"unknown"},"price":6.4793,"volume":{"bars":321,"last_bar_volume":10988.0,"baseline_avg":30888.0,"bar_rvol":0.355737,"raw_accel":0.25937,"smooth_accel":-0.859278,"accel_momentum":-1.069361,"rvol_3bar":[0.396702,0.271084,0.355737],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":2877.0,"sell_vol":3351.0,"unclassified_vol":0.0,"imbalance":-0.076108,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.018235},"context":{"vwap":6.385666,"price_vs_vwap_pct":1.46631,"ema9":6.474566,"ema20":6.473982,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.471582,"dist_to_hod_atr":2.242605,"atr":0.013689,"spread_atr":0.73049,"own_change_pct":-0.07716,"rel_strength_pct":{"SPY":-0.13271,"IWM":-0.113844}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.027074},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7ea410bd6053","ts":"2026-09-21T18:52:10.476866+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.406,"target":7.775,"target_label":"range_20d_high","reward_risk":20.16,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4707,"vwap":6.3857,"ext_from_open_pct":2.87,"max_ext_allowed_pct":3.0,"volume_pace":1.071,"trend":"flat","recent_slope_pct":-0.0144,"volatility":"unknown"},"price":6.4707,"volume":{"bars":322,"last_bar_volume":9491.0,"baseline_avg":30685.3,"bar_rvol":0.309301,"raw_accel":-0.13624,"smooth_accel":-0.823454,"accel_momentum":0.035823,"rvol_3bar":[0.271084,0.355737,0.309301],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":3209.0,"sell_vol":7380.0,"unclassified_vol":0.0,"imbalance":-0.393899,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.337592},"context":{"vwap":6.385708,"price_vs_vwap_pct":1.330976,"ema9":6.475512,"ema20":6.474488,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.603687,"dist_to_hod_atr":2.927177,"atr":0.013426,"spread_atr":0.744829,"own_change_pct":0.066409,"rel_strength_pct":{"SPY":0.010859,"IWM":0.029725}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.121834},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dc74d89ffaaf","ts":"2026-09-21T18:52:15.645186+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.986,"target":9.1198,"target_label":"clear air (typical 60-min move)","reward_risk":0.55,"pos_in_5d_range_pct":131.1,"room_to_5d_high_atr":-0.99},"price":9.0725,"vwap":9.0143,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.733,"trend":"flat","recent_slope_pct":-0.0411,"volatility":"medium"},"price":9.0725,"volume":{"bars":322,"last_bar_volume":23781.0,"baseline_avg":11665.4,"bar_rvol":2.038593,"raw_accel":7.154371,"smooth_accel":-0.216102,"accel_momentum":0.358156,"rvol_3bar":[0.196428,0.053753,2.038593],"trend_3bar":"MIXED","projected_rvol":1.524432},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":2675.0,"sell_vol":19571.0,"unclassified_vol":0.0,"imbalance":-0.759507,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":1.116606},"context":{"vwap":9.014263,"price_vs_vwap_pct":0.646051,"ema9":9.079423,"ema20":9.071963,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.628703,"dist_to_hod_atr":2.667094,"atr":0.021522,"spread_atr":0.464651,"own_change_pct":0.001102,"rel_strength_pct":{"SPY":-0.054448,"IWM":-0.035582}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.548326},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"697be2b89a36","ts":"2026-09-21T18:52:15.645186+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.7701,"target":9.21,"target_label":"prev_day_high","reward_risk":3.97,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8587,"vwap":8.7936,"ext_from_open_pct":3.98,"max_ext_allowed_pct":4.0,"volume_pace":0.442,"trend":"flat","recent_slope_pct":0.0605,"volatility":"unknown"},"price":8.8587,"volume":{"bars":322,"last_bar_volume":54780.0,"baseline_avg":49185.25,"bar_rvol":1.113749,"raw_accel":-0.284791,"smooth_accel":0.093543,"accel_momentum":-0.502606,"rvol_3bar":[0.908956,1.641397,1.113749],"trend_3bar":"MIXED","projected_rvol":0.427128},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":5359.0,"sell_vol":2073.0,"unclassified_vol":0.0,"imbalance":0.442142,"bid":8.87,"ask":8.88,"spread_pct":0.112676,"quote_size_imbalance":null,"quote_age_s":0.016763},"context":{"vwap":8.793557,"price_vs_vwap_pct":0.740806,"ema9":8.856452,"ema20":8.84801,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.909396,"dist_to_hod_atr":2.863192,"atr":0.028395,"spread_atr":0.352176,"own_change_pct":0.263277,"rel_strength_pct":{"SPY":0.207727,"IWM":0.226593}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.492435},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d92aed3e3645","ts":"2026-09-21T18:52:20.833594+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7847,"target":9.21,"target_label":"prev_day_high","reward_risk":3.79,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8734,"vwap":8.7936,"ext_from_open_pct":4.15,"max_ext_allowed_pct":3.0,"volume_pace":0.441,"trend":"flat","recent_slope_pct":0.0936,"volatility":"unknown"},"price":8.8734,"volume":{"bars":322,"last_bar_volume":54780.0,"baseline_avg":49185.25,"bar_rvol":1.113749,"raw_accel":-0.284791,"smooth_accel":0.093543,"accel_momentum":-0.502606,"rvol_3bar":[0.908956,1.641397,1.113749],"trend_3bar":"MIXED","projected_rvol":0.373688},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":5335.0,"sell_vol":2640.0,"unclassified_vol":0.0,"imbalance":0.337931,"bid":8.87,"ask":8.88,"spread_pct":0.112676,"quote_size_imbalance":null,"quote_age_s":0.60766},"context":{"vwap":8.793557,"price_vs_vwap_pct":0.907974,"ema9":8.856452,"ema20":8.84801,"ema_stack":true,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.744966,"dist_to_hod_atr":2.345493,"atr":0.028395,"spread_atr":0.352176,"own_change_pct":0.263277,"rel_strength_pct":{"SPY":0.207727,"IWM":0.226593}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.37637},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e1c903ed64a1","ts":"2026-09-21T18:52:26.039193+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0549,"target":12.34,"target_label":"premarket_high","reward_risk":0.63,"pos_in_5d_range_pct":67.0,"room_to_5d_high_atr":0.53},"price":12.2302,"vwap":12.1843,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":0.564,"trend":"flat","recent_slope_pct":-0.0088,"volatility":"medium"},"price":12.2302,"volume":{"bars":322,"last_bar_volume":11495.0,"baseline_avg":8679.85,"bar_rvol":1.324332,"raw_accel":1.598327,"smooth_accel":0.681679,"accel_momentum":0.647319,"rvol_3bar":[1.006521,0.515026,1.324332],"trend_3bar":"MIXED","projected_rvol":0.085746},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":94.0,"sell_vol":232.0,"unclassified_vol":0.0,"imbalance":-0.423313,"bid":12.22,"ask":12.23,"spread_pct":0.0818,"quote_size_imbalance":null,"quote_age_s":20.48067},"context":{"vwap":12.184251,"price_vs_vwap_pct":0.377119,"ema9":12.229623,"ema20":12.225419,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.080064,"dist_to_hod_atr":13.978665,"atr":0.018585,"spread_atr":0.538055,"own_change_pct":-0.081699,"rel_strength_pct":{"SPY":-0.137249,"IWM":-0.118383}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.560607},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"64aab7cf9bc2","ts":"2026-09-21T18:52:26.039193+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $6.29 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4143,"target":7.775,"target_label":"range_20d_high","reward_risk":20.0,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4791,"vwap":6.3857,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":1.071,"trend":"flat","recent_slope_pct":0.0116,"volatility":"unknown"},"price":6.4791,"volume":{"bars":322,"last_bar_volume":9491.0,"baseline_avg":30685.3,"bar_rvol":0.309301,"raw_accel":-0.13624,"smooth_accel":-0.823454,"accel_momentum":0.035823,"rvol_3bar":[0.271084,0.355737,0.309301],"trend_3bar":"MIXED","projected_rvol":0.611624},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":2600.0,"sell_vol":5833.0,"unclassified_vol":0.0,"imbalance":-0.383375,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.000748},"context":{"vwap":6.385708,"price_vs_vwap_pct":1.462519,"ema9":6.475512,"ema20":6.474488,"ema_stack":true,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.474654,"dist_to_hod_atr":2.301521,"atr":0.013426,"spread_atr":0.744829,"own_change_pct":0.066409,"rel_strength_pct":{"SPY":0.010859,"IWM":0.029725}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.118578},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d0634e294f31","ts":"2026-09-21T18:52:31.235438+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.4102,"target":7.775,"target_label":"range_20d_high","reward_risk":20.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.475,"vwap":6.3857,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":1.07,"trend":"flat","recent_slope_pct":-0.0011,"volatility":"unknown"},"price":6.475,"volume":{"bars":322,"last_bar_volume":9491.0,"baseline_avg":30685.3,"bar_rvol":0.309301,"raw_accel":-0.13624,"smooth_accel":-0.823454,"accel_momentum":0.035823,"rvol_3bar":[0.271084,0.355737,0.309301],"trend_3bar":"MIXED","projected_rvol":0.521144},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":2379.0,"sell_vol":5742.0,"unclassified_vol":0.0,"imbalance":-0.414112,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":1.226665},"context":{"vwap":6.385708,"price_vs_vwap_pct":1.398313,"ema9":6.475512,"ema20":6.474488,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-0.537634,"dist_to_hod_atr":2.606901,"atr":0.013426,"spread_atr":0.744829,"own_change_pct":0.066409,"rel_strength_pct":{"SPY":0.010859,"IWM":0.029725}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.128085},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0e1786f21612","ts":"2026-09-21T18:52:36.523381+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2683,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":5.295,"volume":{"bars":321,"last_bar_volume":1011.0,"baseline_avg":895.85,"bar_rvol":1.128537,"raw_accel":0.369919,"smooth_accel":-0.399951,"accel_momentum":0.027659,"rvol_3bar":[0.794533,0.828329,1.128537],"trend_3bar":"ACCELERATING","projected_rvol":0.551965},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":109.0,"sell_vol":192.0,"unclassified_vol":0.0,"imbalance":-0.275748,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":41.217511},"context":{"vwap":5.26825,"price_vs_vwap_pct":0.507754,"ema9":5.288745,"ema20":5.28586,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.831381,"atr":0.006525,"spread_atr":1.532552,"own_change_pct":0.102184,"rel_strength_pct":{"SPY":0.046634,"IWM":0.0655}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.311191},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f96e98372f15","ts":"2026-09-21T18:52:41.748525+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2683,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":-0.0189,"volatility":"medium"},"price":5.29,"volume":{"bars":321,"last_bar_volume":1011.0,"baseline_avg":895.85,"bar_rvol":1.128537,"raw_accel":0.369919,"smooth_accel":-0.399951,"accel_momentum":0.027659,"rvol_3bar":[0.794533,0.828329,1.128537],"trend_3bar":"ACCELERATING","projected_rvol":0.612827},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":109.0,"sell_vol":273.0,"unclassified_vol":0.0,"imbalance":-0.429319,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":46.442655},"context":{"vwap":5.26825,"price_vs_vwap_pct":0.412846,"ema9":5.288745,"ema20":5.28586,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.597657,"atr":0.006525,"spread_atr":1.532552,"own_change_pct":0.102184,"rel_strength_pct":{"SPY":0.046634,"IWM":0.0655}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.484503},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2002c5ab800d","ts":"2026-09-21T18:53:02.713300+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6794,"target":10.02,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":130.9,"room_to_5d_high_atr":-0.72},"price":9.8451,"vwap":9.8259,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":3.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":-0.0152,"volatility":"high"},"price":9.8451,"volume":{"bars":323,"last_bar_volume":5373.0,"baseline_avg":8622.65,"bar_rvol":0.623126,"raw_accel":-0.767865,"smooth_accel":0.009127,"accel_momentum":-0.362305,"rvol_3bar":[0.941115,2.951129,0.623126],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":3289.0,"sell_vol":1766.0,"unclassified_vol":0.0,"imbalance":0.301286,"bid":9.84,"ask":9.85,"spread_pct":0.101574,"quote_size_imbalance":null,"quote_age_s":1.410083},"context":{"vwap":9.82586,"price_vs_vwap_pct":0.195808,"ema9":9.847503,"ema20":9.845133,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.716403,"dist_to_hod_atr":13.590394,"atr":0.020228,"spread_atr":0.494376,"own_change_pct":-0.125761,"rel_strength_pct":{"SPY":-0.145136,"IWM":-0.129254}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.187739},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"28ce3b98a7b5","ts":"2026-09-21T18:53:02.713300+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.0568,"target":12.34,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":67.2,"room_to_5d_high_atr":0.52},"price":12.2321,"vwap":12.1843,"ext_from_open_pct":-0.55,"max_ext_allowed_pct":4.0,"volume_pace":0.563,"trend":"flat","recent_slope_pct":-0.0129,"volatility":"medium"},"price":12.2321,"volume":{"bars":323,"last_bar_volume":2302.0,"baseline_avg":9150.7,"bar_rvol":0.251565,"raw_accel":-0.799739,"smooth_accel":0.001264,"accel_momentum":-0.680415,"rvol_3bar":[0.515026,1.324332,0.251565],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1573.0,"sell_vol":306.0,"unclassified_vol":0.0,"imbalance":0.674295,"bid":12.23,"ask":12.24,"spread_pct":0.081733,"quote_size_imbalance":null,"quote_age_s":0.090872},"context":{"vwap":12.184271,"price_vs_vwap_pct":0.392545,"ema9":12.230698,"ema20":12.226332,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.064852,"dist_to_hod_atr":14.097791,"atr":0.018294,"spread_atr":0.546638,"own_change_pct":0.044155,"rel_strength_pct":{"SPY":0.02478,"IWM":0.040662}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.169629},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"db3eadee6bb4","ts":"2026-09-21T18:53:07.923548+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9383,"target":8.16,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":119.9,"room_to_5d_high_atr":-0.63},"price":8.0923,"vwap":8.0805,"ext_from_open_pct":-1.19,"max_ext_allowed_pct":3.0,"volume_pace":0.42,"trend":"flat","recent_slope_pct":-0.0356,"volatility":"high"},"price":8.0923,"volume":{"bars":323,"last_bar_volume":530.0,"baseline_avg":2638.35,"bar_rvol":0.200883,"raw_accel":-0.786892,"smooth_accel":-0.460866,"accel_momentum":-1.637117,"rvol_3bar":[0.842881,0.946149,0.200883],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":214.0,"sell_vol":109.0,"unclassified_vol":0.0,"imbalance":0.325077,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":2.78742},"context":{"vwap":8.080497,"price_vs_vwap_pct":0.146069,"ema9":8.087577,"ema20":8.092941,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.419344,"dist_to_hod_atr":14.892439,"atr":0.019238,"spread_atr":0.519806,"own_change_pct":-0.38142,"rel_strength_pct":{"SPY":-0.400796,"IWM":-0.384913}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.065303},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"12973e340ca8","ts":"2026-09-21T18:53:13.109024+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.16,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0805,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":3.0,"volume_pace":0.42,"trend":"flat","recent_slope_pct":-0.0785,"volatility":"high"},"price":8.075,"volume":{"bars":323,"last_bar_volume":530.0,"baseline_avg":2638.35,"bar_rvol":0.200883,"raw_accel":-0.786892,"smooth_accel":-0.460866,"accel_momentum":-1.637117,"rvol_3bar":[0.842881,0.946149,0.200883],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":214.0,"sell_vol":519.0,"unclassified_vol":0.0,"imbalance":-0.416098,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":0.28647},"context":{"vwap":8.080497,"price_vs_vwap_pct":-0.068027,"ema9":8.087577,"ema20":8.092941,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":15.791703,"atr":0.019238,"spread_atr":0.519806,"own_change_pct":-0.38142,"rel_strength_pct":{"SPY":-0.400796,"IWM":-0.384913}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.083587},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"eb12e5499b62","ts":"2026-09-21T18:53:18.221144+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2683,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.02,"volatility":"medium"},"price":5.295,"volume":{"bars":322,"last_bar_volume":395.0,"baseline_avg":907.2,"bar_rvol":0.435406,"raw_accel":-0.609298,"smooth_accel":-0.530442,"accel_momentum":-0.130492,"rvol_3bar":[0.828329,1.128537,0.435406],"trend_3bar":"MIXED","projected_rvol":1.923749},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":209.0,"sell_vol":323.0,"unclassified_vol":0.0,"imbalance":-0.214286,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":5.590798},"context":{"vwap":5.268277,"price_vs_vwap_pct":0.50724,"ema9":5.289116,"ema20":5.286312,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.89643,"atr":0.006416,"spread_atr":1.558572,"own_change_pct":-0.083097,"rel_strength_pct":{"SPY":-0.102473,"IWM":-0.08659}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.093301},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d52f04986f72","ts":"2026-09-21T18:53:23.383853+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2683,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0011,"volatility":"medium"},"price":5.29,"volume":{"bars":322,"last_bar_volume":395.0,"baseline_avg":907.2,"bar_rvol":0.435406,"raw_accel":-0.609298,"smooth_accel":-0.530442,"accel_momentum":-0.130492,"rvol_3bar":[0.828329,1.128537,0.435406],"trend_3bar":"MIXED","projected_rvol":1.708319},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":209.0,"sell_vol":397.0,"unclassified_vol":0.0,"imbalance":-0.310231,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":10.753507},"context":{"vwap":5.268277,"price_vs_vwap_pct":0.412332,"ema9":5.289116,"ema20":5.286312,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.675716,"atr":0.006416,"spread_atr":1.558572,"own_change_pct":-0.083097,"rel_strength_pct":{"SPY":-0.102473,"IWM":-0.08659}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.135076},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5c5b2a5fa9bc","ts":"2026-09-21T18:53:55.009577+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2683,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.02,"volatility":"medium"},"price":5.295,"volume":{"bars":322,"last_bar_volume":395.0,"baseline_avg":907.2,"bar_rvol":0.435406,"raw_accel":-0.609298,"smooth_accel":-0.530442,"accel_momentum":-0.130492,"rvol_3bar":[0.828329,1.128537,0.435406],"trend_3bar":"MIXED","projected_rvol":0.959429},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":113.0,"sell_vol":81.0,"unclassified_vol":0.0,"imbalance":0.164948,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":28.076111},"context":{"vwap":5.268277,"price_vs_vwap_pct":0.50724,"ema9":5.289116,"ema20":5.286312,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.89643,"atr":0.006416,"spread_atr":1.558572,"own_change_pct":-0.083097,"rel_strength_pct":{"SPY":-0.102473,"IWM":-0.08659}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.071819},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"33ee95c38773","ts":"2026-09-21T18:54:00.212841+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9384,"target":8.16,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":119.9,"room_to_5d_high_atr":-0.63},"price":8.0924,"vwap":8.0805,"ext_from_open_pct":-1.19,"max_ext_allowed_pct":4.0,"volume_pace":0.419,"trend":"flat","recent_slope_pct":-0.0354,"volatility":"high"},"price":8.0924,"volume":{"bars":323,"last_bar_volume":530.0,"baseline_avg":2638.35,"bar_rvol":0.200883,"raw_accel":-0.786892,"smooth_accel":-0.460866,"accel_momentum":-1.637117,"rvol_3bar":[0.842881,0.946149,0.200883],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":403.0,"sell_vol":598.0,"unclassified_vol":0.0,"imbalance":-0.194805,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":11.587597},"context":{"vwap":8.080497,"price_vs_vwap_pct":0.147307,"ema9":8.087577,"ema20":8.092941,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.418151,"dist_to_hod_atr":14.887241,"atr":0.019238,"spread_atr":0.519806,"own_change_pct":-0.38142,"rel_strength_pct":{"SPY":-0.415643,"IWM":-0.393645}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.039133},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2338208bc45a","ts":"2026-09-21T18:54:00.212841+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2342,"target":5.315,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":96.9,"room_to_5d_high_atr":0.1},"price":5.2919,"vwap":5.2683,"ext_from_open_pct":-0.53,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0083,"volatility":"medium"},"price":5.2919,"volume":{"bars":322,"last_bar_volume":395.0,"baseline_avg":907.2,"bar_rvol":0.435406,"raw_accel":-0.609298,"smooth_accel":-0.530442,"accel_momentum":-0.130492,"rvol_3bar":[0.828329,1.128537,0.435406],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":113.0,"sell_vol":82.0,"unclassified_vol":0.0,"imbalance":0.158974,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":33.279375},"context":{"vwap":5.268277,"price_vs_vwap_pct":0.448397,"ema9":5.289116,"ema20":5.286312,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.528195,"dist_to_hod_atr":4.379587,"atr":0.006416,"spread_atr":1.558572,"own_change_pct":-0.083097,"rel_strength_pct":{"SPY":-0.11732,"IWM":-0.095322}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.069218},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0efa9d5e48e8","ts":"2026-09-21T18:54:05.509293+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.9861,"target":9.1192,"target_label":"clear air (typical 60-min move)","reward_risk":0.54,"pos_in_5d_range_pct":131.1,"room_to_5d_high_atr":-0.99},"price":9.0726,"vwap":9.0144,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.73,"trend":"flat","recent_slope_pct":-0.0456,"volatility":"medium"},"price":9.0726,"volume":{"bars":324,"last_bar_volume":3766.0,"baseline_avg":10507.9,"bar_rvol":0.358397,"raw_accel":-0.395409,"smooth_accel":1.455186,"accel_momentum":1.526165,"rvol_3bar":[2.038593,0.506384,0.358397],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":182.0,"sell_vol":400.0,"unclassified_vol":0.0,"imbalance":-0.37457,"bid":9.06,"ask":9.07,"spread_pct":0.110314,"quote_size_imbalance":null,"quote_age_s":1.259205},"context":{"vwap":9.014354,"price_vs_vwap_pct":0.646151,"ema9":9.07343,"ema20":9.070269,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.627608,"dist_to_hod_atr":2.665849,"atr":0.021494,"spread_atr":0.465244,"own_change_pct":-0.220143,"rel_strength_pct":{"SPY":-0.254366,"IWM":-0.232368}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.134245},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"fa9235ebaeb8","ts":"2026-09-21T18:54:05.509293+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2684,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0225,"volatility":"medium"},"price":5.295,"volume":{"bars":323,"last_bar_volume":799.0,"baseline_avg":893.8,"bar_rvol":0.893936,"raw_accel":1.022785,"smooth_accel":-0.002262,"accel_momentum":0.52818,"rvol_3bar":[1.128537,0.435406,0.893936],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":314.0,"sell_vol":153.0,"unclassified_vol":0.0,"imbalance":0.344754,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":1.497356},"context":{"vwap":5.268332,"price_vs_vwap_pct":0.506185,"ema9":5.289673,"ema20":5.286844,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.958842,"atr":0.006315,"spread_atr":1.583537,"own_change_pct":-0.058546,"rel_strength_pct":{"SPY":-0.092769,"IWM":-0.070771}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.308188},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e25e90e3faf5","ts":"2026-09-21T18:54:15.929140+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2343,"target":5.315,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":96.9,"room_to_5d_high_atr":0.1},"price":5.292,"vwap":5.2684,"ext_from_open_pct":-0.53,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0112,"volatility":"medium"},"price":5.292,"volume":{"bars":323,"last_bar_volume":799.0,"baseline_avg":893.8,"bar_rvol":0.893936,"raw_accel":1.022785,"smooth_accel":-0.002262,"accel_momentum":0.52818,"rvol_3bar":[1.128537,0.435406,0.893936],"trend_3bar":"MIXED","projected_rvol":1.428625},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":315.0,"sell_vol":127.0,"unclassified_vol":0.0,"imbalance":0.425339,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":11.917203},"context":{"vwap":5.268332,"price_vs_vwap_pct":0.449241,"ema9":5.289673,"ema20":5.286844,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.526316,"dist_to_hod_atr":4.433903,"atr":0.006315,"spread_atr":1.583537,"own_change_pct":-0.058546,"rel_strength_pct":{"SPY":-0.092769,"IWM":-0.070771}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.380226},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7d424a885043","ts":"2026-09-21T18:54:21.140918+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.16,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0805,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.419,"trend":"flat","recent_slope_pct":0.0194,"volatility":"high"},"price":8.075,"volume":{"bars":324,"last_bar_volume":1786.0,"baseline_avg":2637.3,"bar_rvol":0.677208,"raw_accel":1.708831,"smooth_accel":-0.466807,"accel_momentum":-0.005941,"rvol_3bar":[0.946149,0.200883,0.677208],"trend_3bar":"MIXED","projected_rvol":0.726393},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":322.0,"sell_vol":459.0,"unclassified_vol":0.0,"imbalance":-0.175416,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":0.023723},"context":{"vwap":8.080501,"price_vs_vwap_pct":-0.068073,"ema9":8.088541,"ema20":8.09289,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":15.602728,"atr":0.019471,"spread_atr":0.513586,"own_change_pct":-0.076556,"rel_strength_pct":{"SPY":-0.11078,"IWM":-0.088781}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.118793},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6243c7ed6481","ts":"2026-09-21T18:54:26.317271+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.13% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":11.255,"target":12.0486,"target_label":"premarket_high","reward_risk":2.05,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.515,"vwap":11.3271,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":3.0,"volume_pace":0.411,"trend":"flat","recent_slope_pct":0.2582,"volatility":"unknown"},"price":11.515,"volume":{"bars":296,"last_bar_volume":14.0,"baseline_avg":255.1,"bar_rvol":0.05488,"raw_accel":-0.780478,"smooth_accel":2.326761,"accel_momentum":2.453721,"rvol_3bar":[5.671495,0.047013,0.05488],"trend_3bar":"MIXED","projected_rvol":6.050463},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":395.0,"sell_vol":282.0,"unclassified_vol":0.0,"imbalance":0.166913,"bid":11.45,"ask":11.58,"spread_pct":1.128962,"quote_size_imbalance":null,"quote_age_s":3.155355},"context":{"vwap":11.326499,"price_vs_vwap_pct":1.664244,"ema9":11.415658,"ema20":11.426819,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-3.640167,"dist_to_hod_atr":10.345886,"atr":0.042046,"spread_atr":3.091874,"own_change_pct":-0.131877,"rel_strength_pct":{"SPY":-0.1661,"IWM":-0.144102}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.00916},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e14fa2f51d77","ts":"2026-09-21T18:54:31.487658+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9377,"target":8.16,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":119.9,"room_to_5d_high_atr":-0.63},"price":8.0917,"vwap":8.0805,"ext_from_open_pct":-1.2,"max_ext_allowed_pct":4.0,"volume_pace":0.419,"trend":"flat","recent_slope_pct":0.0608,"volatility":"high"},"price":8.0917,"volume":{"bars":324,"last_bar_volume":1786.0,"baseline_avg":2637.3,"bar_rvol":0.677208,"raw_accel":1.708831,"smooth_accel":-0.466807,"accel_momentum":-0.005941,"rvol_3bar":[0.946149,0.200883,0.677208],"trend_3bar":"MIXED","projected_rvol":0.635097},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":419.0,"sell_vol":460.0,"unclassified_vol":0.0,"imbalance":-0.046644,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":2.526208},"context":{"vwap":8.080501,"price_vs_vwap_pct":0.138598,"ema9":8.088541,"ema20":8.09289,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.426505,"dist_to_hod_atr":14.74504,"atr":0.019471,"spread_atr":0.513586,"own_change_pct":-0.076556,"rel_strength_pct":{"SPY":-0.11078,"IWM":-0.088781}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.031588},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fdfe13547ccb","ts":"2026-09-21T18:54:36.733667+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.921,"target":8.16,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.075,"vwap":8.0805,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.418,"trend":"flat","recent_slope_pct":0.0194,"volatility":"high"},"price":8.075,"volume":{"bars":324,"last_bar_volume":1786.0,"baseline_avg":2637.3,"bar_rvol":0.677208,"raw_accel":1.708831,"smooth_accel":-0.466807,"accel_momentum":-0.005941,"rvol_3bar":[0.946149,0.200883,0.677208],"trend_3bar":"MIXED","projected_rvol":0.582177},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":373.0,"sell_vol":459.0,"unclassified_vol":0.0,"imbalance":-0.103365,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":2.052799},"context":{"vwap":8.080501,"price_vs_vwap_pct":-0.068073,"ema9":8.088541,"ema20":8.09289,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.625818,"dist_to_hod_atr":15.602728,"atr":0.019471,"spread_atr":0.513586,"own_change_pct":-0.076556,"rel_strength_pct":{"SPY":-0.11078,"IWM":-0.088781}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.07},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"11a2a09f2f69","ts":"2026-09-21T18:54:36.733667+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2684,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0225,"volatility":"medium"},"price":5.295,"volume":{"bars":323,"last_bar_volume":799.0,"baseline_avg":893.8,"bar_rvol":0.893936,"raw_accel":1.022785,"smooth_accel":-0.002262,"accel_momentum":0.52818,"rvol_3bar":[1.128537,0.435406,0.893936],"trend_3bar":"MIXED","projected_rvol":1.193328},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":325.0,"sell_vol":56.0,"unclassified_vol":0.0,"imbalance":0.706037,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":3.339312},"context":{"vwap":5.268332,"price_vs_vwap_pct":0.506185,"ema9":5.289673,"ema20":5.286844,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.958842,"atr":0.006315,"spread_atr":1.583537,"own_change_pct":-0.058546,"rel_strength_pct":{"SPY":-0.092769,"IWM":-0.070771}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.631152},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fc75ca26e87c","ts":"2026-09-21T18:54:41.946985+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9373,"target":8.16,"target_label":"ceiling","reward_risk":0.45,"pos_in_5d_range_pct":119.9,"room_to_5d_high_atr":-0.63},"price":8.0913,"vwap":8.0805,"ext_from_open_pct":-1.21,"max_ext_allowed_pct":3.0,"volume_pace":0.418,"trend":"flat","recent_slope_pct":0.0598,"volatility":"high"},"price":8.0913,"volume":{"bars":324,"last_bar_volume":1786.0,"baseline_avg":2637.3,"bar_rvol":0.677208,"raw_accel":1.708831,"smooth_accel":-0.466807,"accel_momentum":-0.005941,"rvol_3bar":[0.946149,0.200883,0.677208],"trend_3bar":"MIXED","projected_rvol":0.726768},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":460.0,"sell_vol":759.0,"unclassified_vol":0.0,"imbalance":-0.245283,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":2.177346},"context":{"vwap":8.080501,"price_vs_vwap_pct":0.133648,"ema9":8.088541,"ema20":8.09289,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.431279,"dist_to_hod_atr":14.765584,"atr":0.019471,"spread_atr":0.513586,"own_change_pct":-0.076556,"rel_strength_pct":{"SPY":-0.11078,"IWM":-0.088781}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.166108},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f0a4d2907e2f","ts":"2026-09-21T18:54:41.946985+00:00","symbol":"GOSS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.3,"target":11.57,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.5,"vwap":11.3271,"ext_from_open_pct":-0.86,"max_ext_allowed_pct":3.0,"volume_pace":0.411,"trend":"flat","recent_slope_pct":0.232,"volatility":"unknown"},"price":11.5,"volume":{"bars":296,"last_bar_volume":14.0,"baseline_avg":255.1,"bar_rvol":0.05488,"raw_accel":-0.780478,"smooth_accel":2.326761,"accel_momentum":2.453721,"rvol_3bar":[5.671495,0.047013,0.05488],"trend_3bar":"MIXED","projected_rvol":4.076378},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":395.0,"sell_vol":232.0,"unclassified_vol":0.0,"imbalance":0.259968,"bid":11.45,"ask":11.55,"spread_pct":0.869565,"quote_size_imbalance":null,"quote_age_s":0.420155},"context":{"vwap":11.326499,"price_vs_vwap_pct":1.531812,"ema9":11.415658,"ema20":11.426819,"ema_stack":false,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-3.76569,"dist_to_hod_atr":10.702641,"atr":0.042046,"spread_atr":2.378365,"own_change_pct":-0.131877,"rel_strength_pct":{"SPY":-0.1661,"IWM":-0.144102}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.014267},"shadow":{"decision":"FAIL","failed":["bar_rvol","spread","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c8532dd98cb1","ts":"2026-09-21T18:54:47.136249+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.9203,"target":8.16,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.0743,"vwap":8.0805,"ext_from_open_pct":-1.41,"max_ext_allowed_pct":3.0,"volume_pace":0.418,"trend":"flat","recent_slope_pct":0.0177,"volatility":"high"},"price":8.0743,"volume":{"bars":324,"last_bar_volume":1786.0,"baseline_avg":2637.3,"bar_rvol":0.677208,"raw_accel":1.708831,"smooth_accel":-0.466807,"accel_momentum":-0.005941,"rvol_3bar":[0.946149,0.200883,0.677208],"trend_3bar":"MIXED","projected_rvol":0.648688},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":360.0,"sell_vol":759.0,"unclassified_vol":0.0,"imbalance":-0.356568,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":7.36661},"context":{"vwap":8.080501,"price_vs_vwap_pct":-0.076735,"ema9":8.088541,"ema20":8.09289,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.634172,"dist_to_hod_atr":15.638679,"atr":0.019471,"spread_atr":0.513586,"own_change_pct":-0.076556,"rel_strength_pct":{"SPY":-0.11078,"IWM":-0.088781}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.241471},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a5c73487fbd2","ts":"2026-09-21T18:54:52.269556+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2353,"target":5.315,"target_label":"prev_day_high","reward_risk":0.38,"pos_in_5d_range_pct":97.0,"room_to_5d_high_atr":0.1},"price":5.293,"vwap":5.2684,"ext_from_open_pct":-0.51,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0149,"volatility":"medium"},"price":5.293,"volume":{"bars":323,"last_bar_volume":799.0,"baseline_avg":893.8,"bar_rvol":0.893936,"raw_accel":1.022785,"smooth_accel":-0.002262,"accel_momentum":0.52818,"rvol_3bar":[1.128537,0.435406,0.893936],"trend_3bar":"MIXED","projected_rvol":1.356207},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":601.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":0.709815,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":4.15813},"context":{"vwap":5.268332,"price_vs_vwap_pct":0.468222,"ema9":5.289673,"ema20":5.286844,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.507519,"dist_to_hod_atr":4.275549,"atr":0.006315,"spread_atr":1.583537,"own_change_pct":-0.058546,"rel_strength_pct":{"SPY":-0.092769,"IWM":-0.070771}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.634529},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8537bc542c1a","ts":"2026-09-21T18:55:07.950760+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9371,"target":8.16,"target_label":"ceiling","reward_risk":0.45,"pos_in_5d_range_pct":119.9,"room_to_5d_high_atr":-0.63},"price":8.0911,"vwap":8.0805,"ext_from_open_pct":-1.21,"max_ext_allowed_pct":3.0,"volume_pace":0.418,"trend":"flat","recent_slope_pct":0.0379,"volatility":"high"},"price":8.0911,"volume":{"bars":325,"last_bar_volume":1389.0,"baseline_avg":2138.8,"bar_rvol":0.64943,"raw_accel":-0.222284,"smooth_accel":-0.647814,"accel_momentum":-0.181006,"rvol_3bar":[0.200883,0.677208,0.64943],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":202.0,"sell_vol":352.0,"unclassified_vol":0.0,"imbalance":-0.270758,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":2.540726},"context":{"vwap":8.080499,"price_vs_vwap_pct":0.13119,"ema9":8.085273,"ema20":8.090919,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.433666,"dist_to_hod_atr":14.618775,"atr":0.01968,"spread_atr":0.508126,"own_change_pct":-0.397315,"rel_strength_pct":{"SPY":-0.410229,"IWM":-0.402554}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.175838},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c5b3bc1c1b5f","ts":"2026-09-21T18:55:18.433540+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.07 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.9203,"target":8.16,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":119.0,"room_to_5d_high_atr":-0.6},"price":8.0743,"vwap":8.0805,"ext_from_open_pct":-1.41,"max_ext_allowed_pct":3.0,"volume_pace":0.418,"trend":"flat","recent_slope_pct":-0.0037,"volatility":"high"},"price":8.0743,"volume":{"bars":325,"last_bar_volume":1389.0,"baseline_avg":2138.8,"bar_rvol":0.64943,"raw_accel":-0.222284,"smooth_accel":-0.647814,"accel_momentum":-0.181006,"rvol_3bar":[0.200883,0.677208,0.64943],"trend_3bar":"MIXED","projected_rvol":0.470252},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":106.0,"sell_vol":248.0,"unclassified_vol":0.0,"imbalance":-0.40113,"bid":8.07,"ask":8.08,"spread_pct":0.123839,"quote_size_imbalance":null,"quote_age_s":13.023506},"context":{"vwap":8.080499,"price_vs_vwap_pct":-0.076718,"ema9":8.085273,"ema20":8.090919,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.634172,"dist_to_hod_atr":15.472426,"atr":0.01968,"spread_atr":0.508126,"own_change_pct":-0.397315,"rel_strength_pct":{"SPY":-0.410229,"IWM":-0.402554}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.260506},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5d138c104d46","ts":"2026-09-21T18:55:18.433540+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2684,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.2,"trend":"flat","recent_slope_pct":0.0178,"volatility":"medium"},"price":5.295,"volume":{"bars":324,"last_bar_volume":1137.0,"baseline_avg":814.5,"bar_rvol":1.395948,"raw_accel":0.423029,"smooth_accel":-0.04271,"accel_momentum":-0.040448,"rvol_3bar":[0.435406,0.893936,1.395948],"trend_3bar":"ACCELERATING","projected_rvol":0.507522},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":58.0,"sell_vol":159.0,"unclassified_vol":0.0,"imbalance":-0.465438,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":8.12353},"context":{"vwap":5.268409,"price_vs_vwap_pct":0.504731,"ema9":5.289738,"ema20":5.287145,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":4.018614,"atr":0.006221,"spread_atr":1.607445,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.012914,"IWM":-0.005239}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.649727},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1a7a1e002ef6","ts":"2026-09-21T18:55:23.639523+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.941,"target":8.16,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":120.1,"room_to_5d_high_atr":-0.63},"price":8.095,"vwap":8.0805,"ext_from_open_pct":-1.16,"max_ext_allowed_pct":4.0,"volume_pace":0.418,"trend":"flat","recent_slope_pct":0.0475,"volatility":"high"},"price":8.095,"volume":{"bars":325,"last_bar_volume":1389.0,"baseline_avg":2138.8,"bar_rvol":0.64943,"raw_accel":-0.222284,"smooth_accel":-0.647814,"accel_momentum":-0.181006,"rvol_3bar":[0.200883,0.677208,0.64943],"trend_3bar":"MIXED","projected_rvol":6.498391},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":3536.0,"sell_vol":1985.0,"unclassified_vol":0.0,"imbalance":0.280927,"bid":8.09,"ask":8.1,"spread_pct":0.123533,"quote_size_imbalance":null,"quote_age_s":0.585669},"context":{"vwap":8.080499,"price_vs_vwap_pct":0.179455,"ema9":8.085273,"ema20":8.090919,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.38712,"dist_to_hod_atr":14.420606,"atr":0.01968,"spread_atr":0.508126,"own_change_pct":-0.397315,"rel_strength_pct":{"SPY":-0.410229,"IWM":-0.402554}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.182443},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d1fc0bc6b13b","ts":"2026-09-21T18:55:33.974370+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2684,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.2,"trend":"flat","recent_slope_pct":-0.0011,"volatility":"medium"},"price":5.29,"volume":{"bars":324,"last_bar_volume":1137.0,"baseline_avg":814.5,"bar_rvol":1.395948,"raw_accel":0.423029,"smooth_accel":-0.04271,"accel_momentum":-0.040448,"rvol_3bar":[0.435406,0.893936,1.395948],"trend_3bar":"ACCELERATING","projected_rvol":0.87814},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":69.0,"sell_vol":336.0,"unclassified_vol":0.0,"imbalance":-0.659259,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":0.582582},"context":{"vwap":5.268409,"price_vs_vwap_pct":0.409826,"ema9":5.289738,"ema20":5.287145,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.822336,"atr":0.006221,"spread_atr":1.607445,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.012914,"IWM":-0.005239}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.920292},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1d37433ff29c","ts":"2026-09-21T18:55:54.815226+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2423,"target":5.315,"target_label":"prev_day_high","reward_risk":0.26,"pos_in_5d_range_pct":98.0,"room_to_5d_high_atr":0.06},"price":5.3,"vwap":5.2685,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0367,"volatility":"medium"},"price":5.3,"volume":{"bars":324,"last_bar_volume":1137.0,"baseline_avg":814.5,"bar_rvol":1.395948,"raw_accel":0.423029,"smooth_accel":-0.04271,"accel_momentum":-0.040448,"rvol_3bar":[0.435406,0.893936,1.395948],"trend_3bar":"ACCELERATING","projected_rvol":1.533362},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":735.0,"sell_vol":69.0,"unclassified_vol":0.0,"imbalance":0.828358,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":19.778233},"context":{"vwap":5.268409,"price_vs_vwap_pct":0.599636,"ema9":5.289738,"ema20":5.287145,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.37594,"dist_to_hod_atr":3.214891,"atr":0.006221,"spread_atr":1.607445,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.012914,"IWM":-0.005239}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.156345},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c76f6fe9fc58","ts":"2026-09-21T18:56:10.577051+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2349,"target":5.315,"target_label":"prev_day_high","reward_risk":0.39,"pos_in_5d_range_pct":97.0,"room_to_5d_high_atr":0.1},"price":5.2926,"vwap":5.2685,"ext_from_open_pct":-0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0229,"volatility":"medium"},"price":5.2926,"volume":{"bars":325,"last_bar_volume":1141.0,"baseline_avg":849.85,"bar_rvol":1.34259,"raw_accel":0.003518,"smooth_accel":0.435168,"accel_momentum":0.477878,"rvol_3bar":[0.893936,1.395948,1.34259],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":344.0,"sell_vol":63.0,"unclassified_vol":0.0,"imbalance":0.690418,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":0.269917},"context":{"vwap":5.268501,"price_vs_vwap_pct":0.457416,"ema9":5.291791,"ema20":5.288369,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.515038,"dist_to_hod_atr":4.221245,"atr":0.006491,"spread_atr":1.5406,"own_change_pct":0.189036,"rel_strength_pct":{"SPY":0.194201,"IWM":0.18729}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.926948},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3f14f8be42de","ts":"2026-09-21T18:56:15.816315+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2685,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0319,"volatility":"medium"},"price":5.295,"volume":{"bars":325,"last_bar_volume":1141.0,"baseline_avg":849.85,"bar_rvol":1.34259,"raw_accel":0.003518,"smooth_accel":0.435168,"accel_momentum":0.477878,"rvol_3bar":[0.893936,1.395948,1.34259],"trend_3bar":"MIXED","projected_rvol":1.138266},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":325.0,"sell_vol":142.0,"unclassified_vol":0.0,"imbalance":0.391863,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":3.254731},"context":{"vwap":5.268501,"price_vs_vwap_pct":0.50297,"ema9":5.291791,"ema20":5.288369,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.851501,"atr":0.006491,"spread_atr":1.5406,"own_change_pct":0.189036,"rel_strength_pct":{"SPY":0.194201,"IWM":0.18729}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.526111},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"688470220ffc","ts":"2026-09-21T18:56:21.042207+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2366,"target":5.315,"target_label":"prev_day_high","reward_risk":0.36,"pos_in_5d_range_pct":97.2,"room_to_5d_high_atr":0.09},"price":5.2943,"vwap":5.2685,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0293,"volatility":"medium"},"price":5.2943,"volume":{"bars":325,"last_bar_volume":1141.0,"baseline_avg":849.85,"bar_rvol":1.34259,"raw_accel":0.003518,"smooth_accel":0.435168,"accel_momentum":0.477878,"rvol_3bar":[0.893936,1.395948,1.34259],"trend_3bar":"MIXED","projected_rvol":0.85893},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":314.0,"sell_vol":142.0,"unclassified_vol":0.0,"imbalance":0.377193,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":8.480623},"context":{"vwap":5.268501,"price_vs_vwap_pct":0.489683,"ema9":5.291791,"ema20":5.288369,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.483083,"dist_to_hod_atr":3.959343,"atr":0.006491,"spread_atr":1.5406,"own_change_pct":0.189036,"rel_strength_pct":{"SPY":0.194201,"IWM":0.18729}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.506415},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f6f0e08464a8","ts":"2026-09-21T18:56:36.714962+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.08 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.926,"target":8.16,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":119.3,"room_to_5d_high_atr":-0.61},"price":8.08,"vwap":8.0805,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.418,"trend":"flat","recent_slope_pct":0.0126,"volatility":"high"},"price":8.08,"volume":{"bars":326,"last_bar_volume":6026.0,"baseline_avg":2057.45,"bar_rvol":2.928868,"raw_accel":3.338373,"smooth_accel":0.776255,"accel_momentum":1.424069,"rvol_3bar":[0.677208,0.64943,2.928868],"trend_3bar":"MIXED","projected_rvol":3.532206},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":404.0,"sell_vol":4043.0,"unclassified_vol":0.0,"imbalance":-0.818304,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":2.006388},"context":{"vwap":8.080507,"price_vs_vwap_pct":-0.00628,"ema9":8.084898,"ema20":8.090203,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.566143,"dist_to_hod_atr":15.0128,"atr":0.019903,"spread_atr":0.502436,"own_change_pct":0.104025,"rel_strength_pct":{"SPY":0.10919,"IWM":0.102278}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.396706},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"735750b0719c","ts":"2026-09-21T18:56:41.922249+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.9278,"target":8.16,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":119.4,"room_to_5d_high_atr":-0.61},"price":8.0818,"vwap":8.0805,"ext_from_open_pct":-1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.418,"trend":"flat","recent_slope_pct":0.0171,"volatility":"high"},"price":8.0818,"volume":{"bars":326,"last_bar_volume":6026.0,"baseline_avg":2057.45,"bar_rvol":2.928868,"raw_accel":3.338373,"smooth_accel":0.776255,"accel_momentum":1.424069,"rvol_3bar":[0.677208,0.64943,2.928868],"trend_3bar":"MIXED","projected_rvol":3.232586},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":502.0,"sell_vol":4143.0,"unclassified_vol":0.0,"imbalance":-0.783854,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":2.909945},"context":{"vwap":8.080507,"price_vs_vwap_pct":0.015996,"ema9":8.084898,"ema20":8.090203,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.54466,"dist_to_hod_atr":14.922361,"atr":0.019903,"spread_atr":0.502436,"own_change_pct":0.104025,"rel_strength_pct":{"SPY":0.10919,"IWM":0.102278}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.295804},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7256496dcbda","ts":"2026-09-21T18:56:57.534153+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2686,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.2,"trend":"flat","recent_slope_pct":0.0319,"volatility":"medium"},"price":5.295,"volume":{"bars":325,"last_bar_volume":1141.0,"baseline_avg":849.85,"bar_rvol":1.34259,"raw_accel":0.003518,"smooth_accel":0.435168,"accel_momentum":0.477878,"rvol_3bar":[0.893936,1.395948,1.34259],"trend_3bar":"MIXED","projected_rvol":0.979233},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":137.0,"sell_vol":400.0,"unclassified_vol":0.0,"imbalance":-0.489758,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":2.229323},"context":{"vwap":5.268501,"price_vs_vwap_pct":0.50297,"ema9":5.291791,"ema20":5.288369,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.851501,"atr":0.006491,"spread_atr":1.5406,"own_change_pct":0.189036,"rel_strength_pct":{"SPY":0.194201,"IWM":0.18729}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.657544},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9633453a71f2","ts":"2026-09-21T18:57:02.763444+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2686,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.2,"trend":"flat","recent_slope_pct":0.0023,"volatility":"medium"},"price":5.29,"volume":{"bars":326,"last_bar_volume":798.0,"baseline_avg":876.45,"bar_rvol":0.910491,"raw_accel":-0.300613,"smooth_accel":0.395011,"accel_momentum":-0.040157,"rvol_3bar":[1.395948,1.34259,0.910491],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":136.0,"sell_vol":411.0,"unclassified_vol":0.0,"imbalance":-0.502742,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":3.644484},"context":{"vwap":5.268558,"price_vs_vwap_pct":0.406987,"ema9":5.292433,"ema20":5.289,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.449969,"atr":0.006742,"spread_atr":1.483323,"own_change_pct":0.094518,"rel_strength_pct":{"SPY":0.099683,"IWM":0.096264}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.457742},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"7891ca213e0e","ts":"2026-09-21T18:57:07.931694+00:00","symbol":"NXE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6915,"target":11.45,"target_label":"range_20d_high","reward_risk":16.86,"pos_in_5d_range_pct":130.0,"room_to_5d_high_atr":-0.3},"price":9.79,"vwap":9.7085,"ext_from_open_pct":1.03,"max_ext_allowed_pct":3.0,"volume_pace":0.571,"trend":"flat","recent_slope_pct":-0.0394,"volatility":"medium"},"price":9.79,"volume":{"bars":327,"last_bar_volume":9997.0,"baseline_avg":9581.35,"bar_rvol":1.043381,"raw_accel":0.49925,"smooth_accel":0.101896,"accel_momentum":0.2709,"rvol_3bar":[1.344747,0.635474,1.043381],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1703.0,"sell_vol":6051.0,"unclassified_vol":0.0,"imbalance":-0.560743,"bid":9.79,"ask":9.8,"spread_pct":0.102093,"quote_size_imbalance":null,"quote_age_s":0.265221},"context":{"vwap":9.708457,"price_vs_vwap_pct":0.839919,"ema9":9.804564,"ema20":9.796942,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-0.406918,"dist_to_hod_atr":2.397848,"atr":0.016682,"spread_atr":0.599462,"own_change_pct":-0.07851,"rel_strength_pct":{"SPY":-0.073345,"IWM":-0.076764}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.585069},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"27dde4704696","ts":"2026-09-21T18:57:13.109234+00:00","symbol":"UUUU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.0547,"target":12.34,"target_label":"premarket_high","reward_risk":0.63,"pos_in_5d_range_pct":67.0,"room_to_5d_high_atr":0.53},"price":12.23,"vwap":12.1844,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":0.557,"trend":"flat","recent_slope_pct":-0.02,"volatility":"medium"},"price":12.23,"volume":{"bars":327,"last_bar_volume":6363.0,"baseline_avg":8047.05,"bar_rvol":0.790725,"raw_accel":2.137574,"smooth_accel":-0.101484,"accel_momentum":0.340643,"rvol_3bar":[0.708508,0.243724,0.790725],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":110.0,"sell_vol":586.0,"unclassified_vol":0.0,"imbalance":-0.683908,"bid":12.22,"ask":12.23,"spread_pct":0.0818,"quote_size_imbalance":null,"quote_age_s":0.485755},"context":{"vwap":12.184417,"price_vs_vwap_pct":0.37411,"ema9":12.229634,"ema20":12.227431,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.081665,"dist_to_hod_atr":15.340608,"atr":0.016948,"spread_atr":0.590023,"own_change_pct":-0.077678,"rel_strength_pct":{"SPY":-0.072513,"IWM":-0.075932}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.540783},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3d67ff5de596","ts":"2026-09-21T18:57:33.741583+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.08 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.926,"target":8.16,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":119.3,"room_to_5d_high_atr":-0.61},"price":8.08,"vwap":8.0805,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.417,"trend":"flat","recent_slope_pct":-0.0099,"volatility":"high"},"price":8.08,"volume":{"bars":327,"last_bar_volume":4849.0,"baseline_avg":2298.25,"bar_rvol":2.109866,"raw_accel":-0.19532,"smooth_accel":1.553404,"accel_momentum":0.777149,"rvol_3bar":[0.64943,2.928868,2.109866],"trend_3bar":"MIXED","projected_rvol":2.728166},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1482.0,"sell_vol":2023.0,"unclassified_vol":0.0,"imbalance":-0.154351,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":2.671407},"context":{"vwap":8.08052,"price_vs_vwap_pct":-0.006432,"ema9":8.085719,"ema20":8.090088,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.566143,"dist_to_hod_atr":15.56602,"atr":0.019196,"spread_atr":0.520951,"own_change_pct":0.15229,"rel_strength_pct":{"SPY":0.157454,"IWM":0.154036}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.32566},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"06f0ee6b42e6","ts":"2026-09-21T18:57:33.741583+00:00","symbol":"GOSS","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.04% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":11.28,"target":12.0486,"target_label":"premarket_high","reward_risk":2.2,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":11.52,"vwap":11.3272,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.407,"trend":"flat","recent_slope_pct":0.1001,"volatility":"unknown"},"price":11.52,"volume":{"bars":299,"last_bar_volume":14.0,"baseline_avg":292.6,"bar_rvol":0.047847,"raw_accel":-0.808612,"smooth_accel":-0.357324,"accel_momentum":-0.006597,"rvol_3bar":[2.859937,0.047929,0.047847],"trend_3bar":"DECELERATING","projected_rvol":0.085082},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":10.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.428571,"bid":11.46,"ask":11.58,"spread_pct":1.041667,"quote_size_imbalance":null,"quote_age_s":4.270273},"context":{"vwap":11.327186,"price_vs_vwap_pct":1.702226,"ema9":11.453137,"ema20":11.444452,"ema_stack":true,"ema_warm":true,"hod":11.95,"dist_to_hod_pct":-3.598326,"dist_to_hod_atr":8.867952,"atr":0.048489,"spread_atr":2.474777,"own_change_pct":0.614574,"rel_strength_pct":{"SPY":0.619739,"IWM":0.61632}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.020506},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","spread","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"4347994d6ef8","ts":"2026-09-21T18:57:38.960736+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.931,"target":8.16,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.62},"price":8.085,"vwap":8.0805,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.417,"trend":"flat","recent_slope_pct":0.0025,"volatility":"high"},"price":8.085,"volume":{"bars":327,"last_bar_volume":4849.0,"baseline_avg":2298.25,"bar_rvol":2.109866,"raw_accel":-0.19532,"smooth_accel":1.553404,"accel_momentum":0.777149,"rvol_3bar":[0.64943,2.928868,2.109866],"trend_3bar":"MIXED","projected_rvol":2.429711},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1082.0,"sell_vol":993.0,"unclassified_vol":0.0,"imbalance":0.042892,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":4.105753},"context":{"vwap":8.08052,"price_vs_vwap_pct":0.055446,"ema9":8.085719,"ema20":8.090088,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.506469,"dist_to_hod_atr":15.305545,"atr":0.019196,"spread_atr":0.520951,"own_change_pct":0.15229,"rel_strength_pct":{"SPY":0.157454,"IWM":0.154036}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.090495},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6d9b109573a9","ts":"2026-09-21T18:57:54.624078+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.08 below VWAP $8.08","plan":{"state":"PASS","setup":"","stop":7.926,"target":8.16,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":119.3,"room_to_5d_high_atr":-0.61},"price":8.08,"vwap":8.0805,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.417,"trend":"flat","recent_slope_pct":-0.0099,"volatility":"high"},"price":8.08,"volume":{"bars":327,"last_bar_volume":4849.0,"baseline_avg":2298.25,"bar_rvol":2.109866,"raw_accel":-0.19532,"smooth_accel":1.553404,"accel_momentum":0.777149,"rvol_3bar":[0.64943,2.928868,2.109866],"trend_3bar":"MIXED","projected_rvol":1.764062},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":161.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":0.703704,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":5.662063},"context":{"vwap":8.08052,"price_vs_vwap_pct":-0.006432,"ema9":8.085719,"ema20":8.090088,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.566143,"dist_to_hod_atr":15.56602,"atr":0.019196,"spread_atr":0.520951,"own_change_pct":0.15229,"rel_strength_pct":{"SPY":0.157454,"IWM":0.154036}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.484721},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ac4972f28f7d","ts":"2026-09-21T18:58:05.011224+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.931,"target":8.16,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":119.5,"room_to_5d_high_atr":-0.62},"price":8.085,"vwap":8.0805,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.417,"trend":"flat","recent_slope_pct":0.0275,"volatility":"high"},"price":8.085,"volume":{"bars":328,"last_bar_volume":3691.0,"baseline_avg":2351.1,"bar_rvol":1.569903,"raw_accel":-0.238812,"smooth_accel":2.931444,"accel_momentum":1.37804,"rvol_3bar":[2.928868,2.109866,1.569903],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":91.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.915789,"bid":8.08,"ask":8.09,"spread_pct":0.123686,"quote_size_imbalance":null,"quote_age_s":16.049209},"context":{"vwap":8.080522,"price_vs_vwap_pct":0.055423,"ema9":8.084575,"ema20":8.089128,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-3.506469,"dist_to_hod_atr":15.54829,"atr":0.018896,"spread_atr":0.529213,"own_change_pct":0.118953,"rel_strength_pct":{"SPY":0.117662,"IWM":0.099741}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.437701},"shadow":{"decision":"FAIL","failed":["not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"58fa36b05023","ts":"2026-09-21T18:58:05.011224+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2687,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":5.295,"volume":{"bars":327,"last_bar_volume":430.0,"baseline_avg":705.1,"bar_rvol":0.609843,"raw_accel":-0.461153,"smooth_accel":0.016302,"accel_momentum":-0.378709,"rvol_3bar":[1.34259,0.910491,0.609843],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":1043.0,"sell_vol":447.0,"unclassified_vol":0.0,"imbalance":0.4,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":2.290726},"context":{"vwap":5.268585,"price_vs_vwap_pct":0.501366,"ema9":5.291946,"ema20":5.289096,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.778022,"atr":0.006617,"spread_atr":1.511209,"own_change_pct":-0.011341,"rel_strength_pct":{"SPY":-0.012632,"IWM":-0.030553}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.243937},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"ac59d726cf38","ts":"2026-09-21T18:58:10.196021+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2358,"target":5.315,"target_label":"prev_day_high","reward_risk":0.37,"pos_in_5d_range_pct":97.1,"room_to_5d_high_atr":0.09},"price":5.2935,"vwap":5.2687,"ext_from_open_pct":-0.5,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"medium"},"price":5.2935,"volume":{"bars":327,"last_bar_volume":430.0,"baseline_avg":705.1,"bar_rvol":0.609843,"raw_accel":-0.461153,"smooth_accel":0.016302,"accel_momentum":-0.378709,"rvol_3bar":[1.34259,0.910491,0.609843],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":1043.0,"sell_vol":481.0,"unclassified_vol":0.0,"imbalance":0.368766,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":4.372657},"context":{"vwap":5.268585,"price_vs_vwap_pct":0.472896,"ema9":5.291946,"ema20":5.289096,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.49812,"dist_to_hod_atr":4.004704,"atr":0.006617,"spread_atr":1.511209,"own_change_pct":-0.011341,"rel_strength_pct":{"SPY":-0.012632,"IWM":-0.030553}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.224889},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"08a899b812a7","ts":"2026-09-21T18:58:25.648682+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.2373,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.295,"vwap":5.2687,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":5.295,"volume":{"bars":327,"last_bar_volume":430.0,"baseline_avg":705.1,"bar_rvol":0.609843,"raw_accel":-0.461153,"smooth_accel":0.016302,"accel_momentum":-0.378709,"rvol_3bar":[1.34259,0.910491,0.609843],"trend_3bar":"DECELERATING","projected_rvol":5.497408},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1044.0,"sell_vol":811.0,"unclassified_vol":0.0,"imbalance":0.125606,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":7.106348},"context":{"vwap":5.268585,"price_vs_vwap_pct":0.501366,"ema9":5.291946,"ema20":5.289096,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.469925,"dist_to_hod_atr":3.778022,"atr":0.006617,"spread_atr":1.511209,"own_change_pct":-0.011341,"rel_strength_pct":{"SPY":-0.012632,"IWM":-0.030553}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.0766},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"76e01b6be8aa","ts":"2026-09-21T18:58:35.992186+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2371,"target":5.315,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.09},"price":5.2948,"vwap":5.2687,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":-0.0008,"volatility":"medium"},"price":5.2948,"volume":{"bars":327,"last_bar_volume":430.0,"baseline_avg":705.1,"bar_rvol":0.609843,"raw_accel":-0.461153,"smooth_accel":0.016302,"accel_momentum":-0.378709,"rvol_3bar":[1.34259,0.910491,0.609843],"trend_3bar":"DECELERATING","projected_rvol":3.938831},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":1.0,"sell_vol":522.0,"unclassified_vol":0.0,"imbalance":-0.996176,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":6.904308},"context":{"vwap":5.268585,"price_vs_vwap_pct":0.49757,"ema9":5.291946,"ema20":5.289096,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.473684,"dist_to_hod_atr":3.808246,"atr":0.006617,"spread_atr":1.511209,"own_change_pct":-0.011341,"rel_strength_pct":{"SPY":-0.012632,"IWM":-0.030553}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.60751},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"c74f5a58d998","ts":"2026-09-21T18:58:46.286115+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.9801,"target":9.1129,"target_label":"clear air (typical 60-min move)","reward_risk":0.54,"pos_in_5d_range_pct":130.6,"room_to_5d_high_atr":-0.97},"price":9.0666,"vwap":9.0147,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.724,"trend":"flat","recent_slope_pct":-0.0022,"volatility":"medium"},"price":9.0666,"volume":{"bars":328,"last_bar_volume":5833.0,"baseline_avg":10165.65,"bar_rvol":0.573795,"raw_accel":-0.081562,"smooth_accel":0.470691,"accel_momentum":0.728833,"rvol_3bar":[1.148682,0.601107,0.573795],"trend_3bar":"DECELERATING","projected_rvol":0.884197},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":2130.0,"sell_vol":4672.0,"unclassified_vol":0.0,"imbalance":-0.373714,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":1.265108},"context":{"vwap":9.014625,"price_vs_vwap_pct":0.576568,"ema9":9.067535,"ema20":9.068117,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.693326,"dist_to_hod_atr":2.981696,"atr":0.02123,"spread_atr":0.471042,"own_change_pct":-0.055188,"rel_strength_pct":{"SPY":-0.056479,"IWM":-0.0744}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.214435},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a3c63d4e8f10","ts":"2026-09-21T18:58:46.286115+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.238,"target":5.315,"target_label":"prev_day_high","reward_risk":0.33,"pos_in_5d_range_pct":97.4,"room_to_5d_high_atr":0.08},"price":5.2957,"vwap":5.2687,"ext_from_open_pct":-0.46,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":0.0026,"volatility":"medium"},"price":5.2957,"volume":{"bars":327,"last_bar_volume":430.0,"baseline_avg":705.1,"bar_rvol":0.609843,"raw_accel":-0.461153,"smooth_accel":0.016302,"accel_momentum":-0.378709,"rvol_3bar":[1.34259,0.910491,0.609843],"trend_3bar":"DECELERATING","projected_rvol":3.614376},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":119.0,"sell_vol":548.0,"unclassified_vol":0.0,"imbalance":-0.643178,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":5.719755},"context":{"vwap":5.268585,"price_vs_vwap_pct":0.514653,"ema9":5.291946,"ema20":5.289096,"ema_stack":true,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.456767,"dist_to_hod_atr":3.672238,"atr":0.006617,"spread_atr":1.511209,"own_change_pct":-0.011341,"rel_strength_pct":{"SPY":-0.012632,"IWM":-0.030553}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.392238},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7153d5c1f5ea","ts":"2026-09-21T18:58:56.707145+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9535,"target":9.095,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":128.2,"room_to_5d_high_atr":-0.9},"price":9.04,"vwap":9.0147,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":0.724,"trend":"flat","recent_slope_pct":-0.0609,"volatility":"medium"},"price":9.04,"volume":{"bars":328,"last_bar_volume":5833.0,"baseline_avg":10165.65,"bar_rvol":0.573795,"raw_accel":-0.081562,"smooth_accel":0.470691,"accel_momentum":0.728833,"rvol_3bar":[1.148682,0.601107,0.573795],"trend_3bar":"DECELERATING","projected_rvol":0.733054},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":2119.0,"sell_vol":3648.0,"unclassified_vol":0.0,"imbalance":-0.265129,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":9.13277},"context":{"vwap":9.014625,"price_vs_vwap_pct":0.281492,"ema9":9.067535,"ema20":9.068117,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.984677,"dist_to_hod_atr":4.234667,"atr":0.02123,"spread_atr":0.471042,"own_change_pct":-0.055188,"rel_strength_pct":{"SPY":-0.056479,"IWM":-0.0744}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.15213},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"22b9d3c08c1e","ts":"2026-09-21T18:59:01.888007+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.9585,"target":9.0911,"target_label":"clear air (typical 60-min move)","reward_risk":0.53,"pos_in_5d_range_pct":128.6,"room_to_5d_high_atr":-0.91},"price":9.045,"vwap":9.0147,"ext_from_open_pct":0.28,"max_ext_allowed_pct":3.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0726,"volatility":"medium"},"price":9.045,"volume":{"bars":329,"last_bar_volume":7153.0,"baseline_avg":9198.0,"bar_rvol":0.777669,"raw_accel":0.226299,"smooth_accel":-0.139507,"accel_momentum":-0.610198,"rvol_3bar":[0.601107,0.573795,0.777669],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":2218.0,"sell_vol":3653.0,"unclassified_vol":0.0,"imbalance":-0.244422,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":0.119727},"context":{"vwap":9.014668,"price_vs_vwap_pct":0.336479,"ema9":9.062028,"ema20":9.06544,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.929912,"dist_to_hod_atr":3.869343,"atr":0.021942,"spread_atr":0.455753,"own_change_pct":-0.275786,"rel_strength_pct":{"SPY":-0.22931,"IWM":-0.281025}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.190079},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"418c5d010f40","ts":"2026-09-21T18:59:01.888007+00:00","symbol":"NXE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6965,"target":11.45,"target_label":"range_20d_high","reward_risk":16.81,"pos_in_5d_range_pct":131.2,"room_to_5d_high_atr":-0.32},"price":9.795,"vwap":9.7086,"ext_from_open_pct":1.08,"max_ext_allowed_pct":3.0,"volume_pace":0.569,"trend":"flat","recent_slope_pct":-0.0306,"volatility":"medium"},"price":9.795,"volume":{"bars":329,"last_bar_volume":2792.0,"baseline_avg":9392.3,"bar_rvol":0.297265,"raw_accel":0.189059,"smooth_accel":-0.390057,"accel_momentum":-0.415093,"rvol_3bar":[1.043381,0.072089,0.297265],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":814.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":0.933492,"bid":9.79,"ask":9.8,"spread_pct":0.102093,"quote_size_imbalance":null,"quote_age_s":1.879484},"context":{"vwap":9.708555,"price_vs_vwap_pct":0.8904,"ema9":9.800121,"ema20":9.796114,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-0.356053,"dist_to_hod_atr":2.072323,"atr":0.016889,"spread_atr":0.592092,"own_change_pct":-0.152983,"rel_strength_pct":{"SPY":-0.106507,"IWM":-0.158222}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.277494},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"46417dc67195","ts":"2026-09-21T18:59:01.888007+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.0397,"target":12.34,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":65.6,"room_to_5d_high_atr":0.55},"price":12.215,"vwap":12.1845,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":4.0,"volume_pace":0.556,"trend":"flat","recent_slope_pct":-0.0259,"volatility":"medium"},"price":12.215,"volume":{"bars":329,"last_bar_volume":10144.0,"baseline_avg":8056.65,"bar_rvol":1.259084,"raw_accel":2.272258,"smooth_accel":0.928874,"accel_momentum":0.828098,"rvol_3bar":[0.790725,0.380263,1.259084],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":3359.0,"sell_vol":2478.0,"unclassified_vol":0.0,"imbalance":0.150934,"bid":12.21,"ask":12.22,"spread_pct":0.081867,"quote_size_imbalance":null,"quote_age_s":0.943269},"context":{"vwap":12.184512,"price_vs_vwap_pct":0.250222,"ema9":12.227558,"ema20":12.226833,"ema_stack":false,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-2.201761,"dist_to_hod_atr":15.805093,"atr":0.017399,"spread_atr":0.574731,"own_change_pct":-0.122599,"rel_strength_pct":{"SPY":-0.076123,"IWM":-0.127838}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.190038},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e26c6e10285b","ts":"2026-09-21T18:59:01.888007+00:00","symbol":"CTKB","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.20x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":5.2323,"target":5.315,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":96.6,"room_to_5d_high_atr":0.11},"price":5.29,"vwap":5.2687,"ext_from_open_pct":-0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.201,"trend":"flat","recent_slope_pct":-0.0472,"volatility":"medium"},"price":5.29,"volume":{"bars":328,"last_bar_volume":2053.0,"baseline_avg":707.95,"bar_rvol":2.899922,"raw_accel":3.774419,"smooth_accel":0.066298,"accel_momentum":0.049996,"rvol_3bar":[0.910491,0.609843,2.899922],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":118.0,"sell_vol":353.0,"unclassified_vol":0.0,"imbalance":-0.498938,"bid":5.29,"ask":5.3,"spread_pct":0.188857,"quote_size_imbalance":null,"quote_age_s":21.321647},"context":{"vwap":5.268729,"price_vs_vwap_pct":0.403718,"ema9":5.291557,"ema20":5.289182,"ema_stack":false,"ema_warm":true,"hod":5.32,"dist_to_hod_pct":-0.56391,"dist_to_hod_atr":4.373914,"atr":0.006859,"spread_atr":1.457971,"own_change_pct":-0.035904,"rel_strength_pct":{"SPY":0.010572,"IWM":-0.041143}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.446883},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"46edd717d0e1","ts":"2026-09-21T18:59:01.888007+00:00","symbol":"JOBY","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":6.3756,"target":6.51,"target_label":"ceiling","reward_risk":1.09,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.44,"vwap":6.3864,"ext_from_open_pct":2.38,"max_ext_allowed_pct":3.0,"volume_pace":1.058,"trend":"flat","recent_slope_pct":-0.097,"volatility":"unknown"},"price":6.44,"volume":{"bars":329,"last_bar_volume":43713.0,"baseline_avg":28331.75,"bar_rvol":1.542898,"raw_accel":0.288025,"smooth_accel":0.76393,"accel_momentum":0.860624,"rvol_3bar":[0.542956,1.224752,1.542898],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":177,"trade_rate":5.9,"buy_vol":10290.0,"sell_vol":26565.0,"unclassified_vol":0.0,"imbalance":-0.441595,"bid":6.44,"ask":6.45,"spread_pct":0.155159,"quote_size_imbalance":null,"quote_age_s":0.089886},"context":{"vwap":6.386361,"price_vs_vwap_pct":0.839895,"ema9":6.461148,"ema20":6.466817,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-1.075269,"dist_to_hod_atr":4.329922,"atr":0.016167,"spread_atr":0.61856,"own_change_pct":-0.232198,"rel_strength_pct":{"SPY":-0.185722,"IWM":-0.237437}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.681337},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"edff4c8f2c43","ts":"2026-09-21T18:59:12.252352+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9535,"target":9.095,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":128.2,"room_to_5d_high_atr":-0.9},"price":9.04,"vwap":9.0147,"ext_from_open_pct":0.22,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0836,"volatility":"medium"},"price":9.04,"volume":{"bars":329,"last_bar_volume":7153.0,"baseline_avg":9198.0,"bar_rvol":0.777669,"raw_accel":0.226299,"smooth_accel":-0.139507,"accel_momentum":-0.610198,"rvol_3bar":[0.601107,0.573795,0.777669],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":3614.0,"sell_vol":2934.0,"unclassified_vol":0.0,"imbalance":0.103849,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":1.355625},"context":{"vwap":9.014668,"price_vs_vwap_pct":0.281014,"ema9":9.062028,"ema20":9.06544,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.984677,"dist_to_hod_atr":4.09722,"atr":0.021942,"spread_atr":0.455753,"own_change_pct":-0.275786,"rel_strength_pct":{"SPY":-0.22931,"IWM":-0.281025}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.08076},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"40e8f01a4c8a","ts":"2026-09-21T18:59:17.437194+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.5048,"target":6.76,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":114.1,"room_to_5d_high_atr":-0.38},"price":6.6681,"vwap":6.5918,"ext_from_open_pct":4.35,"max_ext_allowed_pct":3.0,"volume_pace":0.443,"trend":"flat","recent_slope_pct":-0.1329,"volatility":"high"},"price":6.6681,"volume":{"bars":325,"last_bar_volume":109.0,"baseline_avg":1493.35,"bar_rvol":0.07299,"raw_accel":-0.961848,"smooth_accel":0.599659,"accel_momentum":-0.532733,"rvol_3bar":[0.52116,2.094037,0.07299],"trend_3bar":"MIXED","projected_rvol":7.24659},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":24.0,"sell_vol":3121.0,"unclassified_vol":0.0,"imbalance":-0.984738,"bid":6.66,"ask":6.69,"spread_pct":0.449438,"quote_size_imbalance":null,"quote_age_s":0.711721},"context":{"vwap":6.591707,"price_vs_vwap_pct":1.158926,"ema9":6.684999,"ema20":6.676344,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-3.917867,"dist_to_hod_atr":18.846805,"atr":0.014427,"spread_atr":2.079456,"own_change_pct":-0.373134,"rel_strength_pct":{"SPY":-0.326658,"IWM":-0.378373}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.071876},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e41aaccb7ca2","ts":"2026-09-21T18:59:22.560542+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.9585,"target":9.0911,"target_label":"clear air (typical 60-min move)","reward_risk":0.53,"pos_in_5d_range_pct":128.6,"room_to_5d_high_atr":-0.91},"price":9.045,"vwap":9.0147,"ext_from_open_pct":0.28,"max_ext_allowed_pct":3.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0726,"volatility":"medium"},"price":9.045,"volume":{"bars":329,"last_bar_volume":7153.0,"baseline_avg":9198.0,"bar_rvol":0.777669,"raw_accel":0.226299,"smooth_accel":-0.139507,"accel_momentum":-0.610198,"rvol_3bar":[0.601107,0.573795,0.777669],"trend_3bar":"MIXED","projected_rvol":0.967463},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2007.0,"sell_vol":1549.0,"unclassified_vol":0.0,"imbalance":0.128796,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":1.500538},"context":{"vwap":9.014668,"price_vs_vwap_pct":0.336479,"ema9":9.062028,"ema20":9.06544,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.929912,"dist_to_hod_atr":3.869343,"atr":0.021942,"spread_atr":0.455753,"own_change_pct":-0.275786,"rel_strength_pct":{"SPY":-0.22931,"IWM":-0.281025}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.100161},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b666949bd4d2","ts":"2026-09-21T18:59:33.014159+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9435,"target":9.095,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":127.3,"room_to_5d_high_atr":-0.87},"price":9.03,"vwap":9.0147,"ext_from_open_pct":0.11,"max_ext_allowed_pct":3.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.1057,"volatility":"medium"},"price":9.03,"volume":{"bars":329,"last_bar_volume":7153.0,"baseline_avg":9198.0,"bar_rvol":0.777669,"raw_accel":0.226299,"smooth_accel":-0.139507,"accel_momentum":-0.610198,"rvol_3bar":[0.601107,0.573795,0.777669],"trend_3bar":"MIXED","projected_rvol":1.404644},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":2244.0,"sell_vol":4729.0,"unclassified_vol":0.0,"imbalance":-0.356375,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":0.100803},"context":{"vwap":9.014668,"price_vs_vwap_pct":0.170084,"ema9":9.062028,"ema20":9.06544,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.094207,"dist_to_hod_atr":4.552973,"atr":0.021942,"spread_atr":0.455753,"own_change_pct":-0.275786,"rel_strength_pct":{"SPY":-0.22931,"IWM":-0.281025}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.277141},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0a8ce031c9dc","ts":"2026-09-21T18:59:54.096533+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.9573,"target":9.0899,"target_label":"clear air (typical 60-min move)","reward_risk":0.53,"pos_in_5d_range_pct":128.5,"room_to_5d_high_atr":-0.91},"price":9.0438,"vwap":9.0147,"ext_from_open_pct":0.26,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0752,"volatility":"medium"},"price":9.0438,"volume":{"bars":329,"last_bar_volume":7153.0,"baseline_avg":9198.0,"bar_rvol":0.777669,"raw_accel":0.226299,"smooth_accel":-0.139507,"accel_momentum":-0.610198,"rvol_3bar":[0.601107,0.573795,0.777669],"trend_3bar":"MIXED","projected_rvol":0.970819},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1120.0,"sell_vol":3585.0,"unclassified_vol":0.0,"imbalance":-0.523911,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":1.342444},"context":{"vwap":9.014668,"price_vs_vwap_pct":0.323167,"ema9":9.062028,"ema20":9.06544,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.943055,"dist_to_hod_atr":3.924034,"atr":0.021942,"spread_atr":0.455753,"own_change_pct":-0.275786,"rel_strength_pct":{"SPY":-0.22931,"IWM":-0.281025}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.407429},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"477787995276","ts":"2026-09-21T18:59:59.349245+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9535,"target":9.095,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":128.2,"room_to_5d_high_atr":-0.9},"price":9.04,"vwap":9.0147,"ext_from_open_pct":0.22,"max_ext_allowed_pct":4.0,"volume_pace":0.722,"trend":"flat","recent_slope_pct":-0.0836,"volatility":"medium"},"price":9.04,"volume":{"bars":329,"last_bar_volume":7153.0,"baseline_avg":9198.0,"bar_rvol":0.777669,"raw_accel":0.226299,"smooth_accel":-0.139507,"accel_momentum":-0.610198,"rvol_3bar":[0.601107,0.573795,0.777669],"trend_3bar":"MIXED","projected_rvol":0.895888},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":893.0,"sell_vol":1870.0,"unclassified_vol":0.0,"imbalance":-0.353601,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":6.595156},"context":{"vwap":9.014668,"price_vs_vwap_pct":0.281014,"ema9":9.062028,"ema20":9.06544,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.984677,"dist_to_hod_atr":4.09722,"atr":0.021942,"spread_atr":0.455753,"own_change_pct":-0.275786,"rel_strength_pct":{"SPY":-0.22931,"IWM":-0.281025}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.274985},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0744a59fc604","ts":"2026-09-21T19:00:15.405418+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.5267,"target":6.76,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":115.3,"room_to_5d_high_atr":-0.41},"price":6.69,"vwap":6.5919,"ext_from_open_pct":4.69,"max_ext_allowed_pct":3.0,"volume_pace":0.442,"trend":"flat","recent_slope_pct":-0.0403,"volatility":"high"},"price":6.69,"volume":{"bars":326,"last_bar_volume":3145.0,"baseline_avg":1313.75,"bar_rvol":2.393911,"raw_accel":8.575642,"smooth_accel":2.894837,"accel_momentum":2.295179,"rvol_3bar":[2.094037,0.07299,2.393911],"trend_3bar":"MIXED","projected_rvol":4.390562},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1130.0,"sell_vol":351.0,"unclassified_vol":0.0,"imbalance":0.525996,"bid":6.66,"ask":6.69,"spread_pct":0.449438,"quote_size_imbalance":null,"quote_age_s":0.06237},"context":{"vwap":6.591818,"price_vs_vwap_pct":1.48946,"ema9":6.681619,"ema20":6.675559,"ema_stack":true,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-3.602305,"dist_to_hod_atr":16.978009,"atr":0.014725,"spread_atr":2.037361,"own_change_pct":-0.476119,"rel_strength_pct":{"SPY":-0.456105,"IWM":-0.47088}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.259187},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4e50386fc5a6","ts":"2026-09-21T19:00:36.204197+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.9611,"target":9.0935,"target_label":"clear air (typical 60-min move)","reward_risk":0.53,"pos_in_5d_range_pct":128.9,"room_to_5d_high_atr":-0.92},"price":9.0476,"vwap":9.0148,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":0.722,"trend":"flat","recent_slope_pct":-0.0524,"volatility":"medium"},"price":9.0476,"volume":{"bars":330,"last_bar_volume":8166.0,"baseline_avg":9215.85,"bar_rvol":0.886082,"raw_accel":0.141619,"smooth_accel":-0.155845,"accel_momentum":-0.016338,"rvol_3bar":[0.573795,0.777669,0.886082],"trend_3bar":"ACCELERATING","projected_rvol":1.29548},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":3537.0,"sell_vol":2160.0,"unclassified_vol":0.0,"imbalance":0.241706,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":2.518691},"context":{"vwap":9.014721,"price_vs_vwap_pct":0.36473,"ema9":9.062363,"ema20":9.065274,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.901434,"dist_to_hod_atr":3.581128,"atr":0.022982,"spread_atr":0.435131,"own_change_pct":-0.015444,"rel_strength_pct":{"SPY":0.00457,"IWM":-0.010205}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.214172},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"564a397f019d","ts":"2026-09-21T19:00:41.441155+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9536,"target":9.095,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":128.2,"room_to_5d_high_atr":-0.9},"price":9.0401,"vwap":9.0148,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":0.722,"trend":"flat","recent_slope_pct":-0.069,"volatility":"medium"},"price":9.0401,"volume":{"bars":330,"last_bar_volume":8166.0,"baseline_avg":9215.85,"bar_rvol":0.886082,"raw_accel":0.141619,"smooth_accel":-0.155845,"accel_momentum":-0.016338,"rvol_3bar":[0.573795,0.777669,0.886082],"trend_3bar":"ACCELERATING","projected_rvol":1.151092},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":3524.0,"sell_vol":2077.0,"unclassified_vol":0.0,"imbalance":0.258347,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":3.941884},"context":{"vwap":9.014721,"price_vs_vwap_pct":0.281533,"ema9":9.062363,"ema20":9.065274,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.983581,"dist_to_hod_atr":3.907476,"atr":0.022982,"spread_atr":0.435131,"own_change_pct":-0.015444,"rel_strength_pct":{"SPY":0.00457,"IWM":-0.010205}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.228916},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f221b3a0ca02","ts":"2026-09-21T19:00:46.699668+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.5049,"target":6.76,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":114.1,"room_to_5d_high_atr":-0.38},"price":6.6682,"vwap":6.5919,"ext_from_open_pct":4.35,"max_ext_allowed_pct":3.0,"volume_pace":0.442,"trend":"flat","recent_slope_pct":-0.1056,"volatility":"high"},"price":6.6682,"volume":{"bars":326,"last_bar_volume":3145.0,"baseline_avg":1313.75,"bar_rvol":2.393911,"raw_accel":8.575642,"smooth_accel":2.894837,"accel_momentum":2.295179,"rvol_3bar":[2.094037,0.07299,2.393911],"trend_3bar":"MIXED","projected_rvol":1.458151},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.66,"ask":6.69,"spread_pct":0.449438,"quote_size_imbalance":null,"quote_age_s":1.49689},"context":{"vwap":6.591818,"price_vs_vwap_pct":1.158747,"ema9":6.681619,"ema20":6.675559,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-3.916427,"dist_to_hod_atr":18.458491,"atr":0.014725,"spread_atr":2.037361,"own_change_pct":-0.476119,"rel_strength_pct":{"SPY":-0.456105,"IWM":-0.47088}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.393911},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a72afbf3319b","ts":"2026-09-21T19:00:51.849054+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.9646,"target":9.097,"target_label":"clear air (typical 60-min move)","reward_risk":0.53,"pos_in_5d_range_pct":129.2,"room_to_5d_high_atr":-0.93},"price":9.0511,"vwap":9.0148,"ext_from_open_pct":0.34,"max_ext_allowed_pct":3.0,"volume_pace":0.721,"trend":"flat","recent_slope_pct":-0.0447,"volatility":"medium"},"price":9.0511,"volume":{"bars":330,"last_bar_volume":8166.0,"baseline_avg":9215.85,"bar_rvol":0.886082,"raw_accel":0.141619,"smooth_accel":-0.155845,"accel_momentum":-0.016338,"rvol_3bar":[0.573795,0.777669,0.886082],"trend_3bar":"ACCELERATING","projected_rvol":1.003154},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":3194.0,"sell_vol":2339.0,"unclassified_vol":0.0,"imbalance":0.154527,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":2.634438},"context":{"vwap":9.014721,"price_vs_vwap_pct":0.403556,"ema9":9.062363,"ema20":9.065274,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.863098,"dist_to_hod_atr":3.428832,"atr":0.022982,"spread_atr":0.435131,"own_change_pct":-0.015444,"rel_strength_pct":{"SPY":0.00457,"IWM":-0.010205}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.136924},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"542c9ee7e644","ts":"2026-09-21T19:00:57.008721+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9485,"target":9.095,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.88},"price":9.035,"vwap":9.0148,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":0.721,"trend":"flat","recent_slope_pct":-0.0803,"volatility":"medium"},"price":9.035,"volume":{"bars":330,"last_bar_volume":8166.0,"baseline_avg":9215.85,"bar_rvol":0.886082,"raw_accel":0.141619,"smooth_accel":-0.155845,"accel_momentum":-0.016338,"rvol_3bar":[0.573795,0.777669,0.886082],"trend_3bar":"ACCELERATING","projected_rvol":0.95119},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":3095.0,"sell_vol":2669.0,"unclassified_vol":0.0,"imbalance":0.073907,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":0.129291},"context":{"vwap":9.014721,"price_vs_vwap_pct":0.224959,"ema9":9.062363,"ema20":9.065274,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.039442,"dist_to_hod_atr":4.129393,"atr":0.022982,"spread_atr":0.435131,"own_change_pct":-0.015444,"rel_strength_pct":{"SPY":0.00457,"IWM":-0.010205}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.065488},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5be6867c7b56","ts":"2026-09-21T19:01:02.140842+00:00","symbol":"JOBY","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.3789,"target":6.51,"target_label":"ceiling","reward_risk":1.04,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":6.4433,"vwap":6.3867,"ext_from_open_pct":2.44,"max_ext_allowed_pct":3.0,"volume_pace":1.058,"trend":"flat","recent_slope_pct":-0.0243,"volatility":"unknown"},"price":6.4433,"volume":{"bars":331,"last_bar_volume":107000.0,"baseline_avg":30819.2,"bar_rvol":3.471862,"raw_accel":2.868122,"smooth_accel":1.754486,"accel_momentum":0.342259,"rvol_3bar":[1.542898,0.919893,3.471862],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":3079.0,"sell_vol":7957.0,"unclassified_vol":0.0,"imbalance":-0.442008,"bid":6.44,"ask":6.45,"spread_pct":0.155159,"quote_size_imbalance":null,"quote_age_s":2.131662},"context":{"vwap":6.386733,"price_vs_vwap_pct":0.885702,"ema9":6.457019,"ema20":6.463795,"ema_stack":false,"ema_warm":true,"hod":6.51,"dist_to_hod_pct":-1.024578,"dist_to_hod_atr":3.693776,"atr":0.018057,"spread_atr":0.55379,"own_change_pct":-0.295583,"rel_strength_pct":{"SPY":-0.274922,"IWM":-0.307808}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.534591},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"66a7d4eb0b21","ts":"2026-09-21T19:01:07.345755+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9485,"target":9.095,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.88},"price":9.035,"vwap":9.0148,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":0.721,"trend":"flat","recent_slope_pct":-0.0553,"volatility":"medium"},"price":9.035,"volume":{"bars":331,"last_bar_volume":8376.0,"baseline_avg":9364.1,"bar_rvol":0.89448,"raw_accel":0.025716,"smooth_accel":-0.02638,"accel_momentum":0.129465,"rvol_3bar":[0.777669,0.886082,0.89448],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":202.0,"sell_vol":971.0,"unclassified_vol":0.0,"imbalance":-0.655584,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":0.001669},"context":{"vwap":9.014758,"price_vs_vwap_pct":0.224546,"ema9":9.05589,"ema20":9.061915,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.039442,"dist_to_hod_atr":3.996263,"atr":0.023747,"spread_atr":0.421103,"own_change_pct":-0.331126,"rel_strength_pct":{"SPY":-0.310465,"IWM":-0.34335}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.586407},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ff34e7b0b0ed","ts":"2026-09-21T19:01:12.496724+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.961,"target":9.0931,"target_label":"clear air (typical 60-min move)","reward_risk":0.53,"pos_in_5d_range_pct":128.9,"room_to_5d_high_atr":-0.92},"price":9.0475,"vwap":9.0148,"ext_from_open_pct":0.3,"max_ext_allowed_pct":3.0,"volume_pace":0.721,"trend":"flat","recent_slope_pct":-0.0276,"volatility":"medium"},"price":9.0475,"volume":{"bars":331,"last_bar_volume":8376.0,"baseline_avg":9364.1,"bar_rvol":0.89448,"raw_accel":0.025716,"smooth_accel":-0.02638,"accel_momentum":0.129465,"rvol_3bar":[0.777669,0.886082,0.89448],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":168.0,"sell_vol":1090.0,"unclassified_vol":0.0,"imbalance":-0.732909,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":0.948736},"context":{"vwap":9.014758,"price_vs_vwap_pct":0.363208,"ema9":9.05589,"ema20":9.061915,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.902529,"dist_to_hod_atr":3.469885,"atr":0.023747,"spread_atr":0.421103,"own_change_pct":-0.331126,"rel_strength_pct":{"SPY":-0.310465,"IWM":-0.34335}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.655573},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5f0d9660415b","ts":"2026-09-21T19:01:17.670204+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.5117,"target":6.76,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":114.5,"room_to_5d_high_atr":-0.39},"price":6.675,"vwap":6.5919,"ext_from_open_pct":4.46,"max_ext_allowed_pct":3.0,"volume_pace":0.441,"trend":"flat","recent_slope_pct":-0.0102,"volatility":"high"},"price":6.675,"volume":{"bars":327,"last_bar_volume":1491.0,"baseline_avg":1388.6,"bar_rvol":1.073743,"raw_accel":-0.525914,"smooth_accel":0.164417,"accel_momentum":-2.73042,"rvol_3bar":[0.07299,2.393911,1.073743],"trend_3bar":"MIXED","projected_rvol":0.491506},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":0.0,"sell_vol":201.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.66,"ask":6.69,"spread_pct":0.449438,"quote_size_imbalance":null,"quote_age_s":1.254521},"context":{"vwap":6.591869,"price_vs_vwap_pct":1.261117,"ema9":6.678935,"ema20":6.674858,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-3.818444,"dist_to_hod_atr":16.755177,"atr":0.015816,"spread_atr":1.896813,"own_change_pct":-0.474627,"rel_strength_pct":{"SPY":-0.453966,"IWM":-0.486851}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.073743},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f00175ba77b8","ts":"2026-09-21T19:01:17.670204+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9455,"target":9.095,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":127.5,"room_to_5d_high_atr":-0.87},"price":9.032,"vwap":9.0148,"ext_from_open_pct":0.13,"max_ext_allowed_pct":3.0,"volume_pace":0.721,"trend":"flat","recent_slope_pct":-0.0619,"volatility":"medium"},"price":9.032,"volume":{"bars":331,"last_bar_volume":8376.0,"baseline_avg":9364.1,"bar_rvol":0.89448,"raw_accel":0.025716,"smooth_accel":-0.02638,"accel_momentum":0.129465,"rvol_3bar":[0.777669,0.886082,0.89448],"trend_3bar":"ACCELERATING","projected_rvol":0.1998},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":24.0,"sell_vol":1068.0,"unclassified_vol":0.0,"imbalance":-0.956044,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":1.79916},"context":{"vwap":9.014758,"price_vs_vwap_pct":0.191267,"ema9":9.05589,"ema20":9.061915,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.072301,"dist_to_hod_atr":4.122594,"atr":0.023747,"spread_atr":0.421103,"own_change_pct":-0.331126,"rel_strength_pct":{"SPY":-0.310465,"IWM":-0.34335}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.855162},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9f8a2bfeefb7","ts":"2026-09-21T19:01:22.843979+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.5067,"target":6.76,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":114.2,"room_to_5d_high_atr":-0.38},"price":6.67,"vwap":6.592,"ext_from_open_pct":4.38,"max_ext_allowed_pct":3.0,"volume_pace":0.441,"trend":"flat","recent_slope_pct":-0.0252,"volatility":"high"},"price":6.67,"volume":{"bars":327,"last_bar_volume":1491.0,"baseline_avg":1388.6,"bar_rvol":1.073743,"raw_accel":-0.525914,"smooth_accel":0.164417,"accel_momentum":-2.73042,"rvol_3bar":[0.07299,2.393911,1.073743],"trend_3bar":"MIXED","projected_rvol":5.32074},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":1001.0,"sell_vol":1812.0,"unclassified_vol":0.0,"imbalance":-0.288304,"bid":6.66,"ask":6.68,"spread_pct":0.29985,"quote_size_imbalance":null,"quote_age_s":0.209973},"context":{"vwap":6.591869,"price_vs_vwap_pct":1.185266,"ema9":6.678935,"ema20":6.674858,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-3.89049,"dist_to_hod_atr":17.071313,"atr":0.015816,"spread_atr":1.264542,"own_change_pct":-0.474627,"rel_strength_pct":{"SPY":-0.453966,"IWM":-0.486851}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.309565},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"70e9117a67f1","ts":"2026-09-21T19:01:22.843979+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9376,"target":9.095,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":126.7,"room_to_5d_high_atr":-0.85},"price":9.0241,"vwap":9.0148,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.721,"trend":"flat","recent_slope_pct":-0.0794,"volatility":"medium"},"price":9.0241,"volume":{"bars":331,"last_bar_volume":8376.0,"baseline_avg":9364.1,"bar_rvol":0.89448,"raw_accel":0.025716,"smooth_accel":-0.02638,"accel_momentum":0.129465,"rvol_3bar":[0.777669,0.886082,0.89448],"trend_3bar":"ACCELERATING","projected_rvol":1.41562},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1178.0,"sell_vol":4251.0,"unclassified_vol":0.0,"imbalance":-0.566034,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.371712},"context":{"vwap":9.014758,"price_vs_vwap_pct":0.103633,"ema9":9.05589,"ema20":9.061915,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.15883,"dist_to_hod_atr":4.455265,"atr":0.023747,"spread_atr":0.421103,"own_change_pct":-0.331126,"rel_strength_pct":{"SPY":-0.310465,"IWM":-0.34335}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.506306},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"42b304e85247","ts":"2026-09-21T19:01:27.992701+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.1s / 18s","plan":{"state":"WATCH","setup":"","stop":8.5831,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6443,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.658,"trend":"flat","recent_slope_pct":0.0286,"volatility":"medium"},"price":8.685,"volume":{"bars":331,"last_bar_volume":1363.0,"baseline_avg":2432.75,"bar_rvol":0.560271,"raw_accel":0.180087,"smooth_accel":-0.717042,"accel_momentum":0.001506,"rvol_3bar":[0.27347,0.435775,0.560271],"trend_3bar":"ACCELERATING","projected_rvol":1.437901},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1504.0,"sell_vol":128.0,"unclassified_vol":0.0,"imbalance":0.843137,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":3.468375},"context":{"vwap":8.644209,"price_vs_vwap_pct":0.47189,"ema9":8.67235,"ema20":8.673178,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":18.787113,"atr":0.014015,"spread_atr":0.713525,"own_change_pct":0.182412,"rel_strength_pct":{"SPY":0.203073,"IWM":0.170188}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.472386},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"360bbb4363bc","ts":"2026-09-21T19:01:38.509128+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.955,"target":9.0871,"target_label":"clear air (typical 60-min move)","reward_risk":0.53,"pos_in_5d_range_pct":128.3,"room_to_5d_high_atr":-0.9},"price":9.0415,"vwap":9.0148,"ext_from_open_pct":0.24,"max_ext_allowed_pct":3.0,"volume_pace":0.72,"trend":"flat","recent_slope_pct":-0.0409,"volatility":"medium"},"price":9.0415,"volume":{"bars":331,"last_bar_volume":8376.0,"baseline_avg":9364.1,"bar_rvol":0.89448,"raw_accel":0.025716,"smooth_accel":-0.02638,"accel_momentum":0.129465,"rvol_3bar":[0.777669,0.886082,0.89448],"trend_3bar":"ACCELERATING","projected_rvol":0.902987},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":1447.0,"sell_vol":3979.0,"unclassified_vol":0.0,"imbalance":-0.466642,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.658608},"context":{"vwap":9.014758,"price_vs_vwap_pct":0.29665,"ema9":9.05589,"ema20":9.061915,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.968247,"dist_to_hod_atr":3.722546,"atr":0.023747,"spread_atr":0.421103,"own_change_pct":-0.331126,"rel_strength_pct":{"SPY":-0.310465,"IWM":-0.34335}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.417402},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6addd6523aea","ts":"2026-09-21T19:01:38.509128+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.7s / 18s","plan":{"state":"PASS","setup":"","stop":8.5787,"target":8.745,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":125.8,"room_to_5d_high_atr":-0.81},"price":8.6806,"vwap":8.6443,"ext_from_open_pct":0.7,"max_ext_allowed_pct":4.0,"volume_pace":0.658,"trend":"flat","recent_slope_pct":0.0184,"volatility":"medium"},"price":8.6806,"volume":{"bars":331,"last_bar_volume":1363.0,"baseline_avg":2432.75,"bar_rvol":0.560271,"raw_accel":0.180087,"smooth_accel":-0.717042,"accel_momentum":0.001506,"rvol_3bar":[0.27347,0.435775,0.560271],"trend_3bar":"ACCELERATING","projected_rvol":1.696571},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":1856.0,"sell_vol":487.0,"unclassified_vol":0.0,"imbalance":0.584294,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":2.067556},"context":{"vwap":8.644209,"price_vs_vwap_pct":0.420988,"ema9":8.67235,"ema20":8.673178,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.99163,"dist_to_hod_atr":19.101064,"atr":0.014015,"spread_atr":0.713525,"own_change_pct":0.182412,"rel_strength_pct":{"SPY":0.203073,"IWM":0.170188}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.327363},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bf545affc57f","ts":"2026-09-21T19:01:43.760438+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9523,"target":9.095,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":128.1,"room_to_5d_high_atr":-0.89},"price":9.0388,"vwap":9.0148,"ext_from_open_pct":0.21,"max_ext_allowed_pct":4.0,"volume_pace":0.72,"trend":"flat","recent_slope_pct":-0.0469,"volatility":"medium"},"price":9.0388,"volume":{"bars":331,"last_bar_volume":8376.0,"baseline_avg":9364.1,"bar_rvol":0.89448,"raw_accel":0.025716,"smooth_accel":-0.02638,"accel_momentum":0.129465,"rvol_3bar":[0.777669,0.886082,0.89448],"trend_3bar":"ACCELERATING","projected_rvol":0.809269},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1438.0,"sell_vol":3554.0,"unclassified_vol":0.0,"imbalance":-0.423878,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":1.901522},"context":{"vwap":9.014758,"price_vs_vwap_pct":0.266699,"ema9":9.05589,"ema20":9.061915,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.99782,"dist_to_hod_atr":3.836244,"atr":0.023747,"spread_atr":0.421103,"own_change_pct":-0.331126,"rel_strength_pct":{"SPY":-0.310465,"IWM":-0.34335}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.379151},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4ffff45a04bf","ts":"2026-09-21T19:01:49.075927+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 26.2s, plan says WATCH; stop 8.58, target 8.74 (ceiling), R:R 0.59; R:R 0.59 < 2.0 at 8.69; pullback: buy 8.66-8.68 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5831,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6443,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.658,"trend":"flat","recent_slope_pct":0.0286,"volatility":"medium"},"price":8.685,"volume":{"bars":331,"last_bar_volume":1363.0,"baseline_avg":2432.75,"bar_rvol":0.560271,"raw_accel":0.180087,"smooth_accel":-0.717042,"accel_momentum":0.001506,"rvol_3bar":[0.27347,0.435775,0.560271],"trend_3bar":"ACCELERATING","projected_rvol":1.338812},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":1794.0,"sell_vol":480.0,"unclassified_vol":0.0,"imbalance":0.577836,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":5.296858},"context":{"vwap":8.644209,"price_vs_vwap_pct":0.47189,"ema9":8.67235,"ema20":8.673178,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":18.787113,"atr":0.014015,"spread_atr":0.713525,"own_change_pct":0.182412,"rel_strength_pct":{"SPY":0.203073,"IWM":0.170188}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.323745},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"44b2650c0924","ts":"2026-09-21T19:01:54.234976+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 31.4s, plan says PASS; stop 8.58, target 8.74 (ceiling), R:R 0.63; target 0.06 away > ~0.06 reachable in 53 min","plan":{"state":"PASS","setup":"","stop":8.5792,"target":8.745,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":125.8,"room_to_5d_high_atr":-0.81},"price":8.6811,"vwap":8.6443,"ext_from_open_pct":0.71,"max_ext_allowed_pct":4.0,"volume_pace":0.658,"trend":"flat","recent_slope_pct":0.0196,"volatility":"medium"},"price":8.6811,"volume":{"bars":331,"last_bar_volume":1363.0,"baseline_avg":2432.75,"bar_rvol":0.560271,"raw_accel":0.180087,"smooth_accel":-0.717042,"accel_momentum":0.001506,"rvol_3bar":[0.27347,0.435775,0.560271],"trend_3bar":"ACCELERATING","projected_rvol":1.393814},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":2194.0,"sell_vol":481.0,"unclassified_vol":0.0,"imbalance":0.640374,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":10.455907},"context":{"vwap":8.644209,"price_vs_vwap_pct":0.426773,"ema9":8.67235,"ema20":8.673178,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.986042,"dist_to_hod_atr":19.065388,"atr":0.014015,"spread_atr":0.713525,"own_change_pct":0.182412,"rel_strength_pct":{"SPY":0.203073,"IWM":0.170188}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.358783},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fb9d1d8221af","ts":"2026-09-21T19:02:04.633068+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9385,"target":9.095,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":126.8,"room_to_5d_high_atr":-0.85},"price":9.025,"vwap":9.0148,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.72,"trend":"flat","recent_slope_pct":-0.0816,"volatility":"medium"},"price":9.025,"volume":{"bars":332,"last_bar_volume":8350.0,"baseline_avg":8939.85,"bar_rvol":0.93402,"raw_accel":-0.003104,"smooth_accel":0.287273,"accel_momentum":0.313653,"rvol_3bar":[0.886082,0.89448,0.93402],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":1558.0,"sell_vol":1773.0,"unclassified_vol":0.0,"imbalance":-0.064545,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":12.204293},"context":{"vwap":9.014778,"price_vs_vwap_pct":0.113393,"ema9":9.048712,"ema20":9.057923,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.148972,"dist_to_hod_atr":4.368059,"atr":0.024015,"spread_atr":0.416402,"own_change_pct":-0.613727,"rel_strength_pct":{"SPY":-0.591002,"IWM":-0.631189}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.060286},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"04ebe8d34fd6","ts":"2026-09-21T19:02:04.633068+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 41.8s, plan says WATCH; stop 8.58, target 8.74 (ceiling), R:R 0.59; R:R 0.59 < 2.0 at 8.69; pullback: buy 8.66-8.68 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5831,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6443,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.658,"trend":"flat","recent_slope_pct":0.0331,"volatility":"medium"},"price":8.685,"volume":{"bars":332,"last_bar_volume":3065.0,"baseline_avg":2392.15,"bar_rvol":1.281274,"raw_accel":1.248716,"smooth_accel":-0.474788,"accel_momentum":0.242254,"rvol_3bar":[0.435775,0.560271,1.281274],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":538.0,"sell_vol":16.0,"unclassified_vol":0.0,"imbalance":0.942238,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":4.626981},"context":{"vwap":8.644314,"price_vs_vwap_pct":0.47067,"ema9":8.6741,"ema20":8.673933,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":18.636558,"atr":0.014128,"spread_atr":0.707807,"own_change_pct":0.012673,"rel_strength_pct":{"SPY":0.035398,"IWM":-0.00479}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.207266},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a7d7ce17b781","ts":"2026-09-21T19:02:04.633068+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.754,"target":9.21,"target_label":"prev_day_high","reward_risk":4.16,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8424,"vwap":8.7983,"ext_from_open_pct":3.78,"max_ext_allowed_pct":4.0,"volume_pace":0.45,"trend":"flat","recent_slope_pct":-0.0454,"volatility":"unknown"},"price":8.8424,"volume":{"bars":332,"last_bar_volume":30592.0,"baseline_avg":86647.6,"bar_rvol":0.353062,"raw_accel":-0.509437,"smooth_accel":-0.068962,"accel_momentum":0.475751,"rvol_3bar":[0.21452,0.713303,0.353062],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":7984.0,"sell_vol":10551.0,"unclassified_vol":0.0,"imbalance":-0.138495,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":1.60349},"context":{"vwap":8.798331,"price_vs_vwap_pct":0.500879,"ema9":8.85929,"ema20":8.860422,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.091723,"dist_to_hod_atr":2.479721,"atr":0.039359,"spread_atr":0.25407,"own_change_pct":-0.506472,"rel_strength_pct":{"SPY":-0.483746,"IWM":-0.523934}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.048897},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"30afbb17efa5","ts":"2026-09-21T19:02:15.088180+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 52.2s, plan says PASS; stop 8.58, target 8.74 (ceiling), R:R 0.64; target 0.07 away > ~0.06 reachable in 53 min","plan":{"state":"PASS","setup":"","stop":8.5776,"target":8.745,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":125.7,"room_to_5d_high_atr":-0.81},"price":8.6795,"vwap":8.6443,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.0204,"volatility":"medium"},"price":8.6795,"volume":{"bars":332,"last_bar_volume":3065.0,"baseline_avg":2392.15,"bar_rvol":1.281274,"raw_accel":1.248716,"smooth_accel":-0.474788,"accel_momentum":0.242254,"rvol_3bar":[0.435775,0.560271,1.281274],"trend_3bar":"ACCELERATING","projected_rvol":0.575178},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":663.0,"sell_vol":99.0,"unclassified_vol":0.0,"imbalance":0.740157,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":3.458153},"context":{"vwap":8.644314,"price_vs_vwap_pct":0.407044,"ema9":8.6741,"ema20":8.673933,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-3.003923,"dist_to_hod_atr":19.025851,"atr":0.014128,"spread_atr":0.707807,"own_change_pct":0.012673,"rel_strength_pct":{"SPY":0.035398,"IWM":-0.00479}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.948345},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e162e550d4c1","ts":"2026-09-21T19:02:20.344546+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.806,"target":9.21,"target_label":"prev_day_high","reward_risk":3.54,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8949,"vwap":8.7984,"ext_from_open_pct":4.4,"max_ext_allowed_pct":4.0,"volume_pace":0.45,"trend":"flat","recent_slope_pct":0.0732,"volatility":"unknown"},"price":8.8949,"volume":{"bars":332,"last_bar_volume":30592.0,"baseline_avg":86647.6,"bar_rvol":0.353062,"raw_accel":-0.509437,"smooth_accel":-0.068962,"accel_momentum":0.475751,"rvol_3bar":[0.21452,0.713303,0.353062],"trend_3bar":"MIXED","projected_rvol":0.364498},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":9099.0,"sell_vol":9687.0,"unclassified_vol":0.0,"imbalance":-0.0313,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.305248},"context":{"vwap":8.798331,"price_vs_vwap_pct":1.097583,"ema9":8.85929,"ema20":8.860422,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.504474,"dist_to_hod_atr":1.145855,"atr":0.039359,"spread_atr":0.25407,"own_change_pct":-0.506472,"rel_strength_pct":{"SPY":-0.483746,"IWM":-0.523934}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.011051},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a552d367c1a3","ts":"2026-09-21T19:02:25.622979+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.9633,"target":9.0951,"target_label":"clear air (typical 60-min move)","reward_risk":0.52,"pos_in_5d_range_pct":129.1,"room_to_5d_high_atr":-0.92},"price":9.0498,"vwap":9.0148,"ext_from_open_pct":0.33,"max_ext_allowed_pct":3.0,"volume_pace":0.719,"trend":"flat","recent_slope_pct":-0.0267,"volatility":"medium"},"price":9.0498,"volume":{"bars":332,"last_bar_volume":8350.0,"baseline_avg":8939.85,"bar_rvol":0.93402,"raw_accel":-0.003104,"smooth_accel":0.287273,"accel_momentum":0.313653,"rvol_3bar":[0.886082,0.89448,0.93402],"trend_3bar":"ACCELERATING","projected_rvol":0.373256},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":416.0,"sell_vol":1110.0,"unclassified_vol":0.0,"imbalance":-0.454784,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":1.435229},"context":{"vwap":9.014778,"price_vs_vwap_pct":0.388497,"ema9":9.048712,"ema20":9.057923,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.877337,"dist_to_hod_atr":3.335381,"atr":0.024015,"spread_atr":0.416402,"own_change_pct":-0.613727,"rel_strength_pct":{"SPY":-0.591002,"IWM":-0.631189}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.424777},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9a988c9c2a8f","ts":"2026-09-21T19:02:25.622979+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 62.8s, plan says WATCH; stop 8.58, target 8.74 (ceiling), R:R 0.59; R:R 0.59 < 2.0 at 8.69; pullback: buy 8.66-8.68 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5831,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6443,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.0331,"volatility":"medium"},"price":8.685,"volume":{"bars":332,"last_bar_volume":3065.0,"baseline_avg":2392.15,"bar_rvol":1.281274,"raw_accel":1.248716,"smooth_accel":-0.474788,"accel_momentum":0.242254,"rvol_3bar":[0.435775,0.560271,1.281274],"trend_3bar":"ACCELERATING","projected_rvol":0.349463},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":252.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":0.411765,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":1.171651},"context":{"vwap":8.644314,"price_vs_vwap_pct":0.47067,"ema9":8.6741,"ema20":8.673933,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":18.636558,"atr":0.014128,"spread_atr":0.707807,"own_change_pct":0.012673,"rel_strength_pct":{"SPY":0.035398,"IWM":-0.00479}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.527583},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a2f1ff2996a0","ts":"2026-09-21T19:02:25.622979+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":9.21,"target_label":"prev_day_high","reward_risk":4.24,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7984,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":0.45,"trend":"flat","recent_slope_pct":-0.0622,"volatility":"unknown"},"price":8.835,"volume":{"bars":332,"last_bar_volume":30592.0,"baseline_avg":86647.6,"bar_rvol":0.353062,"raw_accel":-0.509437,"smooth_accel":-0.068962,"accel_momentum":0.475751,"rvol_3bar":[0.21452,0.713303,0.353062],"trend_3bar":"MIXED","projected_rvol":0.637897},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":10790.0,"sell_vol":20803.0,"unclassified_vol":0.0,"imbalance":-0.316937,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.531163},"context":{"vwap":8.798331,"price_vs_vwap_pct":0.416772,"ema9":8.85929,"ema20":8.860422,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":2.667733,"atr":0.039359,"spread_atr":0.25407,"own_change_pct":-0.506472,"rel_strength_pct":{"SPY":-0.483746,"IWM":-0.523934}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.111899},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b65569a9becf","ts":"2026-09-21T19:02:30.837922+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9493,"target":9.095,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":127.8,"room_to_5d_high_atr":-0.88},"price":9.0358,"vwap":9.0148,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.719,"trend":"flat","recent_slope_pct":-0.0576,"volatility":"medium"},"price":9.0358,"volume":{"bars":332,"last_bar_volume":8350.0,"baseline_avg":8939.85,"bar_rvol":0.93402,"raw_accel":-0.003104,"smooth_accel":0.287273,"accel_momentum":0.313653,"rvol_3bar":[0.886082,0.89448,0.93402],"trend_3bar":"ACCELERATING","projected_rvol":0.356274},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":426.0,"sell_vol":1125.0,"unclassified_vol":0.0,"imbalance":-0.450677,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.935686},"context":{"vwap":9.014778,"price_vs_vwap_pct":0.233197,"ema9":9.048712,"ema20":9.057923,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.030679,"dist_to_hod_atr":3.918344,"atr":0.024015,"spread_atr":0.416402,"own_change_pct":-0.613727,"rel_strength_pct":{"SPY":-0.591002,"IWM":-0.631189}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.420941},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8092ae50e38f","ts":"2026-09-21T19:03:07.227557+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 104.4s, plan says PASS; stop 8.58, target 8.74 (ceiling), R:R 0.61; target 0.06 away > ~0.06 reachable in 52 min","plan":{"state":"PASS","setup":"","stop":8.5805,"target":8.745,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":125.9,"room_to_5d_high_atr":-0.82},"price":8.6824,"vwap":8.6443,"ext_from_open_pct":0.72,"max_ext_allowed_pct":3.0,"volume_pace":0.656,"trend":"flat","recent_slope_pct":0.0211,"volatility":"medium"},"price":8.6824,"volume":{"bars":333,"last_bar_volume":428.0,"baseline_avg":2337.85,"bar_rvol":0.183074,"raw_accel":-0.860359,"smooth_accel":0.613825,"accel_momentum":1.088614,"rvol_3bar":[0.560271,1.281274,0.183074],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":59.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":0.404762,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":15.517053},"context":{"vwap":8.64433,"price_vs_vwap_pct":0.440409,"ema9":8.67628,"ema20":8.674987,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.971514,"dist_to_hod_atr":19.172265,"atr":0.013869,"spread_atr":0.721033,"own_change_pct":0.115274,"rel_strength_pct":{"SPY":0.119148,"IWM":0.085588}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.074101},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"14c9b193ffbc","ts":"2026-09-21T19:03:12.385438+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.8034,"target":9.21,"target_label":"prev_day_high","reward_risk":3.57,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8923,"vwap":8.7984,"ext_from_open_pct":4.37,"max_ext_allowed_pct":4.0,"volume_pace":0.449,"trend":"flat","recent_slope_pct":0.0862,"volatility":"unknown"},"price":8.8923,"volume":{"bars":333,"last_bar_volume":28362.0,"baseline_avg":83035.55,"bar_rvol":0.341565,"raw_accel":-0.072895,"smooth_accel":0.799445,"accel_momentum":0.868407,"rvol_3bar":[0.713303,0.353062,0.341565],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":2753.0,"sell_vol":1920.0,"unclassified_vol":0.0,"imbalance":0.178258,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.354738},"context":{"vwap":8.798394,"price_vs_vwap_pct":1.067304,"ema9":8.854432,"ema20":8.858001,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.533557,"dist_to_hod_atr":1.157626,"atr":0.041205,"spread_atr":0.242689,"own_change_pct":-0.513479,"rel_strength_pct":{"SPY":-0.509605,"IWM":-0.543164}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.060887},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"36ec13850c98","ts":"2026-09-21T19:03:17.532942+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7516,"target":9.21,"target_label":"prev_day_high","reward_risk":4.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.84,"vwap":8.7984,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":0.449,"trend":"flat","recent_slope_pct":-0.032,"volatility":"unknown"},"price":8.84,"volume":{"bars":333,"last_bar_volume":28362.0,"baseline_avg":83035.55,"bar_rvol":0.341565,"raw_accel":-0.072895,"smooth_accel":0.799445,"accel_momentum":0.868407,"rvol_3bar":[0.713303,0.353062,0.341565],"trend_3bar":"DECELERATING","projected_rvol":0.10839},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":2681.0,"sell_vol":1786.0,"unclassified_vol":0.0,"imbalance":0.200358,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.896005},"context":{"vwap":8.798394,"price_vs_vwap_pct":0.472878,"ema9":8.854432,"ema20":8.858001,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.118568,"dist_to_hod_atr":2.426888,"atr":0.041205,"spread_atr":0.242689,"own_change_pct":-0.513479,"rel_strength_pct":{"SPY":-0.509605,"IWM":-0.543164}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.068435},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"7c5b90c203a6","ts":"2026-09-21T19:03:22.668286+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 119.8s, plan says WATCH; stop 8.58, target 8.74 (ceiling), R:R 0.59; R:R 0.59 < 2.0 at 8.69; pullback: buy 8.66-8.68 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5831,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6443,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.655,"trend":"flat","recent_slope_pct":0.0271,"volatility":"medium"},"price":8.685,"volume":{"bars":333,"last_bar_volume":428.0,"baseline_avg":2337.85,"bar_rvol":0.183074,"raw_accel":-0.860359,"smooth_accel":0.613825,"accel_momentum":1.088614,"rvol_3bar":[0.560271,1.281274,0.183074],"trend_3bar":"MIXED","projected_rvol":0.084914},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":95.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":0.583333,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":30.957782},"context":{"vwap":8.64433,"price_vs_vwap_pct":0.470487,"ema9":8.67628,"ema20":8.674987,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":18.984797,"atr":0.013869,"spread_atr":0.721033,"own_change_pct":0.115274,"rel_strength_pct":{"SPY":0.119148,"IWM":0.085588}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.106793},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b26bc7b36aa4","ts":"2026-09-21T19:03:33.157388+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 130.3s, plan says PASS; stop 8.57, target 8.74 (ceiling), R:R 0.68; target 0.07 away > ~0.06 reachable in 51 min","plan":{"state":"PASS","setup":"","stop":8.5733,"target":8.745,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":125.3,"room_to_5d_high_atr":-0.8},"price":8.6752,"vwap":8.6443,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.655,"trend":"flat","recent_slope_pct":0.0045,"volatility":"medium"},"price":8.6752,"volume":{"bars":333,"last_bar_volume":428.0,"baseline_avg":2337.85,"bar_rvol":0.183074,"raw_accel":-0.860359,"smooth_accel":0.613825,"accel_momentum":1.088614,"rvol_3bar":[0.560271,1.281274,0.183074],"trend_3bar":"MIXED","projected_rvol":0.102945},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":43.0,"sell_vol":58.0,"unclassified_vol":0.0,"imbalance":-0.148515,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":41.446884},"context":{"vwap":8.64433,"price_vs_vwap_pct":0.357118,"ema9":8.67628,"ema20":8.674987,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-3.051976,"dist_to_hod_atr":19.691409,"atr":0.013869,"spread_atr":0.721033,"own_change_pct":0.115274,"rel_strength_pct":{"SPY":0.119148,"IWM":0.085588}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.027189},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"51b69962b436","ts":"2026-09-21T19:03:33.157388+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7557,"target":9.21,"target_label":"prev_day_high","reward_risk":4.14,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8441,"vwap":8.7984,"ext_from_open_pct":3.8,"max_ext_allowed_pct":3.0,"volume_pace":0.449,"trend":"flat","recent_slope_pct":-0.0227,"volatility":"unknown"},"price":8.8441,"volume":{"bars":333,"last_bar_volume":28362.0,"baseline_avg":83035.55,"bar_rvol":0.341565,"raw_accel":-0.072895,"smooth_accel":0.799445,"accel_momentum":0.868407,"rvol_3bar":[0.713303,0.353062,0.341565],"trend_3bar":"DECELERATING","projected_rvol":0.367966},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":4343.0,"sell_vol":11940.0,"unclassified_vol":0.0,"imbalance":-0.46656,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":2.12975},"context":{"vwap":8.798394,"price_vs_vwap_pct":0.519477,"ema9":8.854432,"ema20":8.858001,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.072707,"dist_to_hod_atr":2.327386,"atr":0.041205,"spread_atr":0.242689,"own_change_pct":-0.513479,"rel_strength_pct":{"SPY":-0.509605,"IWM":-0.543164}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.15936},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"9cc090daef12","ts":"2026-09-21T19:03:38.337447+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 135.5s, plan says WATCH; stop 8.58, target 8.74 (ceiling), R:R 0.59; R:R 0.59 < 2.0 at 8.69; pullback: buy 8.66-8.68 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5831,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.685,"vwap":8.6443,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.655,"trend":"flat","recent_slope_pct":0.0271,"volatility":"medium"},"price":8.685,"volume":{"bars":333,"last_bar_volume":428.0,"baseline_avg":2337.85,"bar_rvol":0.183074,"raw_accel":-0.860359,"smooth_accel":0.613825,"accel_momentum":1.088614,"rvol_3bar":[0.560271,1.281274,0.183074],"trend_3bar":"MIXED","projected_rvol":0.102424},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":63.0,"sell_vol":58.0,"unclassified_vol":0.0,"imbalance":0.041322,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":46.626943},"context":{"vwap":8.64433,"price_vs_vwap_pct":0.470487,"ema9":8.67628,"ema20":8.674987,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.942458,"dist_to_hod_atr":18.984797,"atr":0.013869,"spread_atr":0.721033,"own_change_pct":0.115274,"rel_strength_pct":{"SPY":0.119148,"IWM":0.085588}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.007565},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"31efdedab821","ts":"2026-09-21T19:03:43.533526+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 140.7s, plan says PASS; stop 8.58, target 8.74 (ceiling), R:R 0.63; target 0.06 away > ~0.06 reachable in 51 min","plan":{"state":"PASS","setup":"","stop":8.5787,"target":8.745,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":125.8,"room_to_5d_high_atr":-0.81},"price":8.6806,"vwap":8.6443,"ext_from_open_pct":0.7,"max_ext_allowed_pct":3.0,"volume_pace":0.655,"trend":"flat","recent_slope_pct":0.0169,"volatility":"medium"},"price":8.6806,"volume":{"bars":333,"last_bar_volume":428.0,"baseline_avg":2337.85,"bar_rvol":0.183074,"raw_accel":-0.860359,"smooth_accel":0.613825,"accel_momentum":1.088614,"rvol_3bar":[0.560271,1.281274,0.183074],"trend_3bar":"MIXED","projected_rvol":0.149153},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":56.0,"sell_vol":158.0,"unclassified_vol":0.0,"imbalance":-0.476636,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":0.997503},"context":{"vwap":8.64433,"price_vs_vwap_pct":0.419586,"ema9":8.67628,"ema20":8.674987,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.99163,"dist_to_hod_atr":19.302051,"atr":0.013869,"spread_atr":0.721033,"own_change_pct":0.115274,"rel_strength_pct":{"SPY":0.119148,"IWM":0.085588}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.08726},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6475736e98c0","ts":"2026-09-21T19:03:59.075332+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 156.2s, plan says WATCH; stop 8.59, target 8.74 (ceiling), R:R 0.54; R:R 0.54 < 2.0 at 8.69; pullback: buy 8.66-8.68 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5881,"target":8.745,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.83},"price":8.69,"vwap":8.6443,"ext_from_open_pct":0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.654,"trend":"flat","recent_slope_pct":0.0386,"volatility":"medium"},"price":8.69,"volume":{"bars":333,"last_bar_volume":428.0,"baseline_avg":2337.85,"bar_rvol":0.183074,"raw_accel":-0.860359,"smooth_accel":0.613825,"accel_momentum":1.088614,"rvol_3bar":[0.560271,1.281274,0.183074],"trend_3bar":"MIXED","projected_rvol":0.124249},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":53.0,"sell_vol":158.0,"unclassified_vol":0.0,"imbalance":-0.49763,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":12.526541},"context":{"vwap":8.64433,"price_vs_vwap_pct":0.528328,"ema9":8.67628,"ema20":8.674987,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.886582,"dist_to_hod_atr":18.62428,"atr":0.013869,"spread_atr":0.721033,"own_change_pct":0.115274,"rel_strength_pct":{"SPY":0.119148,"IWM":0.085588}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.091103},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d90f9783ae82","ts":"2026-09-21T19:04:04.288115+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 161.4s, plan says PASS; stop 8.58, target 8.74 (ceiling), R:R 0.59; target 0.06 away > ~0.06 reachable in 51 min","plan":{"state":"PASS","setup":"","stop":8.5828,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.6847,"vwap":8.6444,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.655,"trend":"flat","recent_slope_pct":0.0161,"volatility":"medium"},"price":8.6847,"volume":{"bars":334,"last_bar_volume":986.0,"baseline_avg":2341.35,"bar_rvol":0.421125,"raw_accel":0.684498,"smooth_accel":0.381981,"accel_momentum":-0.231844,"rvol_3bar":[1.281274,0.183074,0.421125],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":60.0,"sell_vol":800.0,"unclassified_vol":0.0,"imbalance":-0.860465,"bid":8.68,"ask":8.69,"spread_pct":0.115141,"quote_size_imbalance":null,"quote_age_s":17.739324},"context":{"vwap":8.644363,"price_vs_vwap_pct":0.466624,"ema9":8.677164,"ema20":8.675531,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.945811,"dist_to_hod_atr":18.915728,"atr":0.013935,"spread_atr":0.717592,"own_change_pct":0.092243,"rel_strength_pct":{"SPY":0.090306,"IWM":0.064306}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.362363},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b71690079a8d","ts":"2026-09-21T19:04:14.714885+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 171.9s, plan says WATCH; stop 8.59, target 8.74 (ceiling), R:R 0.54; R:R 0.54 < 2.0 at 8.69; pullback: buy 8.66-8.68 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5881,"target":8.745,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.83},"price":8.69,"vwap":8.6444,"ext_from_open_pct":0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.655,"trend":"flat","recent_slope_pct":0.0283,"volatility":"medium"},"price":8.69,"volume":{"bars":334,"last_bar_volume":986.0,"baseline_avg":2341.35,"bar_rvol":0.421125,"raw_accel":0.684498,"smooth_accel":0.381981,"accel_momentum":-0.231844,"rvol_3bar":[1.281274,0.183074,0.421125],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1242.0,"sell_vol":1401.0,"unclassified_vol":0.0,"imbalance":-0.060159,"bid":8.68,"ask":8.7,"spread_pct":0.23015,"quote_size_imbalance":null,"quote_age_s":0.811338},"context":{"vwap":8.644363,"price_vs_vwap_pct":0.527936,"ema9":8.677164,"ema20":8.675531,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.886582,"dist_to_hod_atr":18.535405,"atr":0.013935,"spread_atr":1.435184,"own_change_pct":0.092243,"rel_strength_pct":{"SPY":0.090306,"IWM":0.064306}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.025334},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4198916fd290","ts":"2026-09-21T19:04:30.207633+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":9.21,"target_label":"prev_day_high","reward_risk":4.13,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7986,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.448,"trend":"flat","recent_slope_pct":0.0321,"volatility":"unknown"},"price":8.845,"volume":{"bars":334,"last_bar_volume":68773.0,"baseline_avg":82238.45,"bar_rvol":0.836263,"raw_accel":1.424829,"smooth_accel":0.189741,"accel_momentum":-0.609704,"rvol_3bar":[0.353062,0.341565,0.836263],"trend_3bar":"MIXED","projected_rvol":0.081804},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2680.0,"sell_vol":707.0,"unclassified_vol":0.0,"imbalance":0.582521,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.010604},"context":{"vwap":8.798554,"price_vs_vwap_pct":0.527883,"ema9":8.852546,"ema20":8.856763,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":2.224209,"atr":0.042712,"spread_atr":0.234127,"own_change_pct":-0.112931,"rel_strength_pct":{"SPY":-0.114868,"IWM":-0.140868}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.487141},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c1f0642c11ec","ts":"2026-09-21T19:04:35.470756+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.9575,"target":9.089,"target_label":"clear air (typical 60-min move)","reward_risk":0.52,"pos_in_5d_range_pct":128.5,"room_to_5d_high_atr":-0.91},"price":9.044,"vwap":9.0148,"ext_from_open_pct":0.27,"max_ext_allowed_pct":4.0,"volume_pace":0.716,"trend":"flat","recent_slope_pct":0.0421,"volatility":"medium"},"price":9.044,"volume":{"bars":334,"last_bar_volume":2093.0,"baseline_avg":9314.15,"bar_rvol":0.224712,"raw_accel":-0.811848,"smooth_accel":-0.089808,"accel_momentum":-0.406468,"rvol_3bar":[0.93402,1.232528,0.224712],"trend_3bar":"MIXED","projected_rvol":0.428053},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":2044.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.998045,"bid":9.02,"ask":9.03,"spread_pct":0.110803,"quote_size_imbalance":null,"quote_age_s":0.613595},"context":{"vwap":9.014818,"price_vs_vwap_pct":0.323707,"ema9":9.041976,"ema20":9.052857,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.940865,"dist_to_hod_atr":3.496456,"atr":0.024568,"spread_atr":0.407038,"own_change_pct":-0.110619,"rel_strength_pct":{"SPY":-0.112557,"IWM":-0.138557}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.224273},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"989ba9ed4c06","ts":"2026-09-21T19:04:35.470756+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 192.6s, plan says PASS; stop 8.58, target 8.74 (ceiling), R:R 0.59; target 0.06 away > ~0.06 reachable in 50 min","plan":{"state":"PASS","setup":"","stop":8.5828,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.6847,"vwap":8.6445,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.655,"trend":"flat","recent_slope_pct":0.0161,"volatility":"medium"},"price":8.6847,"volume":{"bars":334,"last_bar_volume":986.0,"baseline_avg":2341.35,"bar_rvol":0.421125,"raw_accel":0.684498,"smooth_accel":0.381981,"accel_momentum":-0.231844,"rvol_3bar":[1.281274,0.183074,0.421125],"trend_3bar":"MIXED","projected_rvol":1.887068},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":1390.0,"sell_vol":1215.0,"unclassified_vol":0.0,"imbalance":0.067179,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":4.544303},"context":{"vwap":8.644363,"price_vs_vwap_pct":0.466624,"ema9":8.677164,"ema20":8.675531,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.945811,"dist_to_hod_atr":18.915728,"atr":0.013935,"spread_atr":0.717592,"own_change_pct":0.092243,"rel_strength_pct":{"SPY":0.090306,"IWM":0.064306}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.028291},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0dc5fb9a2c0b","ts":"2026-09-21T19:04:35.470756+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7615,"target":9.21,"target_label":"prev_day_high","reward_risk":4.07,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.85,"vwap":8.7986,"ext_from_open_pct":3.87,"max_ext_allowed_pct":3.0,"volume_pace":0.448,"trend":"flat","recent_slope_pct":0.0434,"volatility":"unknown"},"price":8.85,"volume":{"bars":334,"last_bar_volume":68773.0,"baseline_avg":82238.45,"bar_rvol":0.836263,"raw_accel":1.424829,"smooth_accel":0.189741,"accel_momentum":-0.609704,"rvol_3bar":[0.353062,0.341565,0.836263],"trend_3bar":"MIXED","projected_rvol":0.116275},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":3097.0,"sell_vol":2411.0,"unclassified_vol":0.0,"imbalance":0.124546,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":2.658161},"context":{"vwap":8.798554,"price_vs_vwap_pct":0.58471,"ema9":8.852546,"ema20":8.856763,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.006711,"dist_to_hod_atr":2.107145,"atr":0.042712,"spread_atr":0.234127,"own_change_pct":-0.112931,"rel_strength_pct":{"SPY":-0.114868,"IWM":-0.140868}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.104153},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3c7e4be9445e","ts":"2026-09-21T19:04:40.692668+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9408,"target":9.095,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.86},"price":9.0273,"vwap":9.0149,"ext_from_open_pct":0.08,"max_ext_allowed_pct":4.0,"volume_pace":0.717,"trend":"flat","recent_slope_pct":0.0051,"volatility":"medium"},"price":9.0273,"volume":{"bars":334,"last_bar_volume":2093.0,"baseline_avg":9314.15,"bar_rvol":0.224712,"raw_accel":-0.811848,"smooth_accel":-0.089808,"accel_momentum":-0.406468,"rvol_3bar":[0.93402,1.232528,0.224712],"trend_3bar":"MIXED","projected_rvol":2.124123},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":6121.0,"sell_vol":5985.0,"unclassified_vol":0.0,"imbalance":0.011234,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":1.782463},"context":{"vwap":9.014818,"price_vs_vwap_pct":0.138457,"ema9":9.041976,"ema20":9.052857,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.12378,"dist_to_hod_atr":4.176209,"atr":0.024568,"spread_atr":0.407038,"own_change_pct":-0.110619,"rel_strength_pct":{"SPY":-0.112557,"IWM":-0.138557}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.002524},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6e30abf3fd18","ts":"2026-09-21T19:04:51.008814+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.9551,"target":9.0866,"target_label":"clear air (typical 60-min move)","reward_risk":0.52,"pos_in_5d_range_pct":128.3,"room_to_5d_high_atr":-0.9},"price":9.0416,"vwap":9.0149,"ext_from_open_pct":0.24,"max_ext_allowed_pct":4.0,"volume_pace":0.717,"trend":"flat","recent_slope_pct":0.0368,"volatility":"medium"},"price":9.0416,"volume":{"bars":334,"last_bar_volume":2093.0,"baseline_avg":9314.15,"bar_rvol":0.224712,"raw_accel":-0.811848,"smooth_accel":-0.089808,"accel_momentum":-0.406468,"rvol_3bar":[0.93402,1.232528,0.224712],"trend_3bar":"MIXED","projected_rvol":1.732422},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":6154.0,"sell_vol":5991.0,"unclassified_vol":0.0,"imbalance":0.013421,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":4.426427},"context":{"vwap":9.014818,"price_vs_vwap_pct":0.297085,"ema9":9.041976,"ema20":9.052857,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.967152,"dist_to_hod_atr":3.594145,"atr":0.024568,"spread_atr":0.407038,"own_change_pct":-0.110619,"rel_strength_pct":{"SPY":-0.112557,"IWM":-0.138557}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.003016},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4077f79f894a","ts":"2026-09-21T19:04:56.165849+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.941,"target":9.095,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":127.0,"room_to_5d_high_atr":-0.86},"price":9.0275,"vwap":9.0149,"ext_from_open_pct":0.08,"max_ext_allowed_pct":4.0,"volume_pace":0.717,"trend":"flat","recent_slope_pct":0.0055,"volatility":"medium"},"price":9.0275,"volume":{"bars":334,"last_bar_volume":2093.0,"baseline_avg":9314.15,"bar_rvol":0.224712,"raw_accel":-0.811848,"smooth_accel":-0.089808,"accel_momentum":-0.406468,"rvol_3bar":[0.93402,1.232528,0.224712],"trend_3bar":"MIXED","projected_rvol":1.585282},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":6127.0,"sell_vol":6021.0,"unclassified_vol":0.0,"imbalance":0.008726,"bid":9.03,"ask":9.04,"spread_pct":0.110681,"quote_size_imbalance":null,"quote_age_s":9.583462},"context":{"vwap":9.014818,"price_vs_vwap_pct":0.140675,"ema9":9.041976,"ema20":9.052857,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.12159,"dist_to_hod_atr":4.168068,"atr":0.024568,"spread_atr":0.407038,"own_change_pct":-0.110619,"rel_strength_pct":{"SPY":-0.112557,"IWM":-0.138557}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.001961},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"483dac300d75","ts":"2026-09-21T19:04:56.165849+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7615,"target":9.21,"target_label":"prev_day_high","reward_risk":4.07,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.85,"vwap":8.7986,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":0.448,"trend":"flat","recent_slope_pct":0.0434,"volatility":"unknown"},"price":8.85,"volume":{"bars":334,"last_bar_volume":68773.0,"baseline_avg":82238.45,"bar_rvol":0.836263,"raw_accel":1.424829,"smooth_accel":0.189741,"accel_momentum":-0.609704,"rvol_3bar":[0.353062,0.341565,0.836263],"trend_3bar":"MIXED","projected_rvol":0.099749},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":3725.0,"sell_vol":2308.0,"unclassified_vol":0.0,"imbalance":0.234875,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.1103},"context":{"vwap":8.798554,"price_vs_vwap_pct":0.58471,"ema9":8.852546,"ema20":8.856763,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.006711,"dist_to_hod_atr":2.107145,"atr":0.042712,"spread_atr":0.234127,"own_change_pct":-0.112931,"rel_strength_pct":{"SPY":-0.114868,"IWM":-0.140868}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.196417},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d439ac31f4c8","ts":"2026-09-21T19:05:06.629146+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4817,"target":6.76,"target_label":"ceiling","reward_risk":0.7,"pos_in_5d_range_pct":112.8,"room_to_5d_high_atr":-0.34},"price":6.645,"vwap":6.5921,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.437,"trend":"flat","recent_slope_pct":-0.0607,"volatility":"high"},"price":6.645,"volume":{"bars":331,"last_bar_volume":664.0,"baseline_avg":1673.7,"bar_rvol":0.396726,"raw_accel":0.586903,"smooth_accel":-0.478721,"accel_momentum":-0.75733,"rvol_3bar":[2.060135,0.012413,0.396726],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":0.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.63,"ask":6.66,"spread_pct":0.451467,"quote_size_imbalance":null,"quote_age_s":1.480542},"context":{"vwap":6.592062,"price_vs_vwap_pct":0.80306,"ema9":6.666064,"ema20":6.669166,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.25072,"dist_to_hod_atr":18.342947,"atr":0.016082,"spread_atr":1.865384,"own_change_pct":-0.271442,"rel_strength_pct":{"SPY":-0.254006,"IWM":-0.313356}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.396726},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"850a08362113","ts":"2026-09-21T19:05:06.629146+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 223.8s, plan says WATCH; stop 8.59, target 8.74 (ceiling), R:R 0.55; R:R 0.55 < 2.0 at 8.69; pullback: buy 8.66-8.68 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5873,"target":8.745,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.83},"price":8.6892,"vwap":8.6445,"ext_from_open_pct":0.8,"max_ext_allowed_pct":3.0,"volume_pace":0.654,"trend":"flat","recent_slope_pct":0.0098,"volatility":"medium"},"price":8.6892,"volume":{"bars":335,"last_bar_volume":3087.0,"baseline_avg":2382.15,"bar_rvol":1.295888,"raw_accel":2.130832,"smooth_accel":-0.193803,"accel_momentum":-0.575783,"rvol_3bar":[0.183074,0.421125,1.295888],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":74.0,"sell_vol":419.0,"unclassified_vol":0.0,"imbalance":-0.699797,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":6.470825},"context":{"vwap":8.644477,"price_vs_vwap_pct":0.517364,"ema9":8.677191,"ema20":8.675699,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.895522,"dist_to_hod_atr":17.793461,"atr":0.014562,"spread_atr":0.686741,"own_change_pct":0.003457,"rel_strength_pct":{"SPY":0.020893,"IWM":-0.038457}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.906859},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"557e1c00879d","ts":"2026-09-21T19:05:11.839507+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 229.0s, plan says PASS; stop 8.58, target 8.74 (ceiling), R:R 0.59; target 0.06 away > ~0.06 reachable in 50 min","plan":{"state":"PASS","setup":"","stop":8.5828,"target":8.745,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.82},"price":8.6847,"vwap":8.6445,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.654,"trend":"flat","recent_slope_pct":-0.0006,"volatility":"medium"},"price":8.6847,"volume":{"bars":335,"last_bar_volume":3087.0,"baseline_avg":2382.15,"bar_rvol":1.295888,"raw_accel":2.130832,"smooth_accel":-0.193803,"accel_momentum":-0.575783,"rvol_3bar":[0.183074,0.421125,1.295888],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":37.0,"sell_vol":176.0,"unclassified_vol":0.0,"imbalance":-0.652582,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":1.77192},"context":{"vwap":8.644477,"price_vs_vwap_pct":0.465307,"ema9":8.677191,"ema20":8.675699,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.945811,"dist_to_hod_atr":18.102494,"atr":0.014562,"spread_atr":0.686741,"own_change_pct":0.003457,"rel_strength_pct":{"SPY":0.020893,"IWM":-0.038457}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.845673},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f72f09e4b825","ts":"2026-09-21T19:05:17.073545+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 234.2s, plan says WATCH; stop 8.59, target 8.74 (ceiling), R:R 0.54; R:R 0.54 < 2.0 at 8.69; pullback: buy 8.66-8.68 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5879,"target":8.745,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.83},"price":8.6898,"vwap":8.6445,"ext_from_open_pct":0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.654,"trend":"flat","recent_slope_pct":0.0112,"volatility":"medium"},"price":8.6898,"volume":{"bars":335,"last_bar_volume":3087.0,"baseline_avg":2382.15,"bar_rvol":1.295888,"raw_accel":2.130832,"smooth_accel":-0.193803,"accel_momentum":-0.575783,"rvol_3bar":[0.183074,0.421125,1.295888],"trend_3bar":"ACCELERATING","projected_rvol":0.203581},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":37.0,"sell_vol":183.0,"unclassified_vol":0.0,"imbalance":-0.663636,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":3.24085},"context":{"vwap":8.644477,"price_vs_vwap_pct":0.524305,"ema9":8.677191,"ema20":8.675699,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.888817,"dist_to_hod_atr":17.752256,"atr":0.014562,"spread_atr":0.686741,"own_change_pct":0.003457,"rel_strength_pct":{"SPY":0.020893,"IWM":-0.038457}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.859999},"shadow":{"decision":"FAIL","failed":["vas","imbalance","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fcbf3489d018","ts":"2026-09-21T19:05:37.842960+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 255.0s, plan says PASS; stop 8.59, target 8.76 (premarket_high), R:R 0.64; target 0.06 away > ~0.06 reachable in 49 min","plan":{"state":"PASS","setup":"","stop":8.5931,"target":8.76,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.85},"price":8.695,"vwap":8.6445,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":0.653,"trend":"flat","recent_slope_pct":0.0231,"volatility":"medium"},"price":8.695,"volume":{"bars":335,"last_bar_volume":3087.0,"baseline_avg":2382.15,"bar_rvol":1.295888,"raw_accel":2.130832,"smooth_accel":-0.193803,"accel_momentum":-0.575783,"rvol_3bar":[0.183074,0.421125,1.295888],"trend_3bar":"ACCELERATING","projected_rvol":0.159072},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":113.0,"sell_vol":24.0,"unclassified_vol":0.0,"imbalance":0.649635,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":0.650008},"context":{"vwap":8.644477,"price_vs_vwap_pct":0.584459,"ema9":8.677191,"ema20":8.675699,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.830705,"dist_to_hod_atr":17.395151,"atr":0.014562,"spread_atr":0.686741,"own_change_pct":0.003457,"rel_strength_pct":{"SPY":0.020893,"IWM":-0.038457}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.841854},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f07a8a7e89b8","ts":"2026-09-21T19:05:43.017563+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $6.39 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":6.4972,"target":6.76,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":113.7,"room_to_5d_high_atr":-0.37},"price":6.6605,"vwap":6.5921,"ext_from_open_pct":4.23,"max_ext_allowed_pct":4.0,"volume_pace":0.437,"trend":"flat","recent_slope_pct":-0.0141,"volatility":"high"},"price":6.6605,"volume":{"bars":331,"last_bar_volume":664.0,"baseline_avg":1673.7,"bar_rvol":0.396726,"raw_accel":0.586903,"smooth_accel":-0.478721,"accel_momentum":-0.75733,"rvol_3bar":[2.060135,0.012413,0.396726],"trend_3bar":"MIXED","projected_rvol":0.100002},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":17.0,"sell_vol":101.0,"unclassified_vol":0.0,"imbalance":-0.711864,"bid":6.63,"ask":6.66,"spread_pct":0.451467,"quote_size_imbalance":null,"quote_age_s":3.553285},"context":{"vwap":6.592062,"price_vs_vwap_pct":1.038191,"ema9":6.666064,"ema20":6.669166,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.027378,"dist_to_hod_atr":17.379165,"atr":0.016082,"spread_atr":1.865384,"own_change_pct":-0.271442,"rel_strength_pct":{"SPY":-0.254006,"IWM":-0.313356}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.282415},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0d6ce89edebf","ts":"2026-09-21T19:05:48.164320+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7516,"target":9.21,"target_label":"prev_day_high","reward_risk":4.19,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.84,"vwap":8.7986,"ext_from_open_pct":3.76,"max_ext_allowed_pct":3.0,"volume_pace":0.447,"trend":"flat","recent_slope_pct":0.0072,"volatility":"unknown"},"price":8.84,"volume":{"bars":335,"last_bar_volume":7779.0,"baseline_avg":83463.9,"bar_rvol":0.093202,"raw_accel":-0.886889,"smooth_accel":-0.060794,"accel_momentum":-0.250535,"rvol_3bar":[0.341565,0.836263,0.093202],"trend_3bar":"MIXED","projected_rvol":0.405062},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3498.0,"sell_vol":4350.0,"unclassified_vol":0.0,"imbalance":-0.108563,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.042431},"context":{"vwap":8.798572,"price_vs_vwap_pct":0.47085,"ema9":8.850317,"ema20":8.8553,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.118568,"dist_to_hod_atr":2.328469,"atr":0.042947,"spread_atr":0.232847,"own_change_pct":-0.153586,"rel_strength_pct":{"SPY":-0.13615,"IWM":-0.1955}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.010118},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7f674283f5b0","ts":"2026-09-21T19:05:58.577130+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4817,"target":6.76,"target_label":"ceiling","reward_risk":0.7,"pos_in_5d_range_pct":112.8,"room_to_5d_high_atr":-0.34},"price":6.645,"vwap":6.5921,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.436,"trend":"flat","recent_slope_pct":-0.0607,"volatility":"high"},"price":6.645,"volume":{"bars":331,"last_bar_volume":664.0,"baseline_avg":1673.7,"bar_rvol":0.396726,"raw_accel":0.586903,"smooth_accel":-0.478721,"accel_momentum":-0.75733,"rvol_3bar":[2.060135,0.012413,0.396726],"trend_3bar":"MIXED","projected_rvol":0.134638},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":17.0,"sell_vol":201.0,"unclassified_vol":0.0,"imbalance":-0.844037,"bid":6.63,"ask":6.66,"spread_pct":0.451467,"quote_size_imbalance":null,"quote_age_s":4.529311},"context":{"vwap":6.592062,"price_vs_vwap_pct":0.80306,"ema9":6.666064,"ema20":6.669166,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.25072,"dist_to_hod_atr":18.342947,"atr":0.016082,"spread_atr":1.865384,"own_change_pct":-0.271442,"rel_strength_pct":{"SPY":-0.254006,"IWM":-0.313356}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.334851},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"87c62ffcc361","ts":"2026-09-21T19:05:58.577130+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 275.7s, plan says WATCH; stop 8.59, target 8.74 (ceiling), R:R 0.52; R:R 0.52 < 2.0 at 8.69; pullback: buy 8.66-8.68 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5898,"target":8.745,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":126.6,"room_to_5d_high_atr":-0.84},"price":8.6917,"vwap":8.6445,"ext_from_open_pct":0.83,"max_ext_allowed_pct":3.0,"volume_pace":0.653,"trend":"flat","recent_slope_pct":0.0155,"volatility":"medium"},"price":8.6917,"volume":{"bars":335,"last_bar_volume":3087.0,"baseline_avg":2382.15,"bar_rvol":1.295888,"raw_accel":2.130832,"smooth_accel":-0.193803,"accel_momentum":-0.575783,"rvol_3bar":[0.183074,0.421125,1.295888],"trend_3bar":"ACCELERATING","projected_rvol":0.480724},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":650.0,"sell_vol":319.0,"unclassified_vol":0.0,"imbalance":0.341589,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":5.199613},"context":{"vwap":8.644477,"price_vs_vwap_pct":0.546284,"ema9":8.677191,"ema20":8.675699,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.867584,"dist_to_hod_atr":17.621776,"atr":0.014562,"spread_atr":0.686741,"own_change_pct":0.003457,"rel_strength_pct":{"SPY":0.020893,"IWM":-0.038457}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.442661},"shadow":{"decision":"FAIL","failed":["vas","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7238a30b6f9e","ts":"2026-09-21T19:05:58.577130+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":9.21,"target_label":"prev_day_high","reward_risk":4.13,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7987,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.447,"trend":"flat","recent_slope_pct":0.0185,"volatility":"unknown"},"price":8.845,"volume":{"bars":335,"last_bar_volume":7779.0,"baseline_avg":83463.9,"bar_rvol":0.093202,"raw_accel":-0.886889,"smooth_accel":-0.060794,"accel_momentum":-0.250535,"rvol_3bar":[0.341565,0.836263,0.093202],"trend_3bar":"MIXED","projected_rvol":0.489589},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":7296.0,"sell_vol":10535.0,"unclassified_vol":0.0,"imbalance":-0.18165,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.007326},"context":{"vwap":8.798572,"price_vs_vwap_pct":0.527677,"ema9":8.850317,"ema20":8.8553,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":2.212045,"atr":0.042947,"spread_atr":0.232847,"own_change_pct":-0.153586,"rel_strength_pct":{"SPY":-0.13615,"IWM":-0.1955}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.01693},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5841cc5819a8","ts":"2026-09-21T19:06:03.710848+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7764,"target":9.21,"target_label":"prev_day_high","reward_risk":3.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.7987,"ext_from_open_pct":4.05,"max_ext_allowed_pct":4.0,"volume_pace":0.447,"trend":"flat","recent_slope_pct":0.0735,"volatility":"unknown"},"price":8.865,"volume":{"bars":336,"last_bar_volume":39994.0,"baseline_avg":81106.3,"bar_rvol":0.493106,"raw_accel":0.972424,"smooth_accel":-0.039311,"accel_momentum":0.021483,"rvol_3bar":[0.836263,0.093202,0.493106],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":19433.0,"sell_vol":12681.0,"unclassified_vol":0.0,"imbalance":0.210251,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":1.063979},"context":{"vwap":8.798658,"price_vs_vwap_pct":0.754006,"ema9":8.850253,"ema20":8.854795,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.838926,"dist_to_hod_atr":1.80039,"atr":0.041658,"spread_atr":0.240052,"own_change_pct":0.189057,"rel_strength_pct":{"SPY":0.214825,"IWM":0.20128}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.103676},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"525eb06c0b95","ts":"2026-09-21T19:06:08.963486+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 286.1s, plan says PASS; stop 8.59, target 8.74 (ceiling), R:R 0.57; target 0.06 away > ~0.06 reachable in 49 min","plan":{"state":"PASS","setup":"","stop":8.585,"target":8.745,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":126.3,"room_to_5d_high_atr":-0.83},"price":8.6869,"vwap":8.6445,"ext_from_open_pct":0.78,"max_ext_allowed_pct":4.0,"volume_pace":0.653,"trend":"flat","recent_slope_pct":0.017,"volatility":"medium"},"price":8.6869,"volume":{"bars":336,"last_bar_volume":1118.0,"baseline_avg":2222.35,"bar_rvol":0.503071,"raw_accel":-0.637836,"smooth_accel":0.068987,"accel_momentum":0.262789,"rvol_3bar":[0.421125,1.295888,0.503071],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":570.0,"sell_vol":329.0,"unclassified_vol":0.0,"imbalance":0.268076,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":15.585969},"context":{"vwap":8.644525,"price_vs_vwap_pct":0.490197,"ema9":8.680093,"ema20":8.677223,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.921225,"dist_to_hod_atr":17.262274,"atr":0.015143,"spread_atr":0.660378,"own_change_pct":0.163642,"rel_strength_pct":{"SPY":0.189409,"IWM":0.175865}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.134861},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ebfafd940096","ts":"2026-09-21T19:06:14.161383+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":6.4817,"target":6.76,"target_label":"ceiling","reward_risk":0.7,"pos_in_5d_range_pct":112.8,"room_to_5d_high_atr":-0.34},"price":6.645,"vwap":6.5921,"ext_from_open_pct":3.99,"max_ext_allowed_pct":3.0,"volume_pace":0.436,"trend":"flat","recent_slope_pct":-0.0589,"volatility":"high"},"price":6.645,"volume":{"bars":332,"last_bar_volume":220.0,"baseline_avg":1574.35,"bar_rvol":0.13974,"raw_accel":-0.668675,"smooth_accel":-0.879926,"accel_momentum":-0.401205,"rvol_3bar":[0.012413,0.396726,0.13974],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":101.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":6.63,"ask":6.66,"spread_pct":0.451467,"quote_size_imbalance":null,"quote_age_s":0.823513},"context":{"vwap":6.592067,"price_vs_vwap_pct":0.802977,"ema9":6.661852,"ema20":6.666865,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.25072,"dist_to_hod_atr":18.390524,"atr":0.016041,"spread_atr":1.870223,"own_change_pct":-0.34792,"rel_strength_pct":{"SPY":-0.322153,"IWM":-0.335697}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.13974},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c55384265218","ts":"2026-09-21T19:06:14.161383+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7618,"target":9.21,"target_label":"prev_day_high","reward_risk":4.06,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8503,"vwap":8.7987,"ext_from_open_pct":3.88,"max_ext_allowed_pct":4.0,"volume_pace":0.447,"trend":"flat","recent_slope_pct":0.0403,"volatility":"unknown"},"price":8.8503,"volume":{"bars":336,"last_bar_volume":39994.0,"baseline_avg":81106.3,"bar_rvol":0.493106,"raw_accel":0.972424,"smooth_accel":-0.039311,"accel_momentum":0.021483,"rvol_3bar":[0.836263,0.093202,0.493106],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":139,"trade_rate":4.633333,"buy_vol":21664.0,"sell_vol":13005.0,"unclassified_vol":0.0,"imbalance":0.249762,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":1.080156},"context":{"vwap":8.798658,"price_vs_vwap_pct":0.586935,"ema9":8.850253,"ema20":8.854795,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.003356,"dist_to_hod_atr":2.153267,"atr":0.041658,"spread_atr":0.240052,"own_change_pct":0.189057,"rel_strength_pct":{"SPY":0.214825,"IWM":0.20128}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.123159},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1fa92477ab1e","ts":"2026-09-21T19:06:19.357442+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7764,"target":9.21,"target_label":"prev_day_high","reward_risk":3.89,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.7988,"ext_from_open_pct":4.05,"max_ext_allowed_pct":3.0,"volume_pace":0.448,"trend":"flat","recent_slope_pct":0.0735,"volatility":"unknown"},"price":8.865,"volume":{"bars":336,"last_bar_volume":39994.0,"baseline_avg":81106.3,"bar_rvol":0.493106,"raw_accel":0.972424,"smooth_accel":-0.039311,"accel_momentum":0.021483,"rvol_3bar":[0.836263,0.093202,0.493106],"trend_3bar":"MIXED","projected_rvol":1.887618},"flow":{"window_s":30,"trades":269,"trade_rate":8.966667,"buy_vol":27189.0,"sell_vol":34426.0,"unclassified_vol":0.0,"imbalance":-0.117455,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":2.490027},"context":{"vwap":8.798658,"price_vs_vwap_pct":0.754006,"ema9":8.850253,"ema20":8.854795,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.838926,"dist_to_hod_atr":1.80039,"atr":0.041658,"spread_atr":0.240052,"own_change_pct":0.189057,"rel_strength_pct":{"SPY":0.214825,"IWM":0.20128}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.057918},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5e8d1781a7d4","ts":"2026-09-21T19:06:24.567705+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 301.7s, plan says WATCH; stop 8.59, target 8.74 (ceiling), R:R 0.56; R:R 0.56 < 2.0 at 8.69; pullback: buy 8.66-8.68 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.5861,"target":8.745,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":126.3,"room_to_5d_high_atr":-0.83},"price":8.688,"vwap":8.6446,"ext_from_open_pct":0.79,"max_ext_allowed_pct":3.0,"volume_pace":0.653,"trend":"flat","recent_slope_pct":0.0196,"volatility":"medium"},"price":8.688,"volume":{"bars":336,"last_bar_volume":1118.0,"baseline_avg":2222.35,"bar_rvol":0.503071,"raw_accel":-0.637836,"smooth_accel":0.068987,"accel_momentum":0.262789,"rvol_3bar":[0.421125,1.295888,0.503071],"trend_3bar":"MIXED","projected_rvol":1.647312},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":264.0,"sell_vol":1235.0,"unclassified_vol":0.0,"imbalance":-0.647765,"bid":8.69,"ask":8.7,"spread_pct":0.115009,"quote_size_imbalance":null,"quote_age_s":0.67321},"context":{"vwap":8.644525,"price_vs_vwap_pct":0.502921,"ema9":8.680093,"ema20":8.677223,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.908932,"dist_to_hod_atr":17.189632,"atr":0.015143,"spread_atr":0.660378,"own_change_pct":0.163642,"rel_strength_pct":{"SPY":0.189409,"IWM":0.175865}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.325872},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c3021589235d","ts":"2026-09-21T19:07:16.829613+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.9602,"target":9.0917,"target_label":"clear air (typical 60-min move)","reward_risk":0.52,"pos_in_5d_range_pct":128.8,"room_to_5d_high_atr":-0.92},"price":9.0467,"vwap":9.0149,"ext_from_open_pct":0.3,"max_ext_allowed_pct":3.0,"volume_pace":0.714,"trend":"flat","recent_slope_pct":0.0536,"volatility":"medium"},"price":9.0467,"volume":{"bars":337,"last_bar_volume":10155.0,"baseline_avg":8239.35,"bar_rvol":1.2325,"raw_accel":2.166511,"smooth_accel":0.274447,"accel_momentum":0.576996,"rvol_3bar":[1.660485,0.377024,1.2325],"trend_3bar":"MIXED","projected_rvol":0.909962},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":4078.0,"sell_vol":1245.0,"unclassified_vol":0.0,"imbalance":0.532219,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":5.459311},"context":{"vwap":9.014905,"price_vs_vwap_pct":0.352699,"ema9":9.039004,"ema20":9.048289,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-0.911291,"dist_to_hod_atr":3.491574,"atr":0.023829,"spread_atr":0.41966,"own_change_pct":0.277162,"rel_strength_pct":{"SPY":0.297051,"IWM":0.284146}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.65596},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8c4a05d2e2a8","ts":"2026-09-21T19:07:16.829613+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 354.0s, plan says PASS; stop 8.59, target 8.76 (premarket_high), R:R 0.65; target 0.07 away > ~0.06 reachable in 48 min","plan":{"state":"PASS","setup":"","stop":8.5922,"target":8.76,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":126.8,"room_to_5d_high_atr":-0.84},"price":8.6941,"vwap":8.6446,"ext_from_open_pct":0.86,"max_ext_allowed_pct":3.0,"volume_pace":0.652,"trend":"flat","recent_slope_pct":0.0658,"volatility":"medium"},"price":8.6941,"volume":{"bars":337,"last_bar_volume":2315.0,"baseline_avg":1669.9,"bar_rvol":1.386311,"raw_accel":1.070662,"smooth_accel":0.455682,"accel_momentum":0.386695,"rvol_3bar":[1.295888,0.503071,1.386311],"trend_3bar":"MIXED","projected_rvol":0.219899},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":566.0,"sell_vol":309.0,"unclassified_vol":0.0,"imbalance":0.293714,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":5.60102},"context":{"vwap":8.644643,"price_vs_vwap_pct":0.572115,"ema9":8.685614,"ema20":8.680126,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.840763,"dist_to_hod_atr":16.327989,"atr":0.015568,"spread_atr":0.642328,"own_change_pct":0.306413,"rel_strength_pct":{"SPY":0.326302,"IWM":0.313397}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.407179},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dbc69219339b","ts":"2026-09-21T19:07:22.053939+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 359.2s, plan says WATCH; stop 8.61, target 8.76 (premarket_high), R:R 0.49; R:R 0.49 < 2.0 at 8.71; pullback: buy 8.66-8.69 holding + reclaim/fading selling/support; breakout: 1-min close > 8.75 ","plan":{"state":"WATCH","setup":"","stop":8.6081,"target":8.76,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":128.1,"room_to_5d_high_atr":-0.88},"price":8.71,"vwap":8.6447,"ext_from_open_pct":1.04,"max_ext_allowed_pct":3.0,"volume_pace":0.652,"trend":"flat","recent_slope_pct":0.1024,"volatility":"medium"},"price":8.71,"volume":{"bars":337,"last_bar_volume":2315.0,"baseline_avg":1669.9,"bar_rvol":1.386311,"raw_accel":1.070662,"smooth_accel":0.455682,"accel_momentum":0.386695,"rvol_3bar":[1.295888,0.503071,1.386311],"trend_3bar":"MIXED","projected_rvol":0.228088},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":43.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":-0.406897,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":0.136377},"context":{"vwap":8.644643,"price_vs_vwap_pct":0.756044,"ema9":8.685614,"ema20":8.680126,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.663076,"dist_to_hod_atr":15.306687,"atr":0.015568,"spread_atr":0.642328,"own_change_pct":0.306413,"rel_strength_pct":{"SPY":0.326302,"IWM":0.313397}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.564085},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fc451d63bbae","ts":"2026-09-21T19:07:32.357495+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 369.5s, plan says PASS; stop 8.59, target 8.76 (premarket_high), R:R 0.63; target 0.06 away > ~0.06 reachable in 47 min","plan":{"state":"PASS","setup":"","stop":8.5937,"target":8.76,"target_label":"premarket_high","reward_risk":0.63,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.85},"price":8.6956,"vwap":8.6447,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.652,"trend":"flat","recent_slope_pct":0.0693,"volatility":"medium"},"price":8.6956,"volume":{"bars":337,"last_bar_volume":2315.0,"baseline_avg":1669.9,"bar_rvol":1.386311,"raw_accel":1.070662,"smooth_accel":0.455682,"accel_momentum":0.386695,"rvol_3bar":[1.295888,0.503071,1.386311],"trend_3bar":"MIXED","projected_rvol":0.179887},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":43.0,"sell_vol":119.0,"unclassified_vol":0.0,"imbalance":-0.469136,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":10.439933},"context":{"vwap":8.644643,"price_vs_vwap_pct":0.589467,"ema9":8.685614,"ema20":8.680126,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.824,"dist_to_hod_atr":16.23164,"atr":0.015568,"spread_atr":0.642328,"own_change_pct":0.306413,"rel_strength_pct":{"SPY":0.326302,"IWM":0.313397}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.650368},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"512d1235b882","ts":"2026-09-21T19:07:37.535816+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 374.7s, plan says WATCH; stop 8.61, target 8.76 (premarket_high), R:R 0.51; R:R 0.51 < 2.0 at 8.71; pullback: buy 8.66-8.69 holding + reclaim/fading selling/support; breakout: 1-min close > 8.75 ","plan":{"state":"WATCH","setup":"","stop":8.6058,"target":8.76,"target_label":"premarket_high","reward_risk":0.51,"pos_in_5d_range_pct":127.9,"room_to_5d_high_atr":-0.88},"price":8.7077,"vwap":8.6447,"ext_from_open_pct":1.02,"max_ext_allowed_pct":3.0,"volume_pace":0.652,"trend":"flat","recent_slope_pct":0.0971,"volatility":"medium"},"price":8.7077,"volume":{"bars":337,"last_bar_volume":2315.0,"baseline_avg":1669.9,"bar_rvol":1.386311,"raw_accel":1.070662,"smooth_accel":0.455682,"accel_momentum":0.386695,"rvol_3bar":[1.295888,0.503071,1.386311],"trend_3bar":"MIXED","projected_rvol":0.237392},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":53.0,"sell_vol":183.0,"unclassified_vol":0.0,"imbalance":-0.550847,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":15.618254},"context":{"vwap":8.644643,"price_vs_vwap_pct":0.729438,"ema9":8.685614,"ema20":8.680126,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.688779,"dist_to_hod_atr":15.454422,"atr":0.015568,"spread_atr":0.642328,"own_change_pct":0.306413,"rel_strength_pct":{"SPY":0.326302,"IWM":0.313397}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.763646},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2adf34f489ec","ts":"2026-09-21T19:07:42.738926+00:00","symbol":"QUBT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.9509,"target":9.095,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":127.9,"room_to_5d_high_atr":-0.89},"price":9.0374,"vwap":9.0149,"ext_from_open_pct":0.19,"max_ext_allowed_pct":4.0,"volume_pace":0.714,"trend":"flat","recent_slope_pct":0.033,"volatility":"medium"},"price":9.0374,"volume":{"bars":337,"last_bar_volume":10155.0,"baseline_avg":8239.35,"bar_rvol":1.2325,"raw_accel":2.166511,"smooth_accel":0.274447,"accel_momentum":0.576996,"rvol_3bar":[1.660485,0.377024,1.2325],"trend_3bar":"MIXED","projected_rvol":1.797576},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":8563.0,"sell_vol":412.0,"unclassified_vol":0.0,"imbalance":0.908189,"bid":9.04,"ask":9.05,"spread_pct":0.110558,"quote_size_imbalance":null,"quote_age_s":0.837982},"context":{"vwap":9.014905,"price_vs_vwap_pct":0.249536,"ema9":9.039004,"ema20":9.048289,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.013155,"dist_to_hod_atr":3.881858,"atr":0.023829,"spread_atr":0.41966,"own_change_pct":0.277162,"rel_strength_pct":{"SPY":0.297051,"IWM":0.284146}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.119344},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f3021ea3f120","ts":"2026-09-21T19:07:53.241954+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 390.4s, plan says PASS; stop 8.59, target 8.76 (premarket_high), R:R 0.64; target 0.06 away > ~0.06 reachable in 47 min","plan":{"state":"PASS","setup":"","stop":8.5933,"target":8.76,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.85},"price":8.6952,"vwap":8.6447,"ext_from_open_pct":0.87,"max_ext_allowed_pct":3.0,"volume_pace":0.651,"trend":"flat","recent_slope_pct":0.0684,"volatility":"medium"},"price":8.6952,"volume":{"bars":337,"last_bar_volume":2315.0,"baseline_avg":1669.9,"bar_rvol":1.386311,"raw_accel":1.070662,"smooth_accel":0.455682,"accel_momentum":0.386695,"rvol_3bar":[1.295888,0.503071,1.386311],"trend_3bar":"MIXED","projected_rvol":0.218651},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":25.0,"sell_vol":159.0,"unclassified_vol":0.0,"imbalance":-0.728261,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":2.045903},"context":{"vwap":8.644643,"price_vs_vwap_pct":0.58484,"ema9":8.685614,"ema20":8.680126,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.82847,"dist_to_hod_atr":16.257333,"atr":0.015568,"spread_atr":0.642328,"own_change_pct":0.306413,"rel_strength_pct":{"SPY":0.326302,"IWM":0.313397}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.009596},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3ce69ab48127","ts":"2026-09-21T19:07:58.492956+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 395.6s, plan says WATCH; stop 8.60, target 8.76 (premarket_high), R:R 0.54; R:R 0.54 < 2.0 at 8.71; pullback: buy 8.66-8.69 holding + reclaim/fading selling/support; breakout: 1-min close > 8.75 ","plan":{"state":"WATCH","setup":"","stop":8.6031,"target":8.76,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.87},"price":8.705,"vwap":8.6447,"ext_from_open_pct":0.99,"max_ext_allowed_pct":3.0,"volume_pace":0.651,"trend":"flat","recent_slope_pct":0.0909,"volatility":"medium"},"price":8.705,"volume":{"bars":337,"last_bar_volume":2315.0,"baseline_avg":1669.9,"bar_rvol":1.386311,"raw_accel":1.070662,"smooth_accel":0.455682,"accel_momentum":0.386695,"rvol_3bar":[1.295888,0.503071,1.386311],"trend_3bar":"MIXED","projected_rvol":0.308362},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":45.0,"sell_vol":317.0,"unclassified_vol":0.0,"imbalance":-0.751381,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":7.296905},"context":{"vwap":8.644643,"price_vs_vwap_pct":0.698205,"ema9":8.685614,"ema20":8.680126,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.718952,"dist_to_hod_atr":15.627851,"atr":0.015568,"spread_atr":0.642328,"own_change_pct":0.306413,"rel_strength_pct":{"SPY":0.326302,"IWM":0.313397}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.041648},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"01a81a94d79a","ts":"2026-09-21T19:08:14.085704+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 411.2s, plan says PASS; stop 8.59, target 8.76 (premarket_high), R:R 0.64; target 0.07 away > ~0.06 reachable in 47 min","plan":{"state":"PASS","setup":"","stop":8.5926,"target":8.76,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":126.8,"room_to_5d_high_atr":-0.84},"price":8.6945,"vwap":8.6447,"ext_from_open_pct":0.86,"max_ext_allowed_pct":3.0,"volume_pace":0.651,"trend":"flat","recent_slope_pct":0.0549,"volatility":"medium"},"price":8.6945,"volume":{"bars":338,"last_bar_volume":502.0,"baseline_avg":1642.45,"bar_rvol":0.305641,"raw_accel":-0.783153,"smooth_accel":-0.12575,"accel_momentum":-0.581432,"rvol_3bar":[0.503071,1.386311,0.305641],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":23.0,"sell_vol":161.0,"unclassified_vol":0.0,"imbalance":-0.75,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":4.385131},"context":{"vwap":8.644668,"price_vs_vwap_pct":0.576449,"ema9":8.689492,"ema20":8.682495,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.836293,"dist_to_hod_atr":15.681278,"atr":0.016185,"spread_atr":0.61786,"own_change_pct":0.230282,"rel_strength_pct":{"SPY":0.263215,"IWM":0.268687}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.229231},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a4adae306e97","ts":"2026-09-21T19:08:34.741874+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 431.9s, plan says WATCH; stop 8.61, target 8.76 (premarket_high), R:R 0.50; R:R 0.50 < 2.0 at 8.71; pullback: buy 8.66-8.69 holding + reclaim/fading selling/support; breakout: 1-min close > 8.75 ","plan":{"state":"WATCH","setup":"","stop":8.6067,"target":8.76,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":127.9,"room_to_5d_high_atr":-0.88},"price":8.7086,"vwap":8.6447,"ext_from_open_pct":1.03,"max_ext_allowed_pct":3.0,"volume_pace":0.65,"trend":"flat","recent_slope_pct":0.0873,"volatility":"medium"},"price":8.7086,"volume":{"bars":338,"last_bar_volume":502.0,"baseline_avg":1642.45,"bar_rvol":0.305641,"raw_accel":-0.783153,"smooth_accel":-0.12575,"accel_momentum":-0.581432,"rvol_3bar":[0.503071,1.386311,0.305641],"trend_3bar":"MIXED","projected_rvol":0.246049},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":104.0,"sell_vol":130.0,"unclassified_vol":0.0,"imbalance":-0.111111,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":4.767939},"context":{"vwap":8.644668,"price_vs_vwap_pct":0.739556,"ema9":8.689492,"ema20":8.682495,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.678721,"dist_to_hod_atr":14.810096,"atr":0.016185,"spread_atr":0.61786,"own_change_pct":0.230282,"rel_strength_pct":{"SPY":0.263215,"IWM":0.268687}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.03396},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fabf2df5f773","ts":"2026-09-21T19:08:34.741874+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.93,"target_label":"ceiling","reward_risk":0.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7991,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.447,"trend":"flat","recent_slope_pct":0.0138,"volatility":"unknown"},"price":8.845,"volume":{"bars":338,"last_bar_volume":65889.0,"baseline_avg":85930.95,"bar_rvol":0.766767,"raw_accel":-0.333269,"smooth_accel":0.951189,"accel_momentum":0.803452,"rvol_3bar":[0.493106,1.195782,0.766767],"trend_3bar":"MIXED","projected_rvol":0.157406},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":4339.0,"sell_vol":3325.0,"unclassified_vol":0.0,"imbalance":0.132307,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.834957},"context":{"vwap":8.799055,"price_vs_vwap_pct":0.522159,"ema9":8.853562,"ema20":8.855694,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":2.424814,"atr":0.039178,"spread_atr":0.255244,"own_change_pct":0.226372,"rel_strength_pct":{"SPY":0.259305,"IWM":0.264778}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.101449},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"61ab80d9d5c2","ts":"2026-09-21T19:08:55.471341+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.93,"target_label":"ceiling","reward_risk":0.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7991,"ext_from_open_pct":3.81,"max_ext_allowed_pct":3.0,"volume_pace":0.446,"trend":"flat","recent_slope_pct":0.0138,"volatility":"unknown"},"price":8.845,"volume":{"bars":338,"last_bar_volume":65889.0,"baseline_avg":85930.95,"bar_rvol":0.766767,"raw_accel":-0.333269,"smooth_accel":0.951189,"accel_momentum":0.803452,"rvol_3bar":[0.493106,1.195782,0.766767],"trend_3bar":"MIXED","projected_rvol":0.122626},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":4220.0,"sell_vol":1714.0,"unclassified_vol":0.0,"imbalance":0.422312,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.81032},"context":{"vwap":8.799055,"price_vs_vwap_pct":0.522159,"ema9":8.853562,"ema20":8.855694,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":2.424814,"atr":0.039178,"spread_atr":0.255244,"own_change_pct":0.226372,"rel_strength_pct":{"SPY":0.259305,"IWM":0.264778}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.323815},"shadow":{"decision":"FAIL","failed":["bar_rvol"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f75336038d9b","ts":"2026-09-21T19:10:02.987559+00:00","symbol":"RUN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.6256,"target":8.82,"target_label":"prev_day_high","reward_risk":0.79,"pos_in_5d_range_pct":75.3,"room_to_5d_high_atr":0.41},"price":8.7345,"vwap":8.711,"ext_from_open_pct":0.17,"max_ext_allowed_pct":4.0,"volume_pace":0.509,"trend":"flat","recent_slope_pct":-0.0113,"volatility":"medium"},"price":8.7345,"volume":{"bars":340,"last_bar_volume":7474.0,"baseline_avg":7718.35,"bar_rvol":0.968342,"raw_accel":-0.208011,"smooth_accel":-0.523768,"accel_momentum":-0.579874,"rvol_3bar":[0.737019,1.241139,0.968342],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1673.0,"sell_vol":603.0,"unclassified_vol":0.0,"imbalance":0.470123,"bid":8.73,"ask":8.74,"spread_pct":0.114482,"quote_size_imbalance":null,"quote_age_s":6.370913},"context":{"vwap":8.710973,"price_vs_vwap_pct":0.27008,"ema9":8.737086,"ema20":8.737582,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.74252,"dist_to_hod_atr":22.254545,"atr":0.01526,"spread_atr":0.655316,"own_change_pct":-0.005724,"rel_strength_pct":{"SPY":-0.010891,"IWM":0.053629}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.45524},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c2f0eb9fd41d","ts":"2026-09-21T19:10:34.785063+00:00","symbol":"QUBT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.9335,"target":9.095,"target_label":"ceiling","reward_risk":0.87,"pos_in_5d_range_pct":126.4,"room_to_5d_high_atr":-0.84},"price":9.02,"vwap":9.015,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.714,"trend":"flat","recent_slope_pct":-0.0562,"volatility":"medium"},"price":9.02,"volume":{"bars":340,"last_bar_volume":3696.0,"baseline_avg":8006.75,"bar_rvol":0.461611,"raw_accel":-0.513556,"smooth_accel":-0.15386,"accel_momentum":-0.68372,"rvol_3bar":[1.398298,0.931504,0.461611],"trend_3bar":"DECELERATING","projected_rvol":9.377582},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":6836.0,"sell_vol":36654.0,"unclassified_vol":0.0,"imbalance":-0.685629,"bid":9.01,"ask":9.02,"spread_pct":0.110926,"quote_size_imbalance":null,"quote_age_s":0.863768},"context":{"vwap":9.014987,"price_vs_vwap_pct":0.055612,"ema9":9.036061,"ema20":9.044325,"ema_stack":false,"ema_warm":true,"hod":9.1299,"dist_to_hod_pct":-1.203737,"dist_to_hod_atr":4.862356,"atr":0.022602,"spread_atr":0.442435,"own_change_pct":0.028793,"rel_strength_pct":{"SPY":0.023626,"IWM":0.088146}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.316494},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"cd7ea7295a31","ts":"2026-09-21T19:10:45.435694+00:00","symbol":"RUN","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.6308,"target":8.82,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":76.0,"room_to_5d_high_atr":0.4},"price":8.7397,"vwap":8.711,"ext_from_open_pct":0.23,"max_ext_allowed_pct":4.0,"volume_pace":0.509,"trend":"flat","recent_slope_pct":0.0006,"volatility":"medium"},"price":8.7397,"volume":{"bars":340,"last_bar_volume":7474.0,"baseline_avg":7718.35,"bar_rvol":0.968342,"raw_accel":-0.208011,"smooth_accel":-0.523768,"accel_momentum":-0.579874,"rvol_3bar":[0.737019,1.241139,0.968342],"trend_3bar":"MIXED","projected_rvol":2.04626},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":7666.0,"sell_vol":3609.0,"unclassified_vol":0.0,"imbalance":0.359823,"bid":8.74,"ask":8.75,"spread_pct":0.114351,"quote_size_imbalance":null,"quote_age_s":3.920865},"context":{"vwap":8.710973,"price_vs_vwap_pct":0.329775,"ema9":8.737086,"ema20":8.737582,"ema_stack":false,"ema_warm":true,"hod":9.0741,"dist_to_hod_pct":-3.685214,"dist_to_hod_atr":21.91378,"atr":0.01526,"spread_atr":0.655316,"own_change_pct":-0.005724,"rel_strength_pct":{"SPY":-0.010891,"IWM":0.053629}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.348431},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9fcdee47caf3","ts":"2026-09-21T19:10:56.100581+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 573.3s, plan says PASS; stop 8.60, target 8.76 (premarket_high), R:R 0.54; target 0.05 away > ~0.05 reachable in 44 min","plan":{"state":"PASS","setup":"","stop":8.6031,"target":8.76,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.87},"price":8.705,"vwap":8.6451,"ext_from_open_pct":0.99,"max_ext_allowed_pct":4.0,"volume_pace":0.65,"trend":"flat","recent_slope_pct":0.0053,"volatility":"medium"},"price":8.705,"volume":{"bars":340,"last_bar_volume":3098.0,"baseline_avg":1587.85,"bar_rvol":1.951066,"raw_accel":2.073413,"smooth_accel":-0.293252,"accel_momentum":-0.030104,"rvol_3bar":[0.305641,0.614522,1.951066],"trend_3bar":"ACCELERATING","projected_rvol":2.35745},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":100.0,"sell_vol":17.0,"unclassified_vol":0.0,"imbalance":0.709402,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":27.453982},"context":{"vwap":8.644899,"price_vs_vwap_pct":0.695224,"ema9":8.695347,"ema20":8.686599,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.718952,"dist_to_hod_atr":14.368908,"atr":0.016932,"spread_atr":0.590584,"own_change_pct":0.434467,"rel_strength_pct":{"SPY":0.4293,"IWM":0.49382}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.384089},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4fd9ecfeb3ee","ts":"2026-09-21T19:11:01.404923+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 578.6s, plan says WATCH; stop 8.60, target 8.76 (premarket_high), R:R 0.54; R:R 0.54 < 2.0 at 8.71; pullback: buy 8.66-8.69 holding + reclaim/fading selling/support; breakout: 1-min close > 8.75 ","plan":{"state":"WATCH","setup":"","stop":8.6031,"target":8.76,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.87},"price":8.705,"vwap":8.6451,"ext_from_open_pct":0.99,"max_ext_allowed_pct":3.0,"volume_pace":0.65,"trend":"flat","recent_slope_pct":0.0207,"volatility":"medium"},"price":8.705,"volume":{"bars":341,"last_bar_volume":3589.0,"baseline_avg":1688.25,"bar_rvol":2.12587,"raw_accel":0.158489,"smooth_accel":0.955527,"accel_momentum":1.248779,"rvol_3bar":[0.614522,1.951066,2.12587],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":104.0,"sell_vol":165.0,"unclassified_vol":0.0,"imbalance":-0.226766,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":0.828945},"context":{"vwap":8.645107,"price_vs_vwap_pct":0.692798,"ema9":8.698717,"ema20":8.689037,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.718952,"dist_to_hod_atr":13.987289,"atr":0.017394,"spread_atr":0.574899,"own_change_pct":0.235857,"rel_strength_pct":{"SPY":0.23463,"IWM":0.284755}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.482075},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a010d6845323","ts":"2026-09-21T19:11:01.404923+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6943,"target":10.02,"target_label":"premarket_high","reward_risk":0.97,"pos_in_5d_range_pct":131.8,"room_to_5d_high_atr":-0.75},"price":9.86,"vwap":9.8265,"ext_from_open_pct":-1.3,"max_ext_allowed_pct":4.0,"volume_pace":0.731,"trend":"flat","recent_slope_pct":-0.02,"volatility":"high"},"price":9.86,"volume":{"bars":341,"last_bar_volume":1968.0,"baseline_avg":11470.15,"bar_rvol":0.171576,"raw_accel":-0.904028,"smooth_accel":0.134579,"accel_momentum":-2.339362,"rvol_3bar":[1.410264,1.839936,0.171576],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":795.0,"sell_vol":462.0,"unclassified_vol":0.0,"imbalance":0.264916,"bid":9.86,"ask":9.87,"spread_pct":0.101368,"quote_size_imbalance":null,"quote_age_s":0.04302},"context":{"vwap":9.826539,"price_vs_vwap_pct":0.34052,"ema9":9.871268,"ema20":9.862831,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.56917,"dist_to_hod_atr":13.186551,"atr":0.019717,"spread_atr":0.507175,"own_change_pct":0.053671,"rel_strength_pct":{"SPY":0.052444,"IWM":0.102569}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.045453},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ce0eb8c08953","ts":"2026-09-21T19:11:22.531179+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 599.7s, plan says PASS; stop 8.60, target 8.76 (premarket_high), R:R 0.55; target 0.06 away > ~0.05 reachable in 44 min","plan":{"state":"PASS","setup":"","stop":8.6017,"target":8.76,"target_label":"premarket_high","reward_risk":0.55,"pos_in_5d_range_pct":127.6,"room_to_5d_high_atr":-0.87},"price":8.7036,"vwap":8.6451,"ext_from_open_pct":0.97,"max_ext_allowed_pct":3.0,"volume_pace":0.649,"trend":"flat","recent_slope_pct":0.0175,"volatility":"medium"},"price":8.7036,"volume":{"bars":341,"last_bar_volume":3589.0,"baseline_avg":1688.25,"bar_rvol":2.12587,"raw_accel":0.158489,"smooth_accel":0.955527,"accel_momentum":1.248779,"rvol_3bar":[0.614522,1.951066,2.12587],"trend_3bar":"ACCELERATING","projected_rvol":0.405381},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":48.0,"sell_vol":299.0,"unclassified_vol":0.0,"imbalance":-0.723343,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":6.655623},"context":{"vwap":8.645107,"price_vs_vwap_pct":0.676604,"ema9":8.698717,"ema20":8.689037,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.734598,"dist_to_hod_atr":14.067775,"atr":0.017394,"spread_atr":0.574899,"own_change_pct":0.235857,"rel_strength_pct":{"SPY":0.23463,"IWM":0.284755}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.537733},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"af25f4fe952a","ts":"2026-09-21T19:11:27.693125+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 604.8s, plan says WATCH; stop 8.61, target 8.76 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 8.71; pullback: buy 8.66-8.69 holding + reclaim/fading selling/support; breakout: 1-min close > 8.75 ","plan":{"state":"WATCH","setup":"","stop":8.611,"target":8.76,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":128.3,"room_to_5d_high_atr":-0.89},"price":8.7129,"vwap":8.6451,"ext_from_open_pct":1.08,"max_ext_allowed_pct":3.0,"volume_pace":0.649,"trend":"flat","recent_slope_pct":0.0388,"volatility":"medium"},"price":8.7129,"volume":{"bars":341,"last_bar_volume":3589.0,"baseline_avg":1688.25,"bar_rvol":2.12587,"raw_accel":0.158489,"smooth_accel":0.955527,"accel_momentum":1.248779,"rvol_3bar":[0.614522,1.951066,2.12587],"trend_3bar":"ACCELERATING","projected_rvol":0.458153},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":148.0,"sell_vol":298.0,"unclassified_vol":0.0,"imbalance":-0.336323,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":0.76693},"context":{"vwap":8.645107,"price_vs_vwap_pct":0.78418,"ema9":8.698717,"ema20":8.689037,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.630667,"dist_to_hod_atr":13.533119,"atr":0.017394,"spread_atr":0.574899,"own_change_pct":0.235857,"rel_strength_pct":{"SPY":0.23463,"IWM":0.284755}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.714979},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1cb35a9e2013","ts":"2026-09-21T19:11:32.937860+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 610.1s, plan says PASS; stop 8.60, target 8.76 (premarket_high), R:R 0.58; target 0.06 away > ~0.05 reachable in 43 min","plan":{"state":"PASS","setup":"","stop":8.599,"target":8.76,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":127.3,"room_to_5d_high_atr":-0.86},"price":8.7009,"vwap":8.6451,"ext_from_open_pct":0.94,"max_ext_allowed_pct":3.0,"volume_pace":0.649,"trend":"flat","recent_slope_pct":0.0113,"volatility":"medium"},"price":8.7009,"volume":{"bars":341,"last_bar_volume":3589.0,"baseline_avg":1688.25,"bar_rvol":2.12587,"raw_accel":0.158489,"smooth_accel":0.955527,"accel_momentum":1.248779,"rvol_3bar":[0.614522,1.951066,2.12587],"trend_3bar":"ACCELERATING","projected_rvol":0.566472},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":111.0,"sell_vol":299.0,"unclassified_vol":0.0,"imbalance":-0.458537,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":6.011665},"context":{"vwap":8.645107,"price_vs_vwap_pct":0.645373,"ema9":8.698717,"ema20":8.689037,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.764771,"dist_to_hod_atr":14.222997,"atr":0.017394,"spread_atr":0.574899,"own_change_pct":0.235857,"rel_strength_pct":{"SPY":0.23463,"IWM":0.284755}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.974789},"shadow":{"decision":"FAIL","failed":["imbalance"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"75824fd64038","ts":"2026-09-21T19:11:43.535612+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 355.4s, plan says WATCH; stop 12.08, target 12.29 (prev_day_high), R:R 0.20; R:R 0.20 < 2.0 at 12.26; breakout: 1-min close > 12.28 on >= 10719 sh","plan":{"state":"WATCH","setup":"","stop":12.0797,"target":12.29,"target_label":"prev_day_high","reward_risk":0.2,"pos_in_5d_range_pct":69.2,"room_to_5d_high_atr":0.49},"price":12.255,"vwap":12.1852,"ext_from_open_pct":-0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.543,"trend":"flat","recent_slope_pct":0.0375,"volatility":"medium"},"price":12.255,"volume":{"bars":341,"last_bar_volume":2529.0,"baseline_avg":5711.7,"bar_rvol":0.442775,"raw_accel":-0.53511,"smooth_accel":-0.368324,"accel_momentum":-0.051573,"rvol_3bar":[0.748112,0.924926,0.442775],"trend_3bar":"MIXED","projected_rvol":1.140824},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":1624.0,"sell_vol":2521.0,"unclassified_vol":0.0,"imbalance":-0.216405,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":0.121006},"context":{"vwap":12.18515,"price_vs_vwap_pct":0.57324,"ema9":12.238455,"ema20":12.232997,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.881505,"dist_to_hod_atr":12.024759,"atr":0.019543,"spread_atr":0.511692,"own_change_pct":0.138128,"rel_strength_pct":{"SPY":0.136901,"IWM":0.187026}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.095819},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8f224fa7156b","ts":"2026-09-21T19:11:48.734872+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 360.6s, plan says PASS; stop 12.08, target 12.29 (prev_day_high), R:R 0.21; target 0.04 away > ~0.04 reachable in 43 min","plan":{"state":"PASS","setup":"","stop":12.078,"target":12.29,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":69.0,"room_to_5d_high_atr":0.49},"price":12.2533,"vwap":12.1852,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.543,"trend":"flat","recent_slope_pct":0.0347,"volatility":"medium"},"price":12.2533,"volume":{"bars":341,"last_bar_volume":2529.0,"baseline_avg":5711.7,"bar_rvol":0.442775,"raw_accel":-0.53511,"smooth_accel":-0.368324,"accel_momentum":-0.051573,"rvol_3bar":[0.748112,0.924926,0.442775],"trend_3bar":"MIXED","projected_rvol":1.083996},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":1824.0,"sell_vol":1067.0,"unclassified_vol":0.0,"imbalance":0.261847,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":0.119376},"context":{"vwap":12.18515,"price_vs_vwap_pct":0.559289,"ema9":12.238455,"ema20":12.232997,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.895116,"dist_to_hod_atr":12.111746,"atr":0.019543,"spread_atr":0.511692,"own_change_pct":0.138128,"rel_strength_pct":{"SPY":0.136901,"IWM":0.187026}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.115939},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4550acc6de00","ts":"2026-09-21T19:11:53.942879+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 365.8s, plan says WATCH; stop 12.08, target 12.29 (prev_day_high), R:R 0.19; R:R 0.19 < 2.0 at 12.26; breakout: 1-min close > 12.28 on >= 10719 sh","plan":{"state":"WATCH","setup":"","stop":12.0815,"target":12.29,"target_label":"prev_day_high","reward_risk":0.19,"pos_in_5d_range_pct":69.4,"room_to_5d_high_atr":0.49},"price":12.2568,"vwap":12.1852,"ext_from_open_pct":-0.35,"max_ext_allowed_pct":4.0,"volume_pace":0.542,"trend":"flat","recent_slope_pct":0.0404,"volatility":"medium"},"price":12.2568,"volume":{"bars":341,"last_bar_volume":2529.0,"baseline_avg":5711.7,"bar_rvol":0.442775,"raw_accel":-0.53511,"smooth_accel":-0.368324,"accel_momentum":-0.051573,"rvol_3bar":[0.748112,0.924926,0.442775],"trend_3bar":"MIXED","projected_rvol":0.990245},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1668.0,"sell_vol":763.0,"unclassified_vol":0.0,"imbalance":0.372275,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":0.888503},"context":{"vwap":12.18515,"price_vs_vwap_pct":0.588012,"ema9":12.238455,"ema20":12.232997,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.867094,"dist_to_hod_atr":11.932654,"atr":0.019543,"spread_atr":0.511692,"own_change_pct":0.138128,"rel_strength_pct":{"SPY":0.136901,"IWM":0.187026}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.164834},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aaade39a2657","ts":"2026-09-21T19:11:59.197183+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 636.4s, plan says WATCH; stop 8.61, target 8.76 (premarket_high), R:R 0.49; R:R 0.49 < 2.0 at 8.71; pullback: buy 8.66-8.69 holding + reclaim/fading selling/support; breakout: 1-min close > 8.75 ","plan":{"state":"WATCH","setup":"","stop":8.6081,"target":8.76,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":128.1,"room_to_5d_high_atr":-0.88},"price":8.71,"vwap":8.6452,"ext_from_open_pct":1.04,"max_ext_allowed_pct":4.0,"volume_pace":0.649,"trend":"flat","recent_slope_pct":0.0322,"volatility":"medium"},"price":8.71,"volume":{"bars":341,"last_bar_volume":3589.0,"baseline_avg":1688.25,"bar_rvol":2.12587,"raw_accel":0.158489,"smooth_accel":0.955527,"accel_momentum":1.248779,"rvol_3bar":[0.614522,1.951066,2.12587],"trend_3bar":"ACCELERATING","projected_rvol":1.003205},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1081.0,"sell_vol":233.0,"unclassified_vol":0.0,"imbalance":0.645358,"bid":8.71,"ask":8.72,"spread_pct":0.114745,"quote_size_imbalance":null,"quote_age_s":4.143076},"context":{"vwap":8.645107,"price_vs_vwap_pct":0.750635,"ema9":8.698717,"ema20":8.689037,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.663076,"dist_to_hod_atr":13.699839,"atr":0.017394,"spread_atr":0.574899,"own_change_pct":0.235857,"rel_strength_pct":{"SPY":0.23463,"IWM":0.284755}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.371947},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e32763ca74d5","ts":"2026-09-21T19:12:04.435101+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.6993,"target":10.02,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":132.2,"room_to_5d_high_atr":-0.75},"price":9.865,"vwap":9.8266,"ext_from_open_pct":-1.25,"max_ext_allowed_pct":4.0,"volume_pace":0.73,"trend":"flat","recent_slope_pct":-0.0554,"volatility":"high"},"price":9.865,"volume":{"bars":342,"last_bar_volume":16982.0,"baseline_avg":11170.15,"bar_rvol":1.520302,"raw_accel":5.081208,"smooth_accel":-0.031065,"accel_momentum":-0.165644,"rvol_3bar":[1.839936,0.171576,1.520302],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":7361.0,"sell_vol":1469.0,"unclassified_vol":0.0,"imbalance":0.667271,"bid":9.86,"ask":9.87,"spread_pct":0.101368,"quote_size_imbalance":null,"quote_age_s":0.722737},"context":{"vwap":9.826605,"price_vs_vwap_pct":0.39073,"ema9":9.870014,"ema20":9.863037,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.519763,"dist_to_hod_atr":12.676577,"atr":0.020116,"spread_atr":0.497121,"own_change_pct":0.055784,"rel_strength_pct":{"SPY":0.048033,"IWM":0.11515}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.014453},"shadow":{"decision":"FAIL","failed":["vas"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e8463f7c6f87","ts":"2026-09-21T19:12:04.435101+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 376.3s, plan says PASS; stop 12.08, target 12.29 (prev_day_high), R:R 0.21; target 0.04 away > ~0.04 reachable in 43 min","plan":{"state":"PASS","setup":"","stop":12.0778,"target":12.29,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":69.0,"room_to_5d_high_atr":0.49},"price":12.2531,"vwap":12.1852,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":4.0,"volume_pace":0.542,"trend":"flat","recent_slope_pct":0.0078,"volatility":"medium"},"price":12.2531,"volume":{"bars":342,"last_bar_volume":5232.0,"baseline_avg":5616.95,"bar_rvol":0.931466,"raw_accel":1.068802,"smooth_accel":-0.19171,"accel_momentum":0.176614,"rvol_3bar":[0.924926,0.442775,0.931466],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":2933.0,"sell_vol":596.0,"unclassified_vol":0.0,"imbalance":0.662227,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":0.216331},"context":{"vwap":12.185214,"price_vs_vwap_pct":0.557121,"ema9":12.241464,"ema20":12.234949,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.896717,"dist_to_hod_atr":12.163905,"atr":0.019476,"spread_atr":0.513462,"own_change_pct":0.186416,"rel_strength_pct":{"SPY":0.178666,"IWM":0.245782}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.616842},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d002067bc96f","ts":"2026-09-21T19:12:15.083288+00:00","symbol":"SBET","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.6893,"target":10.02,"target_label":"premarket_high","reward_risk":1.0,"pos_in_5d_range_pct":131.5,"room_to_5d_high_atr":-0.74},"price":9.855,"vwap":9.8266,"ext_from_open_pct":-1.35,"max_ext_allowed_pct":3.0,"volume_pace":0.73,"trend":"flat","recent_slope_pct":-0.0757,"volatility":"high"},"price":9.855,"volume":{"bars":342,"last_bar_volume":16982.0,"baseline_avg":11170.15,"bar_rvol":1.520302,"raw_accel":5.081208,"smooth_accel":-0.031065,"accel_momentum":-0.165644,"rvol_3bar":[1.839936,0.171576,1.520302],"trend_3bar":"MIXED","projected_rvol":2.126748},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":3772.0,"sell_vol":3782.0,"unclassified_vol":0.0,"imbalance":-0.001324,"bid":9.85,"ask":9.86,"spread_pct":0.101471,"quote_size_imbalance":null,"quote_age_s":0.054833},"context":{"vwap":9.826605,"price_vs_vwap_pct":0.288965,"ema9":9.870014,"ema20":9.863037,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.618577,"dist_to_hod_atr":13.173698,"atr":0.020116,"spread_atr":0.497121,"own_change_pct":0.055784,"rel_strength_pct":{"SPY":0.048033,"IWM":0.11515}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.002013},"shadow":{"decision":"FAIL","failed":["vas","imbalance"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4b551af1703c","ts":"2026-09-21T19:12:15.083288+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.93,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7993,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":0.445,"trend":"flat","recent_slope_pct":-0.0113,"volatility":"unknown"},"price":8.835,"volume":{"bars":342,"last_bar_volume":71685.0,"baseline_avg":82156.0,"bar_rvol":0.872547,"raw_accel":0.091245,"smooth_accel":-0.053652,"accel_momentum":0.437455,"rvol_3bar":[0.338201,0.794318,0.872547],"trend_3bar":"ACCELERATING","projected_rvol":0.400667},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":16150.0,"sell_vol":16190.0,"unclassified_vol":0.0,"imbalance":-0.001237,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.19627},"context":{"vwap":8.799325,"price_vs_vwap_pct":0.405431,"ema9":8.843115,"ema20":8.849219,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":2.865077,"atr":0.036648,"spread_atr":0.272865,"own_change_pct":-0.338409,"rel_strength_pct":{"SPY":-0.34616,"IWM":-0.279044}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.001079},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2eec1bc14af0","ts":"2026-09-21T19:12:35.979212+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.93,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7993,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.445,"trend":"flat","recent_slope_pct":-0.0113,"volatility":"unknown"},"price":8.835,"volume":{"bars":342,"last_bar_volume":71685.0,"baseline_avg":82156.0,"bar_rvol":0.872547,"raw_accel":0.091245,"smooth_accel":-0.053652,"accel_momentum":0.437455,"rvol_3bar":[0.338201,0.794318,0.872547],"trend_3bar":"ACCELERATING","projected_rvol":0.281619},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":1585.0,"sell_vol":4347.0,"unclassified_vol":0.0,"imbalance":-0.46561,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.061999},"context":{"vwap":8.799325,"price_vs_vwap_pct":0.405431,"ema9":8.843115,"ema20":8.849219,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":2.865077,"atr":0.036648,"spread_atr":0.272865,"own_change_pct":-0.338409,"rel_strength_pct":{"SPY":-0.34616,"IWM":-0.279044}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.406267},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"008c6f9ca5cf","ts":"2026-09-21T19:13:12.469269+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 709.6s, plan says PASS; stop 8.60, target 8.76 (premarket_high), R:R 0.54; target 0.05 away > ~0.05 reachable in 42 min","plan":{"state":"PASS","setup":"","stop":8.6031,"target":8.76,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":127.7,"room_to_5d_high_atr":-0.87},"price":8.705,"vwap":8.6453,"ext_from_open_pct":0.99,"max_ext_allowed_pct":3.0,"volume_pace":0.648,"trend":"flat","recent_slope_pct":-0.0251,"volatility":"medium"},"price":8.705,"volume":{"bars":343,"last_bar_volume":1557.0,"baseline_avg":1852.95,"bar_rvol":0.840282,"raw_accel":-0.068223,"smooth_accel":0.479384,"accel_momentum":-0.705714,"rvol_3bar":[2.12587,0.930764,0.840282],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":397.0,"sell_vol":666.0,"unclassified_vol":0.0,"imbalance":-0.253057,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":1.146069},"context":{"vwap":8.645294,"price_vs_vwap_pct":0.690624,"ema9":8.702839,"ema20":8.692869,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.718952,"dist_to_hod_atr":14.722021,"atr":0.016526,"spread_atr":0.605097,"own_change_pct":0.060885,"rel_strength_pct":{"SPY":0.026003,"IWM":0.111529}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.212639},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"87576f8e7414","ts":"2026-09-21T19:13:17.669490+00:00","symbol":"FWDI","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.976,"target":8.45,"target_label":"premarket_high","reward_risk":2.08,"pos_in_5d_range_pct":121.9,"room_to_5d_high_atr":-0.69},"price":8.13,"vwap":8.0815,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":3.0,"volume_pace":0.407,"trend":"flat","recent_slope_pct":-0.073,"volatility":"high"},"price":8.13,"volume":{"bars":343,"last_bar_volume":1465.0,"baseline_avg":3446.55,"bar_rvol":0.425063,"raw_accel":-0.5309,"smooth_accel":0.190324,"accel_momentum":-1.331465,"rvol_3bar":[0.954987,0.914562,0.425063],"trend_3bar":"DECELERATING","projected_rvol":1.600032},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":815.0,"sell_vol":1920.0,"unclassified_vol":0.0,"imbalance":-0.404022,"bid":8.13,"ask":8.14,"spread_pct":0.122926,"quote_size_imbalance":null,"quote_age_s":2.615569},"context":{"vwap":8.081451,"price_vs_vwap_pct":0.600745,"ema9":8.134417,"ema20":8.122502,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.969399,"dist_to_hod_atr":10.19404,"atr":0.024406,"spread_atr":0.409728,"own_change_pct":-0.045462,"rel_strength_pct":{"SPY":-0.080343,"IWM":0.005183}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.171735},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"725b897530a1","ts":"2026-09-21T19:13:28.029356+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 725.2s, plan says WATCH; stop 8.61, target 8.76 (premarket_high), R:R 0.49; R:R 0.49 < 2.0 at 8.71; pullback: buy 8.66-8.69 holding + reclaim/fading selling/support; breakout: 1-min close > 8.75 ","plan":{"state":"WATCH","setup":"","stop":8.608,"target":8.76,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":128.0,"room_to_5d_high_atr":-0.88},"price":8.7099,"vwap":8.6454,"ext_from_open_pct":1.04,"max_ext_allowed_pct":3.0,"volume_pace":0.648,"trend":"flat","recent_slope_pct":-0.0139,"volatility":"medium"},"price":8.7099,"volume":{"bars":343,"last_bar_volume":1557.0,"baseline_avg":1852.95,"bar_rvol":0.840282,"raw_accel":-0.068223,"smooth_accel":0.479384,"accel_momentum":-0.705714,"rvol_3bar":[2.12587,0.930764,0.840282],"trend_3bar":"DECELERATING","projected_rvol":1.407089},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":410.0,"sell_vol":810.0,"unclassified_vol":0.0,"imbalance":-0.327869,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":1.626142},"context":{"vwap":8.645294,"price_vs_vwap_pct":0.747302,"ema9":8.702839,"ema20":8.692869,"ema_stack":true,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.664193,"dist_to_hod_atr":14.425523,"atr":0.016526,"spread_atr":0.605097,"own_change_pct":0.060885,"rel_strength_pct":{"SPY":0.026003,"IWM":0.111529}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.275502},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"f5028e252603","ts":"2026-09-21T19:13:33.213150+00:00","symbol":"USDE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.5482,"target":13.1897,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":150.9,"room_to_5d_high_atr":-1.52},"price":12.94,"vwap":12.9162,"ext_from_open_pct":-0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.459,"trend":"flat","recent_slope_pct":0.1315,"volatility":"high"},"price":12.94,"volume":{"bars":343,"last_bar_volume":8852.0,"baseline_avg":8843.9,"bar_rvol":1.000916,"raw_accel":1.891865,"smooth_accel":0.047259,"accel_momentum":-0.157176,"rvol_3bar":[1.492977,0.343815,1.000916],"trend_3bar":"MIXED","projected_rvol":0.118883},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":18.0,"sell_vol":564.0,"unclassified_vol":0.0,"imbalance":-0.938144,"bid":12.88,"ask":12.95,"spread_pct":0.542005,"quote_size_imbalance":null,"quote_age_s":8.986825},"context":{"vwap":12.916187,"price_vs_vwap_pct":0.184362,"ema9":12.871635,"ema20":12.85937,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.231884,"dist_to_hod_atr":9.813656,"atr":0.087633,"spread_atr":0.798786,"own_change_pct":1.567843,"rel_strength_pct":{"SPY":1.532962,"IWM":1.618488}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.939004},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a3735131c9f0","ts":"2026-09-21T19:13:33.213150+00:00","symbol":"ARHS","event":"WAIT","bot":{"state":"WAIT","reason":"held 730.4s, plan says PASS; stop 8.60, target 8.76 (premarket_high), R:R 0.59; target 0.06 away > ~0.05 reachable in 41 min","plan":{"state":"PASS","setup":"","stop":8.5981,"target":8.76,"target_label":"premarket_high","reward_risk":0.59,"pos_in_5d_range_pct":127.3,"room_to_5d_high_atr":-0.86},"price":8.7,"vwap":8.6454,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.648,"trend":"flat","recent_slope_pct":-0.0366,"volatility":"medium"},"price":8.7,"volume":{"bars":343,"last_bar_volume":1557.0,"baseline_avg":1852.95,"bar_rvol":0.840282,"raw_accel":-0.068223,"smooth_accel":0.479384,"accel_momentum":-0.705714,"rvol_3bar":[2.12587,0.930764,0.840282],"trend_3bar":"DECELERATING","projected_rvol":1.351266},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":410.0,"sell_vol":976.0,"unclassified_vol":0.0,"imbalance":-0.408369,"bid":8.7,"ask":8.71,"spread_pct":0.114877,"quote_size_imbalance":null,"quote_age_s":1.89594},"context":{"vwap":8.645294,"price_vs_vwap_pct":0.632789,"ema9":8.702839,"ema20":8.692869,"ema_stack":false,"ema_warm":true,"hod":8.9483,"dist_to_hod_pct":-2.774829,"dist_to_hod_atr":15.02457,"atr":0.016526,"spread_atr":0.605097,"own_change_pct":0.060885,"rel_strength_pct":{"SPY":0.026003,"IWM":0.111529}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.343145},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":false}}}
{"type":"snapshot","id":"b9d0e1133b5b","ts":"2026-09-21T19:13:33.213150+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7516,"target":8.93,"target_label":"ceiling","reward_risk":1.02,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.84,"vwap":8.7994,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.0169,"volatility":"unknown"},"price":8.84,"volume":{"bars":343,"last_bar_volume":17441.0,"baseline_avg":83001.25,"bar_rvol":0.210129,"raw_accel":-0.756699,"smooth_accel":0.483319,"accel_momentum":0.536971,"rvol_3bar":[0.794318,0.872547,0.210129],"trend_3bar":"MIXED","projected_rvol":0.096223},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1765.0,"sell_vol":2413.0,"unclassified_vol":0.0,"imbalance":-0.155098,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":0.503556},"context":{"vwap":8.799352,"price_vs_vwap_pct":0.461943,"ema9":8.842472,"ema20":8.848332,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.118568,"dist_to_hod_atr":2.845951,"atr":0.035138,"spread_atr":0.284595,"own_change_pct":-0.170525,"rel_strength_pct":{"SPY":-0.205406,"IWM":-0.119881}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.032591},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7719658fe4b5","ts":"2026-09-21T19:13:43.630351+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 475.5s, plan says WATCH; stop 12.08, target 12.29 (prev_day_high), R:R 0.17; R:R 0.17 < 2.0 at 12.26; breakout: 1-min close > 12.28 on >= 10809 sh","plan":{"state":"WATCH","setup":"","stop":12.0847,"target":12.29,"target_label":"prev_day_high","reward_risk":0.17,"pos_in_5d_range_pct":69.6,"room_to_5d_high_atr":0.48},"price":12.26,"vwap":12.1855,"ext_from_open_pct":-0.33,"max_ext_allowed_pct":4.0,"volume_pace":0.542,"trend":"flat","recent_slope_pct":0.0323,"volatility":"medium"},"price":12.26,"volume":{"bars":343,"last_bar_volume":7375.0,"baseline_avg":5303.8,"bar_rvol":1.390512,"raw_accel":0.409595,"smooth_accel":0.003714,"accel_momentum":0.195423,"rvol_3bar":[0.442775,0.931466,1.390512],"trend_3bar":"ACCELERATING","projected_rvol":3.465328},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":12714.0,"sell_vol":286.0,"unclassified_vol":0.0,"imbalance":0.956,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":4.616415},"context":{"vwap":12.185306,"price_vs_vwap_pct":0.612988,"ema9":12.243511,"ema20":12.236545,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.841473,"dist_to_hod_atr":11.847666,"atr":0.019413,"spread_atr":0.515116,"own_change_pct":0.173337,"rel_strength_pct":{"SPY":0.138456,"IWM":0.223982}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.32933},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"df3377887140","ts":"2026-09-21T19:13:43.630351+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7467,"target":8.93,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.835,"vwap":8.7994,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.0055,"volatility":"unknown"},"price":8.835,"volume":{"bars":343,"last_bar_volume":17441.0,"baseline_avg":83001.25,"bar_rvol":0.210129,"raw_accel":-0.756699,"smooth_accel":0.483319,"accel_momentum":0.536971,"rvol_3bar":[0.794318,0.872547,0.210129],"trend_3bar":"MIXED","projected_rvol":0.385544},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":16601.0,"sell_vol":4194.0,"unclassified_vol":0.0,"imbalance":0.596634,"bid":8.83,"ask":8.84,"spread_pct":0.113186,"quote_size_imbalance":null,"quote_age_s":1.475725},"context":{"vwap":8.799352,"price_vs_vwap_pct":0.405121,"ema9":8.842472,"ema20":8.848332,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.174497,"dist_to_hod_atr":2.988249,"atr":0.035138,"spread_atr":0.284595,"own_change_pct":-0.170525,"rel_strength_pct":{"SPY":-0.205406,"IWM":-0.119881}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.12537},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0f2928a01499","ts":"2026-09-21T19:13:48.746322+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.89 below VWAP $12.92","plan":{"state":"PASS","setup":"","stop":12.5032,"target":13.1897,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":149.9,"room_to_5d_high_atr":-1.49},"price":12.895,"vwap":12.9162,"ext_from_open_pct":-0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.458,"trend":"flat","recent_slope_pct":0.0619,"volatility":"high"},"price":12.895,"volume":{"bars":343,"last_bar_volume":8852.0,"baseline_avg":8843.9,"bar_rvol":1.000916,"raw_accel":1.891865,"smooth_accel":0.047259,"accel_momentum":-0.157176,"rvol_3bar":[1.492977,0.343815,1.000916],"trend_3bar":"MIXED","projected_rvol":0.269167},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":182.0,"sell_vol":1382.0,"unclassified_vol":0.0,"imbalance":-0.767263,"bid":12.86,"ask":12.93,"spread_pct":0.542846,"quote_size_imbalance":null,"quote_age_s":3.747201},"context":{"vwap":12.916187,"price_vs_vwap_pct":-0.164038,"ema9":12.871635,"ema20":12.85937,"ema_stack":true,"ema_warm":true,"hod":13.8,"dist_to_hod_pct":-6.557971,"dist_to_hod_atr":10.327162,"atr":0.087633,"spread_atr":0.798786,"own_change_pct":1.567843,"rel_strength_pct":{"SPY":1.532962,"IWM":1.618488}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.767966},"shadow":{"decision":"FAIL","failed":["vas","imbalance","spread"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":true,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"21a17ba1310a","ts":"2026-09-21T19:13:48.746322+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7615,"target":8.93,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.85,"vwap":8.7994,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.0395,"volatility":"unknown"},"price":8.85,"volume":{"bars":343,"last_bar_volume":17441.0,"baseline_avg":83001.25,"bar_rvol":0.210129,"raw_accel":-0.756699,"smooth_accel":0.483319,"accel_momentum":0.536971,"rvol_3bar":[0.794318,0.872547,0.210129],"trend_3bar":"MIXED","projected_rvol":0.547221},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":28974.0,"sell_vol":5339.0,"unclassified_vol":0.0,"imbalance":0.688806,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.202582},"context":{"vwap":8.799352,"price_vs_vwap_pct":0.575588,"ema9":8.842472,"ema20":8.848332,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.006711,"dist_to_hod_atr":2.561356,"atr":0.035138,"spread_atr":0.284595,"own_change_pct":-0.170525,"rel_strength_pct":{"SPY":-0.205406,"IWM":-0.119881}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.144738},"shadow":{"decision":"FAIL","failed":["bar_rvol","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b06ff5f4987b","ts":"2026-09-21T19:13:58.987869+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 490.8s, plan says PASS; stop 12.08, target 12.29 (prev_day_high), R:R 0.22; target 0.04 away > ~0.04 reachable in 41 min","plan":{"state":"PASS","setup":"","stop":12.0758,"target":12.29,"target_label":"prev_day_high","reward_risk":0.22,"pos_in_5d_range_pct":68.8,"room_to_5d_high_atr":0.5},"price":12.2511,"vwap":12.1855,"ext_from_open_pct":-0.4,"max_ext_allowed_pct":4.0,"volume_pace":0.541,"trend":"flat","recent_slope_pct":0.0178,"volatility":"medium"},"price":12.2511,"volume":{"bars":343,"last_bar_volume":7375.0,"baseline_avg":5303.8,"bar_rvol":1.390512,"raw_accel":0.409595,"smooth_accel":0.003714,"accel_momentum":0.195423,"rvol_3bar":[0.442775,0.931466,1.390512],"trend_3bar":"ACCELERATING","projected_rvol":2.78214},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":13736.0,"sell_vol":249.0,"unclassified_vol":0.0,"imbalance":0.96439,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":0.520842},"context":{"vwap":12.185306,"price_vs_vwap_pct":0.539949,"ema9":12.243511,"ema20":12.236545,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.91273,"dist_to_hod_atr":12.306119,"atr":0.019413,"spread_atr":0.515116,"own_change_pct":0.173337,"rel_strength_pct":{"SPY":0.138456,"IWM":0.223982}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.340997},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ba6405bae51e","ts":"2026-09-21T19:14:04.117593+00:00","symbol":"FWDI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.9792,"target":8.45,"target_label":"premarket_high","reward_risk":2.06,"pos_in_5d_range_pct":122.0,"room_to_5d_high_atr":-0.69},"price":8.1332,"vwap":8.0815,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.407,"trend":"flat","recent_slope_pct":-0.0101,"volatility":"high"},"price":8.1332,"volume":{"bars":344,"last_bar_volume":2971.0,"baseline_avg":3493.3,"bar_rvol":0.850485,"raw_accel":1.027986,"smooth_accel":-0.082423,"accel_momentum":-0.272746,"rvol_3bar":[0.914562,0.425063,0.850485],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":278.0,"sell_vol":865.0,"unclassified_vol":0.0,"imbalance":-0.513561,"bid":8.13,"ask":8.14,"spread_pct":0.122926,"quote_size_imbalance":null,"quote_age_s":4.089554},"context":{"vwap":8.081523,"price_vs_vwap_pct":0.639446,"ema9":8.136374,"ema20":8.124569,"ema_stack":false,"ema_warm":true,"hod":8.3788,"dist_to_hod_pct":-2.931207,"dist_to_hod_atr":10.131313,"atr":0.024242,"spread_atr":0.412513,"own_change_pct":-0.10426,"rel_strength_pct":{"SPY":-0.14883,"IWM":-0.090286}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.436776},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9dd524c45df8","ts":"2026-09-21T19:14:04.117593+00:00","symbol":"SBET","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.702,"target":10.02,"target_label":"premarket_high","reward_risk":0.92,"pos_in_5d_range_pct":132.3,"room_to_5d_high_atr":-0.76},"price":9.8677,"vwap":9.8267,"ext_from_open_pct":-1.22,"max_ext_allowed_pct":4.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":-0.0206,"volatility":"high"},"price":9.8677,"volume":{"bars":344,"last_bar_volume":6924.0,"baseline_avg":11126.1,"bar_rvol":0.62232,"raw_accel":-0.350225,"smooth_accel":-0.07333,"accel_momentum":0.402252,"rvol_3bar":[1.520302,0.981039,0.62232],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1553.0,"sell_vol":453.0,"unclassified_vol":0.0,"imbalance":0.548355,"bid":9.86,"ask":9.87,"spread_pct":0.101368,"quote_size_imbalance":null,"quote_age_s":1.56686},"context":{"vwap":9.826669,"price_vs_vwap_pct":0.417546,"ema9":9.868981,"ema20":9.863748,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-2.493083,"dist_to_hod_atr":12.290564,"atr":0.020528,"spread_atr":0.487141,"own_change_pct":-0.152757,"rel_strength_pct":{"SPY":-0.197326,"IWM":-0.138782}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.341253},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"a3445986fcaf","ts":"2026-09-21T19:14:04.117593+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 496.0s, plan says WATCH; stop 12.08, target 12.29 (prev_day_high), R:R 0.20; R:R 0.20 < 2.0 at 12.26; breakout: 1-min close > 12.28 on >= 11111 sh","plan":{"state":"WATCH","setup":"","stop":12.0797,"target":12.29,"target_label":"prev_day_high","reward_risk":0.2,"pos_in_5d_range_pct":69.2,"room_to_5d_high_atr":0.49},"price":12.255,"vwap":12.1855,"ext_from_open_pct":-0.37,"max_ext_allowed_pct":4.0,"volume_pace":0.541,"trend":"flat","recent_slope_pct":0.0031,"volatility":"medium"},"price":12.255,"volume":{"bars":344,"last_bar_volume":14507.0,"baseline_avg":5557.45,"bar_rvol":2.61037,"raw_accel":0.967051,"smooth_accel":1.206543,"accel_momentum":1.202829,"rvol_3bar":[0.931466,1.390512,2.61037],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1326.0,"sell_vol":54.0,"unclassified_vol":0.0,"imbalance":0.921739,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":4.107787},"context":{"vwap":12.185488,"price_vs_vwap_pct":0.570452,"ema9":12.245029,"ema20":12.237931,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.881505,"dist_to_hod_atr":12.272896,"atr":0.019148,"spread_atr":0.522251,"own_change_pct":-0.031824,"rel_strength_pct":{"SPY":-0.076393,"IWM":-0.017849}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.40608},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"179f7a0ddb2f","ts":"2026-09-21T19:14:04.117593+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $8.52 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.93,"target_label":"ceiling","reward_risk":0.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7994,"ext_from_open_pct":3.81,"max_ext_allowed_pct":3.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.0286,"volatility":"unknown"},"price":8.845,"volume":{"bars":344,"last_bar_volume":46001.0,"baseline_avg":76583.9,"bar_rvol":0.600661,"raw_accel":1.402646,"smooth_accel":0.297128,"accel_momentum":-0.186191,"rvol_3bar":[0.872547,0.210129,0.600661],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":143,"trade_rate":4.766667,"buy_vol":23375.0,"sell_vol":12020.0,"unclassified_vol":0.0,"imbalance":0.320808,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":2.31797},"context":{"vwap":8.799426,"price_vs_vwap_pct":0.517915,"ema9":8.842038,"ema20":8.847567,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":2.789492,"atr":0.034056,"spread_atr":0.293631,"own_change_pct":0.003394,"rel_strength_pct":{"SPY":-0.041176,"IWM":0.017368}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.192697},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7e891068f1f0","ts":"2026-09-21T19:14:09.318197+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 501.2s, plan says PASS; stop 12.07, target 12.29 (prev_day_high), R:R 0.23; target 0.04 away > ~0.04 reachable in 41 min","plan":{"state":"PASS","setup":"","stop":12.0747,"target":12.29,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":68.8,"room_to_5d_high_atr":0.5},"price":12.25,"vwap":12.1855,"ext_from_open_pct":-0.41,"max_ext_allowed_pct":4.0,"volume_pace":0.541,"trend":"flat","recent_slope_pct":-0.0051,"volatility":"medium"},"price":12.25,"volume":{"bars":344,"last_bar_volume":14507.0,"baseline_avg":5557.45,"bar_rvol":2.61037,"raw_accel":0.967051,"smooth_accel":1.206543,"accel_momentum":1.202829,"rvol_3bar":[0.931466,1.390512,2.61037],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1376.0,"sell_vol":704.0,"unclassified_vol":0.0,"imbalance":0.323077,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":9.308391},"context":{"vwap":12.185488,"price_vs_vwap_pct":0.529419,"ema9":12.245029,"ema20":12.237931,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.921537,"dist_to_hod_atr":12.534021,"atr":0.019148,"spread_atr":0.522251,"own_change_pct":-0.031824,"rel_strength_pct":{"SPY":-0.076393,"IWM":-0.017849}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.84335},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9e799aea28d0","ts":"2026-09-21T19:14:25.009138+00:00","symbol":"BNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.4797,"target":6.76,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":112.7,"room_to_5d_high_atr":-0.34},"price":6.643,"vwap":6.5926,"ext_from_open_pct":3.96,"max_ext_allowed_pct":4.0,"volume_pace":0.429,"trend":"flat","recent_slope_pct":-0.096,"volatility":"high"},"price":6.643,"volume":{"bars":340,"last_bar_volume":3593.0,"baseline_avg":1743.75,"bar_rvol":2.060502,"raw_accel":6.423554,"smooth_accel":0.391491,"accel_momentum":-0.540738,"rvol_3bar":[4.099409,0.281436,2.060502],"trend_3bar":"MIXED","projected_rvol":0.03302},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":24.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":70.182218},"context":{"vwap":6.592617,"price_vs_vwap_pct":0.764238,"ema9":6.654801,"ema20":6.661711,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.279539,"dist_to_hod_atr":16.252308,"atr":0.018274,"spread_atr":1.641647,"own_change_pct":-0.670659,"rel_strength_pct":{"SPY":-0.715228,"IWM":-0.656684}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.060502},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e690cac8da7d","ts":"2026-09-21T19:14:25.009138+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7566,"target":8.93,"target_label":"ceiling","reward_risk":0.96,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.845,"vwap":8.7994,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.0286,"volatility":"unknown"},"price":8.845,"volume":{"bars":344,"last_bar_volume":46001.0,"baseline_avg":76583.9,"bar_rvol":0.600661,"raw_accel":1.402646,"smooth_accel":0.297128,"accel_momentum":-0.186191,"rvol_3bar":[0.872547,0.210129,0.600661],"trend_3bar":"MIXED","projected_rvol":0.314301},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":9892.0,"sell_vol":7597.0,"unclassified_vol":0.0,"imbalance":0.131225,"bid":8.84,"ask":8.85,"spread_pct":0.113058,"quote_size_imbalance":null,"quote_age_s":0.389436},"context":{"vwap":8.799426,"price_vs_vwap_pct":0.517915,"ema9":8.842038,"ema20":8.847567,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.06264,"dist_to_hod_atr":2.789492,"atr":0.034056,"spread_atr":0.293631,"own_change_pct":0.003394,"rel_strength_pct":{"SPY":-0.041176,"IWM":0.017368}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.078822},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"391f9143d46b","ts":"2026-09-21T19:14:30.189299+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 522.0s, plan says WATCH; stop 12.08, target 12.29 (prev_day_high), R:R 0.20; R:R 0.20 < 2.0 at 12.26; breakout: 1-min close > 12.28 on >= 11111 sh","plan":{"state":"WATCH","setup":"","stop":12.0797,"target":12.29,"target_label":"prev_day_high","reward_risk":0.2,"pos_in_5d_range_pct":69.2,"room_to_5d_high_atr":0.49},"price":12.255,"vwap":12.1855,"ext_from_open_pct":-0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.541,"trend":"flat","recent_slope_pct":0.0031,"volatility":"medium"},"price":12.255,"volume":{"bars":344,"last_bar_volume":14507.0,"baseline_avg":5557.45,"bar_rvol":2.61037,"raw_accel":0.967051,"smooth_accel":1.206543,"accel_momentum":1.202829,"rvol_3bar":[0.931466,1.390512,2.61037],"trend_3bar":"ACCELERATING","projected_rvol":0.810369},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":808.0,"sell_vol":1458.0,"unclassified_vol":0.0,"imbalance":-0.286849,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":0.179467},"context":{"vwap":12.185488,"price_vs_vwap_pct":0.570452,"ema9":12.245029,"ema20":12.237931,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.881505,"dist_to_hod_atr":12.272896,"atr":0.019148,"spread_atr":0.522251,"own_change_pct":-0.031824,"rel_strength_pct":{"SPY":-0.076393,"IWM":-0.017849}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.748782},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c0818ac5db92","ts":"2026-09-21T19:14:40.642554+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 532.5s, plan says PASS; stop 12.07, target 12.29 (prev_day_high), R:R 0.24; target 0.04 away > ~0.04 reachable in 40 min","plan":{"state":"PASS","setup":"","stop":12.0718,"target":12.29,"target_label":"prev_day_high","reward_risk":0.24,"pos_in_5d_range_pct":68.5,"room_to_5d_high_atr":0.5},"price":12.2471,"vwap":12.1855,"ext_from_open_pct":-0.43,"max_ext_allowed_pct":3.0,"volume_pace":0.541,"trend":"flat","recent_slope_pct":-0.0098,"volatility":"medium"},"price":12.2471,"volume":{"bars":344,"last_bar_volume":14507.0,"baseline_avg":5557.45,"bar_rvol":2.61037,"raw_accel":0.967051,"smooth_accel":1.206543,"accel_momentum":1.202829,"rvol_3bar":[0.931466,1.390512,2.61037],"trend_3bar":"ACCELERATING","projected_rvol":1.232042},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1423.0,"sell_vol":2177.0,"unclassified_vol":0.0,"imbalance":-0.209444,"bid":12.25,"ask":12.26,"spread_pct":0.081599,"quote_size_imbalance":null,"quote_age_s":2.557699},"context":{"vwap":12.185488,"price_vs_vwap_pct":0.505621,"ema9":12.245029,"ema20":12.237931,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.944756,"dist_to_hod_atr":12.685474,"atr":0.019148,"spread_atr":0.522251,"own_change_pct":-0.031824,"rel_strength_pct":{"SPY":-0.076393,"IWM":-0.017849}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.546727},"shadow":{"decision":"FAIL","failed":["imbalance","rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"897ec130bfa2","ts":"2026-09-21T19:14:45.787927+00:00","symbol":"UUUU","event":"WAIT","bot":{"state":"WAIT","reason":"held 537.6s, plan says WATCH; stop 12.09, target 12.29 (prev_day_high), R:R 0.14; R:R 0.14 < 2.0 at 12.27; breakout: 1-min close > 12.28 on >= 11111 sh","plan":{"state":"WATCH","setup":"","stop":12.0897,"target":12.29,"target_label":"prev_day_high","reward_risk":0.14,"pos_in_5d_range_pct":70.1,"room_to_5d_high_atr":0.48},"price":12.265,"vwap":12.1856,"ext_from_open_pct":-0.28,"max_ext_allowed_pct":4.0,"volume_pace":0.541,"trend":"flat","recent_slope_pct":0.0194,"volatility":"medium"},"price":12.265,"volume":{"bars":344,"last_bar_volume":14507.0,"baseline_avg":5557.45,"bar_rvol":2.61037,"raw_accel":0.967051,"smooth_accel":1.206543,"accel_momentum":1.202829,"rvol_3bar":[0.931466,1.390512,2.61037],"trend_3bar":"ACCELERATING","projected_rvol":2.23057},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":6073.0,"sell_vol":2348.0,"unclassified_vol":0.0,"imbalance":0.442347,"bid":12.26,"ask":12.27,"spread_pct":0.081533,"quote_size_imbalance":null,"quote_age_s":0.054865},"context":{"vwap":12.185488,"price_vs_vwap_pct":0.652517,"ema9":12.245029,"ema20":12.237931,"ema_stack":true,"ema_warm":true,"hod":12.49,"dist_to_hod_pct":-1.801441,"dist_to_hod_atr":11.750645,"atr":0.019148,"spread_atr":0.522251,"own_change_pct":-0.031824,"rel_strength_pct":{"SPY":-0.076393,"IWM":-0.017849}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.154688},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"55cd44b703b5","ts":"2026-09-21T19:14:51.008108+00:00","symbol":"BNC","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $6.39 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":6.4717,"target":6.76,"target_label":"ceiling","reward_risk":0.77,"pos_in_5d_range_pct":112.2,"room_to_5d_high_atr":-0.33},"price":6.635,"vwap":6.5926,"ext_from_open_pct":3.83,"max_ext_allowed_pct":3.0,"volume_pace":0.429,"trend":"flat","recent_slope_pct":-0.1201,"volatility":"high"},"price":6.635,"volume":{"bars":340,"last_bar_volume":3593.0,"baseline_avg":1743.75,"bar_rvol":2.060502,"raw_accel":6.423554,"smooth_accel":0.391491,"accel_momentum":-0.540738,"rvol_3bar":[4.099409,0.281436,2.060502],"trend_3bar":"MIXED","projected_rvol":0.016864},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":24.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.92,"bid":6.62,"ask":6.65,"spread_pct":0.452148,"quote_size_imbalance":null,"quote_age_s":1.376114},"context":{"vwap":6.592617,"price_vs_vwap_pct":0.64289,"ema9":6.654801,"ema20":6.661711,"ema_stack":false,"ema_warm":true,"hod":6.94,"dist_to_hod_pct":-4.394813,"dist_to_hod_atr":16.69008,"atr":0.018274,"spread_atr":1.641647,"own_change_pct":-0.670659,"rel_strength_pct":{"SPY":-0.715228,"IWM":-0.656684}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.895662},"shadow":{"decision":"FAIL","failed":["rel_strength"],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"209626ab9d1e","ts":"2026-09-21T19:14:51.008108+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $8.52 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.7764,"target":8.93,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.865,"vwap":8.7995,"ext_from_open_pct":4.05,"max_ext_allowed_pct":4.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.0738,"volatility":"unknown"},"price":8.865,"volume":{"bars":344,"last_bar_volume":46001.0,"baseline_avg":76583.9,"bar_rvol":0.600661,"raw_accel":1.402646,"smooth_accel":0.297128,"accel_momentum":-0.186191,"rvol_3bar":[0.872547,0.210129,0.600661],"trend_3bar":"MIXED","projected_rvol":0.634513},"flow":{"window_s":30,"trades":129,"trade_rate":4.3,"buy_vol":20730.0,"sell_vol":11075.0,"unclassified_vol":0.0,"imbalance":0.303569,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.244709},"context":{"vwap":8.799426,"price_vs_vwap_pct":0.745203,"ema9":8.842038,"ema20":8.847567,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-0.838926,"dist_to_hod_atr":2.202231,"atr":0.034056,"spread_atr":0.293631,"own_change_pct":0.003394,"rel_strength_pct":{"SPY":-0.041176,"IWM":0.017368}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.182342},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f4c4cca09ed6","ts":"2026-09-21T19:14:56.257655+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.7492,"target":8.93,"target_label":"ceiling","reward_risk":1.05,"pos_in_5d_range_pct":null,"room_to_5d_high_atr":null},"price":8.8376,"vwap":8.7995,"ext_from_open_pct":3.73,"max_ext_allowed_pct":4.0,"volume_pace":0.444,"trend":"flat","recent_slope_pct":0.0119,"volatility":"unknown"},"price":8.8376,"volume":{"bars":344,"last_bar_volume":46001.0,"baseline_avg":76583.9,"bar_rvol":0.600661,"raw_accel":1.402646,"smooth_accel":0.297128,"accel_momentum":-0.186191,"rvol_3bar":[0.872547,0.210129,0.600661],"trend_3bar":"MIXED","projected_rvol":0.683678},"flow":{"window_s":30,"trades":135,"trade_rate":4.5,"buy_vol":28195.0,"sell_vol":10765.0,"unclassified_vol":0.0,"imbalance":0.447382,"bid":8.86,"ask":8.87,"spread_pct":0.112803,"quote_size_imbalance":null,"quote_age_s":0.24671},"context":{"vwap":8.799426,"price_vs_vwap_pct":0.433819,"ema9":8.842038,"ema20":8.847567,"ema_stack":false,"ema_warm":true,"hod":8.94,"dist_to_hod_pct":-1.145414,"dist_to_hod_atr":3.006779,"atr":0.034056,"spread_atr":0.293631,"own_change_pct":0.003394,"rel_strength_pct":{"SPY":-0.041176,"IWM":0.017368}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.268725},"shadow":{"decision":"FAIL","failed":["vas","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":true,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
